]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/typings/models/actor.ts
Bumped to version v1.4.0
[github/Chocobozzz/PeerTube.git] / server / typings / models / actor.ts
1 import { ActorModel } from '../../models/activitypub/actor'
2 import { VideoChannelModel } from '../../models/video/video-channel'
3 import { AccountModel } from '../../models/account/account'
4 import { FunctionProperties } from '../utils'
5
6 export type VideoChannelModelId = FunctionProperties<VideoChannelModel>
7 export type AccountModelId = FunctionProperties<AccountModel> | Pick<AccountModel, 'id'>
8
9 export type VideoChannelModelIdActor = VideoChannelModelId & Pick<VideoChannelModel, 'Actor'>
10 export type AccountModelIdActor = AccountModelId & Pick<AccountModel, 'Actor'>
11
12 export type ActorModelUrl = Pick<ActorModel, 'url'>
13 export type ActorModelOnly = Omit<ActorModel, 'Account' | 'VideoChannel' | 'ActorFollowing' | 'Avatar' | 'ActorFollowers' | 'Server'>
14 export type ActorModelId = Pick<ActorModelOnly, 'id'>
15
16 export type SignatureActorModel = ActorModelOnly & {
17 VideoChannel: VideoChannelModelIdActor
18
19 Account: AccountModelIdActor
20 }
21
22 export type ActorFollowerException = Pick<ActorModel, 'sharedInboxUrl' | 'inboxUrl'>