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'
6 export type VideoChannelModelId = FunctionProperties<VideoChannelModel>
7 export type AccountModelId = FunctionProperties<AccountModel> | Pick<AccountModel, 'id'>
9 export type VideoChannelModelIdActor = VideoChannelModelId & Pick<VideoChannelModel, 'Actor'>
10 export type AccountModelIdActor = AccountModelId & Pick<AccountModel, 'Actor'>
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'>
16 export type SignatureActorModel = ActorModelOnly & {
17 VideoChannel: VideoChannelModelIdActor
19 Account: AccountModelIdActor
22 export type ActorFollowerException = Pick<ActorModel, 'sharedInboxUrl' | 'inboxUrl'>