import type { StreamPlayerOptions, StreamPlayerEvents, Level } from './types';
export declare class StreamPlayer {
    private static readonly BASE_URL;
    private static readonly VERSION;
    private container;
    private videoElement;
    private hls;
    private analyticsCollector;
    private sessionRegistration;
    private eventListeners;
    private streamCode;
    private options;
    private timer;
    private qualityLevels;
    private resource?;
    private edge_id?;
    private constructor();
    static create(options: StreamPlayerOptions): Promise<StreamPlayer>;
    initialize(): Promise<void>;
    private setupHlsEvents;
    private setupVideoEvents;
    private startTimer;
    private cancelTimer;
    private updateProgress;
    private setVideoPoster;
    load(streamUrl: string): Promise<void>;
    play(): Promise<void>;
    rewind(offset?: number): void;
    fastForward(offset?: number): void;
    pause(): void;
    seek(time: number): void;
    toggleMute(): void;
    switchLevel(level: number): void;
    seekToLive(): void;
    setVolume(volume: number): void;
    getVolume(): number;
    isMuted(): boolean;
    isAutolevelEnabled(): boolean;
    getLevels(): Level[];
    getCurrentLevel(): number;
    on<K extends keyof StreamPlayerEvents>(event: K, callback: StreamPlayerEvents[K]): void;
    off<K extends keyof StreamPlayerEvents>(event: K, callback: StreamPlayerEvents[K]): void;
    private emit;
    destroy(): void;
    private getDocumentReferer;
}
//# sourceMappingURL=StreamPlayer.d.ts.map