import { CefrLevel } from './CefrLevel'; import { Price } from './Price'; import { Subject } from '../../subjects/model/Subject'; import { Playback } from '../../common/model/Playback'; import { AgeRange } from '../../common/model/AgeRange'; import { BestForTag } from '../../bestForTags/model/BestForTag'; import { Language } from './Language'; import { Link } from '../../common/model/LinkEntity'; import { ModelWithLinks } from '../../common/model/common'; import { Attachment } from '../../common/model/Attachment'; import { CaptionStatus } from './CaptionStatus'; import { ContentWarning } from '../../contentWarnings/model/ContentWarning'; import { Taxonomies } from './Taxonomies'; import { EducationLevel } from './EducationLevel'; import { ContentCategory } from '../../channels/model/ContentCategories'; import { ContentType } from './ContentType'; import { ContractRestrictions } from './ContractRestrictions'; export interface Video extends ModelWithLinks { id: string; title: string; description: string; additionalDescription?: string; releasedOn: Date; playback: Playback; subjects: Subject[]; badges: string[]; legalRestrictions: string; ageRange?: AgeRange; rating?: number; yourRating?: number; bestFor?: BestForTag[]; createdBy: string; language: Language; attachments: Attachment[]; links: { self: Link; logInteraction: Link; update?: Link; rate?: Link; transcript?: Link; addAttachment?: Link; captions?: Link; assets?: Link; recommendations?: Link; createEmbedCode?: Link; }; price?: Price; channel?: string; channelId?: string; channelVideoId?: string; captionStatus?: CaptionStatus; contentWarnings?: ContentWarning[]; taxonomy?: Taxonomies; educationLevels?: EducationLevel[]; topics?: string[]; cefrLevel?: CefrLevel; contentCategories?: ContentCategory[]; maxLicenseDurationYears?: number; restrictions?: ContractRestrictions; type: ContentType; allowHumanCaptionRequest?: boolean; }