]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - shared/models/activitypub/objects/common-objects.ts
Add url field in caption and use it for thumbnails
[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
10 mediaType: 'image/jpeg'
11 width: number
12 height: number
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
75export type ActivityTagObject = ActivityPlaylistSegmentHashesObject |
76 ActivityPlaylistInfohashesObject |
77 ActivityVideoUrlObject |
78 ActivityHashTagObject |
79 ActivityMentionObject |
80 ActivityBitTorrentUrlObject |
81 ActivityMagnetUrlObject
82
83export type ActivityUrlObject = ActivityVideoUrlObject |
84 ActivityPlaylistUrlObject |
85 ActivityBitTorrentUrlObject |
86 ActivityMagnetUrlObject |
87 ActivityHtmlUrlObject
c48e82b5 88
50d6de9c
C
89export interface ActivityPubAttributedTo {
90 type: 'Group' | 'Person'
91 id: string
92}
69222afa
JM
93
94export interface ActivityTombstoneObject {
95 '@context'?: any
96 id: string
b5206dfc 97 url?: string
69222afa
JM
98 type: 'Tombstone'
99 name?: string
100 formerType?: string
b5206dfc 101 inReplyTo?: string
69222afa
JM
102 published: string
103 updated: string
104 deleted: string
105}