1 import { VideoChannelObject, VideoTorrentObject } from './objects'
2 import { ActivityPubSignature } from './activitypub-signature'
3 import { VideoAbuseObject } from './objects/video-abuse-object'
5 export type Activity = ActivityCreate | ActivityAdd | ActivityUpdate | ActivityFlag |
6 ActivityDelete | ActivityFollow | ActivityAccept
8 // Flag -> report abuse
9 export type ActivityType = 'Create' | 'Add' | 'Update' | 'Flag' | 'Delete' | 'Follow' | 'Accept'
11 export interface BaseActivity {
17 signature: ActivityPubSignature
20 export interface ActivityCreate extends BaseActivity {
22 object: VideoChannelObject | VideoAbuseObject
25 export interface ActivityAdd extends BaseActivity {
27 object: VideoTorrentObject
30 export interface ActivityUpdate extends BaseActivity {
32 object: VideoTorrentObject | VideoChannelObject
35 export interface ActivityFlag extends BaseActivity {
40 export interface ActivityDelete extends BaseActivity {
44 export interface ActivityFollow extends BaseActivity {
49 export interface ActivityAccept extends BaseActivity {