type PandaVideoConfigurations = {
    color?: string;
    controlsColor?: string;
    controls?: 'play-large' | 'play' | 'progress' | 'current-time' | 'volume' | 'captions' | 'settings' | 'pip' | 'fullscreen'[];
    autoplay?: boolean;
    muted?: boolean;
    saveProgress?: boolean;
    thumbnail?: string;
    preload?: boolean;
    mutedIndicatorIcon?: boolean;
    mutedIndicatorTextTop?: string;
    mutedIndicatorTextBottom?: string;
    title?: string;
    watermark?: string;
    alternativeProgress?: boolean;
    alternativeProgress2xLimit?: number;
    alternativeProgressVelocity?: number;
    alternativeProgressHeight?: number;
    saveProgressTitle?: string;
    saveProgressBackgroundOpacity?: number;
    saveProgressButton1Title?: string;
    saveProgressButton2Title?: string;
    hideControlsOnStart?: boolean;
    restartAfterEnd?: boolean;
    troubleshootDialog?: boolean;
    disableForward?: boolean;
    playOpensFullscreen?: boolean;
    availableSpeeds?: '0.5' | '0.75' | '1' | '1.25' | '1.5' | '2';
    defaultSpeed?: number;
    captionsFontSize?: number;
    smartAutoplay?: boolean;
};
type PandaVideoPlayer = {
    appendParentUrlOnOutsideCtas?: boolean;
    audio?: boolean;
    callbacks?: Array<() => void>;
    captions?: {
        active?: boolean;
        currentTrack?: number;
        meta?: Record<string, unknown>;
        toggled?: boolean;
        language?: string;
    };
    captureMessage?: (e: any) => void;
    colors?: {
        primaryColor?: string;
        captionsColor?: string;
        captionsBackgroundColor?: string;
        controlsColor?: string;
        menuColor?: string;
    };
    comparison_id?: string;
    currentTime?: number;
    duration?: number;
    element_id?: string;
    fullscreen?: boolean;
    iframe?: Window;
    library_id?: string;
    live_id?: string;
    muted?: boolean;
    onError?: (error: any) => void;
    onReady?: () => void;
    outsideCtas?: any;
    paused?: boolean;
    pip?: boolean;
    ready?: boolean;
    speed?: {
        selected?: number;
        options?: number[];
        turbo?: number;
    };
    video_external_id?: string;
    video_height?: string;
    video_hls?: string;
    video_width?: string;
    volume?: number;
    _callbackQueue?: Array<any>;
    _receivedEventsQueue?: Array<any>;
};
type PandaVideoEvent = {
    message: string;
    video: string;
    playerData: {
        captions: {
            active: boolean;
            currentTrack: number;
            meta: {};
            toggled: boolean;
            language: string;
        };
        colors: {
            primaryColor: string;
            captionsColor: string;
            captionsBackgroundColor: string;
            controlsColor: string;
            menuColor: string;
        };
        currentTime: number;
        duration: number;
        fullscreen: boolean;
        hasAudio: boolean;
        muted: boolean;
        paused: boolean;
        pip: boolean;
        speed: {
            selected: number;
            options: number[];
            turbo: number;
        };
        volume: number;
        video: string;
    };
};
interface PandaPlayerProps {
    onEvent?: (event: PandaVideoEvent) => void;
    onReady?: (event: PandaVideoPlayer) => void;
    onError?: (error: any) => void;
    videoId?: string;
    videoURL?: string;
    configurations?: PandaVideoConfigurations;
}
export type { PandaPlayerProps, PandaVideoEvent, PandaVideoPlayer, PandaVideoConfigurations };
