1 import { VideoBlacklistModel } from '../../../models/video/video-blacklist'
2 import { PickWith } from '@server/typings/utils'
3 import { MVideo, MVideoFormattable } from '@server/typings/models'
5 type Use<K extends keyof VideoBlacklistModel, M> = PickWith<VideoBlacklistModel, K, M>
7 // ############################################################################
9 export type MVideoBlacklist = Omit<VideoBlacklistModel, 'Video'>
11 export type MVideoBlacklistLight = Pick<MVideoBlacklist, 'id' | 'reason' | 'unfederated'>
12 export type MVideoBlacklistUnfederated = Pick<MVideoBlacklist, 'unfederated'>
14 // ############################################################################
16 export type MVideoBlacklistVideo = MVideoBlacklist &
19 // ############################################################################
21 // Format for API or AP object
23 export type MVideoBlacklistFormattable = MVideoBlacklist &
24 Use<'Video', MVideoFormattable>