import { LanguageItem } from '../modules/module.langsData'; export interface HidiveVideoList { Code: number; Status: string; Message: null; Messages: Record; Data: HidiveVideo; Timestamp: string; IPAddress: string; } export interface HidiveVideo { ShowAds: boolean; CaptionCssUrl: string; FontSize: number; FontScale: number; CaptionLanguages: string[]; CaptionLanguage: string; CaptionVttUrls: Record; VideoLanguages: string[]; VideoLanguage: string; VideoUrls: Record; FontColorName: string; AutoPlayNextEpisode: boolean; MaxStreams: number; CurrentTime: number; FontColorCode: string; RunTime: number; AdUrl: null; } export interface HidiveStreamList { hls: string[]; drm: string[]; drmEnabled: boolean; } export interface HidiveStreamInfo extends HidiveStreamList { language?: string; episodeTitle?: string; seriesTitle?: string; season?: number; episodeNumber?: number; uncut?: boolean; image?: string; } export interface HidiveSubtitleInfo { language: string; cc: boolean; url: string; } export type sxItem = { language: LanguageItem, path: string, file: string title: string, fonts: Font[] } export type DownloadedMedia = { type: 'Video', lang: LanguageItem, path: string, uncut?: boolean } | ({ type: 'Subtitle', cc: boolean, belongsToFile: { hasFile: false, } | { hasFile: true, file: string } } & sxItem )