]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - shared/models/activitypub/objects/common-objects.ts
Merge branch 'release/2.1.0' 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
31export type ActivityPlaylistInfohashesObject = {
32 type: 'Infohash'
33 name: string
34}
35
36export type ActivityPlaylistUrlObject = {
37 type: 'Link'
09209296
C
38 mediaType: 'application/x-mpegURL'
39 href: string
d7a25329 40 tag?: ActivityTagObject[]
09209296
C
41}
42
43export type ActivityBitTorrentUrlObject = {
44 type: 'Link'
09209296
C
45 mediaType: 'application/x-bittorrent' | 'application/x-bittorrent;x-scheme-handler/magnet'
46 href: string
47 height: number
48}
49
d7a25329
C
50export type ActivityMagnetUrlObject = {
51 type: 'Link'
52 mediaType: 'application/x-bittorrent;x-scheme-handler/magnet'
53 href: string
54 height: number
55}
56
09209296
C
57export type ActivityHtmlUrlObject = {
58 type: 'Link'
09209296
C
59 mediaType: 'text/html'
60 href: string
61}
62
d7a25329
C
63export interface ActivityHashTagObject {
64 type: 'Hashtag' | 'Mention'
65 href?: string
66 name: string
67}
68
69export interface ActivityMentionObject {
70 type: 'Hashtag' | 'Mention'
71 href?: string
72 name: string
73}
74
a1587156
C
75export type ActivityTagObject =
76 ActivityPlaylistSegmentHashesObject
77 | ActivityPlaylistInfohashesObject
78 | ActivityVideoUrlObject
79 | ActivityHashTagObject
80 | ActivityMentionObject
81 | ActivityBitTorrentUrlObject
82 | ActivityMagnetUrlObject
d7a25329 83
a1587156
C
84export type ActivityUrlObject =
85 ActivityVideoUrlObject
86 | ActivityPlaylistUrlObject
87 | ActivityBitTorrentUrlObject
88 | ActivityMagnetUrlObject
89 | ActivityHtmlUrlObject
c48e82b5 90
50d6de9c
C
91export interface ActivityPubAttributedTo {
92 type: 'Group' | 'Person'
93 id: string
94}
69222afa
JM
95
96export interface ActivityTombstoneObject {
97 '@context'?: any
98 id: string
b5206dfc 99 url?: string
69222afa
JM
100 type: 'Tombstone'
101 name?: string
102 formerType?: string
b5206dfc 103 inReplyTo?: string
69222afa
JM
104 published: string
105 updated: string
106 deleted: string
107}