import { EntityWithLinks } from '../../common/model/common'; export interface VideoEntity extends EntityWithLinks { id: string; title: string; description: string; releasedOn: string; playback: { type: string; id: string; duration: string; maxResolutionAvailable: boolean; _links: { createPlaybackEvent?: { href: string; templated: boolean; }; createPlayerInteractedWithEvent: { href: string; templated: boolean; }; thumbnail: { href: string; templated: true; }; videoPreview?: { href: string; templated: true; }; hlsStream?: { href: string; templated: boolean; }; }; downloadUrl?: null; }; subjects: { id: string; name: string; }[]; badges: string[]; legalRestrictions: string; maxLicenseDurationYears?: number; ageRange: { min: number; max: number; label: string; }; rating?: number; yourRating?: null; bestFor: { label: string; }[]; createdBy: string; language: null; captionStatus: string; allowHumanCaptionRequest?: boolean; attachments: [ { id: string; type: string; description: string; _links: { download: { href: string; templated: boolean; }; }; } ]; taxonomy: { channel: { categories: { codeValue: string; description: string; }[]; }; manual: { categories: { codeValue: string; description: string; }[]; }; }; educationLevels?: { code: string; label?: string; }[]; _links: { self: { href: string; templated: boolean; }; logInteraction: { href: string; templated: boolean; }; addAttachment: { href: string; templated: boolean; }; }; channel?: string; channelId?: string; channelVideoId?: string; cefrLevel?: string; contentCategories?: { key: string; label?: string; }[]; type: string; restrictions?: { editing: { permission?: string; editingInfo?: string; }; territory: { type?: string; territories?: string[]; additionalTerritoryInfo?: string; }; }; }