aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/typings/models/video/video-playlist-element.ts
blob: d1b8a18a05f8861c4efb2e02d11c7a34dc7dc1dc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { VideoPlaylistElementModel } from '@server/models/video/video-playlist-element'
import { PickWith } from '@server/typings/utils'
import { MVideoPlaylistPrivacy, MVideoThumbnail, MVideoUrl } from '@server/typings/models'

export type MVideoPlaylistElement = Omit<VideoPlaylistElementModel, 'VideoPlaylist' | 'Video'>
export type MVideoPlaylistElementId = Pick<MVideoPlaylistElement, 'id'>

export type MVideoPlaylistElementLight = Pick<MVideoPlaylistElement, 'id' | 'videoId' | 'startTimestamp' | 'stopTimestamp'>

export type MVideoPlaylistVideoThumbnail = MVideoPlaylistElement &
  PickWith<VideoPlaylistElementModel, 'Video', MVideoThumbnail>

export type MVideoPlaylistAP = MVideoPlaylistElement &
  PickWith<VideoPlaylistElementModel, 'Video', MVideoUrl> &
  PickWith<VideoPlaylistElementModel, 'VideoPlaylist', MVideoPlaylistPrivacy>