+import { AbusePredefinedReasonsString } from '../../moderation/abuse/abuse-reason.model'
+
export interface ActivityIdentifierObject {
identifier: string
name: string
export interface ActivityIconObject {
type: 'Image'
url: string
- mediaType: 'image/jpeg' | 'image/png'
+ mediaType: string
width?: number
height?: number
}
href: string
}
-export type ActivityVideoFileMetadataObject = {
+export type ActivityVideoFileMetadataUrlObject = {
type: 'Link'
rel: [ 'metadata', any ]
mediaType: 'application/json'
fps: number
}
+export type ActivityTrackerUrlObject = {
+ type: 'Link'
+ rel: [ 'tracker', 'websocket' | 'http' ]
+ name: string
+ href: string
+}
+
export type ActivityPlaylistInfohashesObject = {
type: 'Infohash'
name: string
}
export interface ActivityHashTagObject {
- type: 'Hashtag' | 'Mention'
+ type: 'Hashtag'
href?: string
name: string
}
export interface ActivityMentionObject {
- type: 'Hashtag' | 'Mention'
+ type: 'Mention'
href?: string
name: string
}
+export interface ActivityFlagReasonObject {
+ type: 'Hashtag'
+ name: AbusePredefinedReasonsString
+}
+
export type ActivityTagObject =
ActivityPlaylistSegmentHashesObject
| ActivityPlaylistInfohashesObject
| ActivityMentionObject
| ActivityBitTorrentUrlObject
| ActivityMagnetUrlObject
- | ActivityVideoFileMetadataObject
+ | ActivityVideoFileMetadataUrlObject
export type ActivityUrlObject =
ActivityVideoUrlObject
| ActivityBitTorrentUrlObject
| ActivityMagnetUrlObject
| ActivityHtmlUrlObject
- | ActivityVideoFileMetadataObject
+ | ActivityVideoFileMetadataUrlObject
+ | ActivityTrackerUrlObject
export interface ActivityPubAttributedTo {
type: 'Group' | 'Person'