]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - shared/models/activitypub/objects/common-objects.ts
Merge branch 'master' into develop
[github/Chocobozzz/PeerTube.git] / shared / models / activitypub / objects / common-objects.ts
CommitLineData
e4f97bab
C
1export interface ActivityIdentifierObject {
2 identifier: string
3 name: string
ca6d3622 4 url?: string
e4f97bab
C
5}
6
e4f97bab
C
7export interface ActivityIconObject {
8 type: 'Image'
9 url: string
a1587156
C
10 mediaType: 'image/jpeg' | 'image/png'
11 width?: number
12 height?: number
e4f97bab
C
13}
14
c48e82b5 15export type ActivityVideoUrlObject = {
e4f97bab 16 type: 'Link'
e27ff5da 17 mediaType: 'video/mp4' | 'video/webm' | 'video/ogg'
9fb3abfd 18 href: string
965c4b22 19 height: number
c48e82b5
C
20 size: number
21 fps: number
e4f97bab 22}
50d6de9c 23
09209296
C
24export type ActivityPlaylistSegmentHashesObject = {
25 type: 'Link'
26 name: 'sha256'
09209296
C
27 mediaType: 'application/json'
28 href: string
29}
30
8319d6ae
RK
31export type ActivityVideoFileMetadataObject = {
32 type: 'Link'
33 rel: [ 'metadata', any ]
34 mediaType: 'application/json'
35 height: number
36 href: string
37 fps: number
38}
39
09209296
C
40export type ActivityPlaylistInfohashesObject = {
41 type: 'Infohash'
42 name: string
43}
44
45export type ActivityPlaylistUrlObject = {
46 type: 'Link'
09209296
C
47 mediaType: 'application/x-mpegURL'
48 href: string
d7a25329 49 tag?: ActivityTagObject[]
09209296
C
50}
51
52export type ActivityBitTorrentUrlObject = {
53 type: 'Link'
09209296
C
54 mediaType: 'application/x-bittorrent' | 'application/x-bittorrent;x-scheme-handler/magnet'
55 href: string
56 height: number
57}
58
d7a25329
C
59export type ActivityMagnetUrlObject = {
60 type: 'Link'
61 mediaType: 'application/x-bittorrent;x-scheme-handler/magnet'
62 href: string
63 height: number
64}
65
09209296
C
66export type ActivityHtmlUrlObject = {
67 type: 'Link'
09209296
C
68 mediaType: 'text/html'
69 href: string
70}
71
d7a25329
C
72export interface ActivityHashTagObject {
73 type: 'Hashtag' | 'Mention'
74 href?: string
75 name: string
76}
77
78export interface ActivityMentionObject {
79 type: 'Hashtag' | 'Mention'
80 href?: string
81 name: string
82}
83
a1587156
C
84export type ActivityTagObject =
85 ActivityPlaylistSegmentHashesObject
86 | ActivityPlaylistInfohashesObject
87 | ActivityVideoUrlObject
88 | ActivityHashTagObject
89 | ActivityMentionObject
90 | ActivityBitTorrentUrlObject
91 | ActivityMagnetUrlObject
8319d6ae 92 | ActivityVideoFileMetadataObject
d7a25329 93
a1587156
C
94export type ActivityUrlObject =
95 ActivityVideoUrlObject
96 | ActivityPlaylistUrlObject
97 | ActivityBitTorrentUrlObject
98 | ActivityMagnetUrlObject
99 | ActivityHtmlUrlObject
8319d6ae 100 | ActivityVideoFileMetadataObject
c48e82b5 101
50d6de9c
C
102export interface ActivityPubAttributedTo {
103 type: 'Group' | 'Person'
104 id: string
105}
69222afa
JM
106
107export interface ActivityTombstoneObject {
108 '@context'?: any
109 id: string
b5206dfc 110 url?: string
69222afa
JM
111 type: 'Tombstone'
112 name?: string
113 formerType?: string
b5206dfc 114 inReplyTo?: string
69222afa
JM
115 published: string
116 updated: string
117 deleted: string
118}