import { VideoAbuseModel } from '../../../models/video/video-abuse' import { PickWith } from '@shared/core-utils' import { MVideoAccountLightBlacklistAllFiles, MVideo } from './video' import { MAccountDefault, MAccountFormattable } from '../account' type Use = PickWith // ############################################################################ export type MVideoAbuse = Omit // ############################################################################ export type MVideoAbuseId = Pick export type MVideoAbuseVideo = MVideoAbuse & Pick & Use<'Video', MVideo> export type MVideoAbuseAccountVideo = MVideoAbuse & Pick & Use<'Video', MVideoAccountLightBlacklistAllFiles> & Use<'Account', MAccountDefault> // ############################################################################ // Format for API or AP object export type MVideoAbuseFormattable = MVideoAbuse & Use<'Account', MAccountFormattable> & Use<'Video', Pick>