export interface ContentBase { identifier: string; name: string; appIcon: string; description: string; pkgVersion: string; status: string; size: string; owner: string; creator: string; publisher: string; me_totalRatingsCount: number; me_averageRating: string; me_totalDownloads: string; copyright: string; copyrightYear: string; license: string; licenseDetails: LicenseDetails; expires: string; downloadUrl: string; variants: { [key: string]: any; }; artifactUrl: string; language: string[]; osId: string; contentType: string; resourceType: string; mimeType: ContentMimeType; artifactMimeType: string; versionKey: string; contentEncoding: string; contentDisposition: string; contentTypesCount: string; lastPublishedOn: string; createdOn: string; createdBy: string; channel: string; screenshots: string[]; audience: any; pragma: string[]; attributions: string[]; dialcodes: string[]; childNodes: string[]; previewUrl: string; framework: string; creators: string; contributors: string; streamingUrl: string; totalScore: any; altMsg?: AltMsg[]; organisation?: string; author?: string; collaborators?: string; originData?: OriginData; origin?: string; totalQuestions?: number; itemSetPreviewUrl?: string; leafNodes?: string[]; leafNodesCount?: number; primaryCategory?: string; trackable?: Trackable; userConsent?: UserConsent; additionalCategories?: string[]; forumId?: string; transcripts?: Transcript[]; } export interface Content extends ContentBase { [key: string]: any; } export interface Transcript { artifactUrl: string; identifier: string; language: string; } export interface LicenseDetails { description: string; name: string; url: string; } export interface AltMsg { key: string; value: string; translations?: string; } export interface OriginData { name?: string; author?: string; license?: string; organisation?: string; } export declare enum TrackingEnabled { YES = "Yes", NO = "No" } export declare enum AutoBatch { YES = "Yes", NO = "No" } export declare enum UserConsent { YES = "Yes", NO = "No" } export interface Trackable { enabled: TrackingEnabled; autoBatch: AutoBatch; } export declare type ContentMimeType = 'application/vnd.ekstep.ecml-archive' | 'application/vnd.ekstep.html-archive' | 'application/vnd.android.package-archive' | 'application/vnd.ekstep.content-archive' | 'application/vnd.ekstep.content-collection' | 'application/vnd.ekstep.plugin-archive' | 'application/vnd.ekstep.h5p-archive' | 'application/vnd.sunbird.question' | 'application/vnd.sunbird.questionset' | 'application/epub' | 'text/x-url' | 'video/x-youtube' | 'application/octet-stream' | 'application/msword' | 'application/pdf' | 'image/jpeg' | 'image/jpg' | 'image/png' | 'image/tiff' | 'image/bmp' | 'image/gif' | 'image/svg+xml' | 'video/avi' | 'video/mpeg' | 'video/quicktime' | 'video/3gpp' | 'video/mp4' | 'video/ogg' | 'video/webm' | 'audio/mp3' | 'audio/mp4' | 'audio/mpeg' | 'audio/ogg' | 'audio/webm' | 'audio/x-wav' | 'audio/wav'; export declare enum MimeTypeCategory { VIDEO = "VIDEO", AUDIO = "AUDIO", INTERACTION = "INTERACTION", DOC = "DOC", ALL = "ALL" } export declare class MimeTypeCategoryMapping { static readonly [MimeTypeCategory.VIDEO]: ContentMimeType[]; static readonly [MimeTypeCategory.AUDIO]: ContentMimeType[]; static readonly [MimeTypeCategory.INTERACTION]: ContentMimeType[]; static readonly [MimeTypeCategory.DOC]: ContentMimeType[]; static readonly [MimeTypeCategory.ALL]: ContentMimeType[]; }