UNPKG

@steepleinc/youtubei.js

Version:

A JavaScript client for YouTube's private API, known as InnerTube.

114 lines (113 loc) 3.22 kB
export type RawNode = Record<string, any>; export type RawData = RawNode | RawNode[]; export type CpnSource = 'CPN_SOURCE_TYPE_CLIENT' | 'CPN_SOURCE_TYPE_WATCH_SERVER'; export interface IServiceTrackingParams { service: string; params?: { key: string; value: string; }[]; } export interface IResponseContext { serviceTrackingParams: IServiceTrackingParams[]; maxAgeSeconds: number; } export interface IRawPlayerConfig { audioConfig: { loudnessDb?: number; perceptualLoudnessDb?: number; enablePerFormatLoudness: boolean; }; streamSelectionConfig: { maxBitrate: string; }; mediaCommonConfig: { dynamicReadaheadConfig?: { maxReadAheadMediaTimeMs: number; minReadAheadMediaTimeMs: number; readAheadGrowthRateMs: number; }; mediaUstreamerRequestConfig?: { videoPlaybackUstreamerConfig: string; }; }; } export interface IRawTrustedResource { privateDoNotAccessOrElseTrustedResourceUrlWrappedValue?: string; privateDoNotAccessOrElseSafeScriptWrappedValue?: string; } export interface IRawBotguardChallenge { interpreterUrl: IRawTrustedResource; interpreterHash: string; program: string; globalName: string; clientExperimentsStateBlob: string; } export interface IRawResponse { responseContext?: IResponseContext; background?: RawNode; bgChallenge?: IRawBotguardChallenge; challenge?: string; contents?: RawData; onResponseReceivedActions?: RawNode[]; onResponseReceivedEndpoints?: RawNode[]; onResponseReceivedCommands?: RawNode[]; continuationContents?: RawNode; actions?: RawNode[]; liveChatItemContextMenuSupportedRenderers?: RawNode; header?: RawNode; sidebar?: RawNode; continuation?: RawNode; metadata?: RawNode; microformat?: RawNode; overlay?: RawNode; alerts?: RawNode[]; refinements?: string[]; estimatedResults?: string; playerOverlays?: RawNode; playbackTracking?: { videostatsWatchtimeUrl: { baseUrl: string; }; videostatsPlaybackUrl: { baseUrl: string; }; }; playabilityStatus?: { status: string; reason?: string; errorScreen?: RawNode; audioOnlyPlayability?: RawNode; playableInEmbed?: boolean; }; streamingData?: { expiresInSeconds: string; formats: RawNode[]; adaptiveFormats: RawNode[]; dashManifestUrl?: string; hlsManifestUrl?: string; serverAbrStreamingUrl?: string; }; playerConfig?: IRawPlayerConfig; playerResponse?: IRawResponse; watchNextResponse?: IRawResponse; currentVideoEndpoint?: RawNode; unseenCount?: number; playlistId?: string; endpoint?: RawNode; captions?: RawNode; videoDetails?: RawNode; annotations?: RawNode[]; storyboards?: RawNode; endscreen?: RawNode; cards?: RawNode; cpnInfo?: { cpn: string; cpnSource: CpnSource; }; items?: RawNode[]; frameworkUpdates?: any; engagementPanels?: RawNode[]; entries?: RawNode[]; [key: string]: any; }