newpipe-extractor-js
Version:
JavaScript/Node.js port of NewPipeExtractor
44 lines • 1.43 kB
TypeScript
import { PoTokenProvider, PoTokenRequest } from './PoTokenProvider';
export interface PoTokenDirectorOptions {
enableCache?: boolean;
preferredProvider?: string;
fallbackToAdvanced?: boolean;
logger?: {
debug: (message: string) => void;
info: (message: string) => void;
warn: (message: string) => void;
error: (message: string) => void;
};
}
export declare class PoTokenDirector {
private providers;
private cache;
private options;
constructor(options?: PoTokenDirectorOptions);
private initializeProviders;
registerProvider(provider: PoTokenProvider): void;
getProvider(name: string): PoTokenProvider | undefined;
getPoToken(request: PoTokenRequest): Promise<string | null>;
private requestTokenFromProviders;
private getProviderOrder;
createPoTokenRequest(options: {
context: 'gvs' | 'player' | 'subs';
videoId?: string;
visitorData?: string;
isAuthenticated?: boolean;
clientName?: string;
clientVersion?: string;
cookies?: any[];
headers?: Record<string, string>;
proxy?: string;
sourceAddress?: string;
}): PoTokenRequest;
clearCache(): void;
getStats(): {
providersCount: number;
providers: string[];
cacheEnabled: boolean;
preferredProvider: string;
};
}
//# sourceMappingURL=PoTokenDirector.d.ts.map