1 import { VideoBlacklistModel } from '../../../models/video/video-blacklist'
2 import { PickWith } from '@server/typings/utils'
3 import { MVideo, MVideoFormattable } from './video'
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 MVideoBlacklistLightVideo =
17 MVideoBlacklistLight &
20 export type MVideoBlacklistVideo =
24 // ############################################################################
26 // Format for API or AP object
28 export type MVideoBlacklistFormattable =
30 Use<'Video', MVideoFormattable>