import { JobQueue } from '@server/lib/job-queue'
import { loadVideoByUrl, VideoLoadByUrlType } from '@server/lib/model-loaders'
import { MVideoAccountLightBlacklistAllFiles, MVideoImmutable, MVideoThumbnail } from '@server/types/models'
+import { APObject } from '@shared/models'
import { refreshVideoIfNeeded } from './refresh'
import { APVideoCreator, fetchRemoteVideo, SyncParam, syncVideoExternalAttributes } from './shared'
}>
type GetVideoParamAll = {
- videoObject: { id: string } | string
+ videoObject: APObject
syncParam?: SyncParam
fetchType?: 'all'
allowRefresh?: boolean
}
type GetVideoParamImmutable = {
- videoObject: { id: string } | string
+ videoObject: APObject
syncParam?: SyncParam
fetchType: 'only-immutable-attributes'
allowRefresh: false
}
type GetVideoParamOther = {
- videoObject: { id: string } | string
+ videoObject: APObject
syncParam?: SyncParam
fetchType?: 'all' | 'only-video'
allowRefresh?: boolean