]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame_incremental - server/typings/models/video/video-caption.ts
Upgrade server dep
[github/Chocobozzz/PeerTube.git] / server / typings / models / video / video-caption.ts
... / ...
CommitLineData
1import { VideoCaptionModel } from '../../../models/video/video-caption'
2import { FunctionProperties, PickWith } from '@server/typings/utils'
3import { MVideo, MVideoUUID } from './video'
4
5type Use<K extends keyof VideoCaptionModel, M> = PickWith<VideoCaptionModel, K, M>
6
7// ############################################################################
8
9export type MVideoCaption = Omit<VideoCaptionModel, 'Video'>
10
11// ############################################################################
12
13export type MVideoCaptionLanguage = Pick<MVideoCaption, 'language'>
14export type MVideoCaptionLanguageUrl = Pick<MVideoCaption, 'language' | 'fileUrl' | 'getFileUrl'>
15
16export type MVideoCaptionVideo = MVideoCaption &
17 Use<'Video', Pick<MVideo, 'id' | 'remote' | 'uuid'>>
18
19// ############################################################################
20
21// Format for API or AP object
22
23export type MVideoCaptionFormattable = FunctionProperties<MVideoCaption> &
24 Pick<MVideoCaption, 'language'> &
25 Use<'Video', MVideoUUID>