aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/typings/models/video/video-share.ts
blob: a7a90beeb7e0266eea368e001c3b593632a0091c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import { VideoShareModel } from '../../../models/video/video-share'
import { PickWith } from '../../utils'
import { MActorDefault } from '../account'
import { MVideo } from './video'

type Use<K extends keyof VideoShareModel, M> = PickWith<VideoShareModel, K, M>

// ############################################################################

export type MVideoShare = Omit<VideoShareModel, 'Actor' | 'Video'>

export type MVideoShareActor = MVideoShare &
  Use<'Actor', MActorDefault>

export type MVideoShareFull = MVideoShare &
  Use<'Actor', MActorDefault> &
  Use<'Video', MVideo>