]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - server/typings/models/video/video-caption.ts
Upgrade server dep
[github/Chocobozzz/PeerTube.git] / server / typings / models / video / video-caption.ts
CommitLineData
453e83ea 1import { VideoCaptionModel } from '../../../models/video/video-caption'
1ca9f7c3 2import { FunctionProperties, PickWith } from '@server/typings/utils'
d7a25329 3import { MVideo, MVideoUUID } from './video'
453e83ea 4
0283eaac
C
5type Use<K extends keyof VideoCaptionModel, M> = PickWith<VideoCaptionModel, K, M>
6
7// ############################################################################
8
453e83ea
C
9export type MVideoCaption = Omit<VideoCaptionModel, 'Video'>
10
0283eaac
C
11// ############################################################################
12
453e83ea 13export type MVideoCaptionLanguage = Pick<MVideoCaption, 'language'>
ca6d3622 14export type MVideoCaptionLanguageUrl = Pick<MVideoCaption, 'language' | 'fileUrl' | 'getFileUrl'>
453e83ea
C
15
16export type MVideoCaptionVideo = MVideoCaption &
1ca9f7c3
C
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>