UNPKG

newpipe-extractor-js

Version:
84 lines 2.37 kB
import { Locale, StreamInfo, ChannelInfo, PlaylistInfo, SearchResult } from '../types'; export interface ServiceInfo { name: string; serviceId: number; baseUrl: string; } export interface LinkHandler { acceptUrl(url: string): boolean; getId(url: string): string; getUrl(id: string): string; } export declare abstract class StreamingService { private serviceInfo; constructor(serviceInfo: ServiceInfo); /** * Get service information */ getServiceInfo(): ServiceInfo; /** * Get service ID */ getServiceId(): number; /** * Get service name */ getServiceName(): string; /** * Get base URL for this service */ getBaseUrl(): string; /** * Get the link handler for this service */ abstract getLinkHandler(): LinkHandler | null; /** * Extract stream information from URL */ abstract getStreamExtractor(url: string): Promise<StreamInfo>; /** * Extract channel information from URL */ abstract getChannelExtractor(url: string): Promise<ChannelInfo>; /** * Extract playlist information from URL */ abstract getPlaylistExtractor(url: string): Promise<PlaylistInfo>; /** * Search for content */ abstract search(query: string, contentFilters: string[], sortFilter: string, localization: Locale): Promise<SearchResult>; /** * Get search suggestions */ abstract getSuggestionExtractor(query: string, localization: Locale): Promise<string[]>; /** * Get trending/kiosk content */ abstract getKioskExtractor(kioskId: string, localization: Locale): Promise<SearchResult>; /** * Get available kiosks */ abstract getKioskList(): Promise<string[]>; /** * Get channel tabs (videos, playlists, etc.) */ abstract getChannelTabExtractor(channelUrl: string, tab: string): Promise<SearchResult>; /** * Extract comments for a stream */ abstract getCommentsExtractor(streamUrl: string): Promise<any>; /** * Check if URL is supported by this service */ isUrlSupported(url: string): boolean; /** * Extract ID from URL */ extractId(url: string): string; /** * Create URL from ID */ createUrl(id: string): string; } //# sourceMappingURL=StreamingService.d.ts.map