import { EventEmitter } from "events"; import { Track, Awaitable, youtubedlEvents, scrapperOptions, extractorData, Album, } from "./instances"; declare class youtubedl extends EventEmitter { public constructor(__scrapperOptions: scrapperOptions); public readonly __scrapperOptions: scrapperOptions; public exec( rawQuery: string, __scrapperOptions?: scrapperOptions ): Promise; public streamExtractor( rawQuery: string, __scrapperOptions?: | scrapperOptions | "streamDownload object key will always be true", returnType?: string | "tracks" | "streams" ): Promise; public softExtractor( rawQuery: string, __scrapperOptions?: | scrapperOptions | "streamDownload and fetcLyrics object key will always be false" ): Promise; public static youtubedlQuick: youtubedl; public getExtractorData(id: String): extractorData | undefined; public on( event: K, listener: (...args: youtubedlEvents[K]) => Awaitable ): this; public on( event: Exclude, listener: (...args: any[]) => Awaitable ): this; } export type youtubedlQuick = youtubedl; declare var cores: { youtubedl: youtubedl; youtubedlQuick: youtubedlQuick; extractorData: extractorData; Track: Track; Album: Album; }; export default cores; export { extractorData, Track, Album };