mirror of
https://github.com/Chocobozzz/PeerTube.git
synced 2025-10-03 09:49:20 +02:00
158 lines
3.4 KiB
TypeScript
158 lines
3.4 KiB
TypeScript
import { AbusePredefinedReasonsString } from '../../moderation/abuse/abuse-reason.model.js'
|
|
|
|
export interface ActivityIdentifierObject {
|
|
identifier: string
|
|
name: string
|
|
}
|
|
|
|
export interface ActivityIconObject {
|
|
type: 'Image'
|
|
url: string
|
|
mediaType: string
|
|
width: number
|
|
height: number | null
|
|
}
|
|
|
|
// ---------------------------------------------------------------------------
|
|
|
|
export type ActivityVideoUrlObjectAttachment = {
|
|
type: 'PropertyValue'
|
|
name: 'ffprobe_codec_type'
|
|
value: 'video' | 'audio'
|
|
} | {
|
|
type: 'PropertyValue'
|
|
name: 'peertube_format_flag'
|
|
value: 'web-video' | 'fragmented'
|
|
}
|
|
|
|
export type ActivityVideoUrlObject = {
|
|
type: 'Link'
|
|
mediaType: 'video/mp4' | 'video/webm' | 'video/ogg' | 'audio/mp4'
|
|
href: string
|
|
height: number
|
|
width: number | null
|
|
size: number
|
|
fps: number
|
|
|
|
attachment: ActivityVideoUrlObjectAttachment[]
|
|
}
|
|
|
|
// ---------------------------------------------------------------------------
|
|
|
|
export type ActivityPlaylistSegmentHashesObject = {
|
|
type: 'Link'
|
|
name: 'sha256'
|
|
mediaType: 'application/json'
|
|
href: string
|
|
}
|
|
|
|
export type ActivityVideoFileMetadataUrlObject = {
|
|
type: 'Link'
|
|
rel: ['metadata', any]
|
|
mediaType: 'application/json'
|
|
height: number
|
|
width: number | null
|
|
href: string
|
|
fps: number
|
|
}
|
|
|
|
export type ActivityCaptionUrlObject = {
|
|
type: 'Link'
|
|
mediaType: 'text/vtt'
|
|
href: string
|
|
}
|
|
|
|
export type ActivityTrackerUrlObject = {
|
|
type: 'Link'
|
|
rel: ['tracker', 'websocket' | 'http']
|
|
name: string
|
|
href: string
|
|
}
|
|
|
|
export type ActivityStreamingPlaylistInfohashesObject = {
|
|
type: 'Infohash'
|
|
name: string
|
|
}
|
|
|
|
export type ActivityPlaylistUrlObject = {
|
|
type: 'Link'
|
|
mediaType: 'application/x-mpegURL'
|
|
href: string
|
|
tag?: ActivityTagObject[]
|
|
}
|
|
|
|
export type ActivityBitTorrentUrlObject = {
|
|
type: 'Link'
|
|
mediaType: 'application/x-bittorrent' | 'application/x-bittorrent;x-scheme-handler/magnet'
|
|
href: string
|
|
height: number
|
|
width: number | null
|
|
fps: number | null
|
|
}
|
|
|
|
export type ActivityMagnetUrlObject = {
|
|
type: 'Link'
|
|
mediaType: 'application/x-bittorrent;x-scheme-handler/magnet'
|
|
href: string
|
|
height: number
|
|
width: number | null
|
|
fps: number | null
|
|
}
|
|
|
|
export type ActivityHtmlUrlObject = {
|
|
type: 'Link'
|
|
mediaType: 'text/html'
|
|
href: string
|
|
}
|
|
|
|
export interface ActivityHashTagObject {
|
|
type: 'Hashtag'
|
|
href?: string
|
|
name: string
|
|
}
|
|
|
|
export interface ActivityMentionObject {
|
|
type: 'Mention'
|
|
href?: string
|
|
name: string
|
|
}
|
|
|
|
export interface ActivityFlagReasonObject {
|
|
type: 'Hashtag'
|
|
name: AbusePredefinedReasonsString
|
|
}
|
|
|
|
export type ActivityTagObject =
|
|
| ActivityPlaylistSegmentHashesObject
|
|
| ActivityStreamingPlaylistInfohashesObject
|
|
| ActivityVideoUrlObject
|
|
| ActivityHashTagObject
|
|
| ActivityMentionObject
|
|
| ActivityBitTorrentUrlObject
|
|
| ActivityMagnetUrlObject
|
|
| ActivityVideoFileMetadataUrlObject
|
|
|
|
export type ActivityUrlObject =
|
|
| ActivityVideoUrlObject
|
|
| ActivityPlaylistUrlObject
|
|
| ActivityBitTorrentUrlObject
|
|
| ActivityMagnetUrlObject
|
|
| ActivityHtmlUrlObject
|
|
| ActivityVideoFileMetadataUrlObject
|
|
| ActivityTrackerUrlObject
|
|
| ActivityCaptionUrlObject
|
|
|
|
export type ActivityPubAttributedTo = { type: 'Group' | 'Person', id: string } | string
|
|
|
|
export interface ActivityTombstoneObject {
|
|
'@context'?: any
|
|
id: string
|
|
url?: string
|
|
type: 'Tombstone'
|
|
name?: string
|
|
formerType?: string
|
|
inReplyTo?: string
|
|
published: string
|
|
updated: string
|
|
deleted: string
|
|
}
|