import React from 'react';
export declare function createSinglePlayer(activePlayer: $TSFixMe): {
    new (props: any): {
        player: $TSFixMe;
        config: any;
        shouldComponentUpdate(nextProps: $TSFixMe): boolean;
        componentDidUpdate(): void;
        getDuration: () => any;
        getCurrentTime: () => any;
        getSecondsLoaded: () => any;
        getInternalPlayer: (key?: string) => any;
        seekTo: (fraction: $TSFixMe, type: $TSFixMe) => null | undefined;
        ref: (player: $TSFixMe) => void;
        render(): React.JSX.Element | null;
        context: unknown;
        setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
        forceUpdate(callback?: (() => void) | undefined): void;
        readonly props: Readonly<any>;
        state: Readonly<any>;
        refs: {
            [key: string]: React.ReactInstance;
        };
        componentDidMount?(): void;
        componentWillUnmount?(): void;
        componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
        getSnapshotBeforeUpdate?(prevProps: Readonly<any>, prevState: Readonly<any>): any;
        componentWillMount?(): void;
        UNSAFE_componentWillMount?(): void;
        componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
        UNSAFE_componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
        componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
        UNSAFE_componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
    };
    new (props: any, context: any): {
        player: $TSFixMe;
        config: any;
        shouldComponentUpdate(nextProps: $TSFixMe): boolean;
        componentDidUpdate(): void;
        getDuration: () => any;
        getCurrentTime: () => any;
        getSecondsLoaded: () => any;
        getInternalPlayer: (key?: string) => any;
        seekTo: (fraction: $TSFixMe, type: $TSFixMe) => null | undefined;
        ref: (player: $TSFixMe) => void;
        render(): React.JSX.Element | null;
        context: unknown;
        setState<K extends string | number | symbol>(state: any, callback?: (() => void) | undefined): void;
        forceUpdate(callback?: (() => void) | undefined): void;
        readonly props: Readonly<any>;
        state: Readonly<any>;
        refs: {
            [key: string]: React.ReactInstance;
        };
        componentDidMount?(): void;
        componentWillUnmount?(): void;
        componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
        getSnapshotBeforeUpdate?(prevProps: Readonly<any>, prevState: Readonly<any>): any;
        componentWillMount?(): void;
        UNSAFE_componentWillMount?(): void;
        componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
        UNSAFE_componentWillReceiveProps?(nextProps: Readonly<any>, nextContext: any): void;
        componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
        UNSAFE_componentWillUpdate?(nextProps: Readonly<any>, nextState: Readonly<any>, nextContext: any): void;
    };
    displayName: string;
    propTypes: {
        url: import("prop-types").Requireable<NonNullable<string | object | null | undefined>>;
        playing: import("prop-types").Requireable<boolean>;
        loop: import("prop-types").Requireable<boolean>;
        controls: import("prop-types").Requireable<boolean>;
        volume: import("prop-types").Requireable<number>;
        muted: import("prop-types").Requireable<boolean>;
        playbackRate: import("prop-types").Requireable<number>;
        width: import("prop-types").Requireable<NonNullable<string | number | null | undefined>>;
        height: import("prop-types").Requireable<NonNullable<string | number | null | undefined>>;
        style: import("prop-types").Requireable<object>;
        progressInterval: import("prop-types").Requireable<number>;
        playsinline: import("prop-types").Requireable<boolean>;
        pip: import("prop-types").Requireable<boolean>;
        light: import("prop-types").Requireable<NonNullable<string | boolean | null | undefined>>;
        playIcon: import("prop-types").Requireable<import("prop-types").ReactNodeLike>;
        previewTabIndex: import("prop-types").Requireable<number>;
        previewAriaLabel: import("prop-types").Requireable<string>;
        wrapper: import("prop-types").Requireable<NonNullable<string | ((...args: any[]) => any) | import("prop-types").InferProps<{
            render: import("prop-types").Validator<(...args: any[]) => any>;
        }> | null | undefined>>;
        config: import("prop-types").Requireable<import("prop-types").InferProps<{
            soundcloud: import("prop-types").Requireable<import("prop-types").InferProps<{
                options: import("prop-types").Requireable<object>;
                preload: import("prop-types").Requireable<boolean>;
            }>>;
            youtube: import("prop-types").Requireable<import("prop-types").InferProps<{
                playerVars: import("prop-types").Requireable<object>;
                embedOptions: import("prop-types").Requireable<object>;
                preload: import("prop-types").Requireable<boolean>;
            }>>;
            facebook: import("prop-types").Requireable<import("prop-types").InferProps<{
                appId: import("prop-types").Requireable<string>;
                version: import("prop-types").Requireable<string>;
                playerId: import("prop-types").Requireable<string>;
            }>>;
            dailymotion: import("prop-types").Requireable<import("prop-types").InferProps<{
                params: import("prop-types").Requireable<object>;
                preload: import("prop-types").Requireable<boolean>;
            }>>;
            vimeo: import("prop-types").Requireable<import("prop-types").InferProps<{
                playerOptions: import("prop-types").Requireable<object>;
                preload: import("prop-types").Requireable<boolean>;
            }>>;
            file: import("prop-types").Requireable<import("prop-types").InferProps<{
                attributes: import("prop-types").Requireable<object>;
                tracks: import("prop-types").Requireable<any[]>;
                forceVideo: import("prop-types").Requireable<boolean>;
                forceAudio: import("prop-types").Requireable<boolean>;
                forceHLS: import("prop-types").Requireable<boolean>;
                forceDASH: import("prop-types").Requireable<boolean>;
                hlsOptions: import("prop-types").Requireable<object>;
                hlsVersion: import("prop-types").Requireable<string>;
                dashVersion: import("prop-types").Requireable<string>;
            }>>;
            wistia: import("prop-types").Requireable<import("prop-types").InferProps<{
                options: import("prop-types").Requireable<object>;
            }>>;
            mixcloud: import("prop-types").Requireable<import("prop-types").InferProps<{
                options: import("prop-types").Requireable<object>;
            }>>;
            twitch: import("prop-types").Requireable<import("prop-types").InferProps<{
                options: import("prop-types").Requireable<object>;
                playerId: import("prop-types").Requireable<string>;
            }>>;
        }>>;
        onReady: import("prop-types").Requireable<(...args: any[]) => any>;
        onStart: import("prop-types").Requireable<(...args: any[]) => any>;
        onPlay: import("prop-types").Requireable<(...args: any[]) => any>;
        onPause: import("prop-types").Requireable<(...args: any[]) => any>;
        onBuffer: import("prop-types").Requireable<(...args: any[]) => any>;
        onBufferEnd: import("prop-types").Requireable<(...args: any[]) => any>;
        onEnded: import("prop-types").Requireable<(...args: any[]) => any>;
        onError: import("prop-types").Requireable<(...args: any[]) => any>;
        onDuration: import("prop-types").Requireable<(...args: any[]) => any>;
        onSeek: import("prop-types").Requireable<(...args: any[]) => any>;
        onProgress: import("prop-types").Requireable<(...args: any[]) => any>;
        onEnablePIP: import("prop-types").Requireable<(...args: any[]) => any>;
        onDisablePIP: import("prop-types").Requireable<(...args: any[]) => any>;
    };
    defaultProps: {
        playing: boolean;
        loop: boolean;
        controls: boolean;
        volume: null;
        muted: boolean;
        playbackRate: number;
        width: string;
        height: string;
        style: {};
        progressInterval: number;
        playsinline: boolean;
        pip: boolean;
        light: boolean;
        wrapper: string;
        previewTabIndex: number;
        previewAriaLabel: string;
        config: {
            soundcloud: {
                options: {
                    visual: boolean;
                    buying: boolean;
                    liking: boolean;
                    download: boolean;
                    sharing: boolean;
                    show_comments: boolean;
                    show_playcount: boolean;
                };
            };
            youtube: {
                playerVars: {
                    playsinline: number;
                    showinfo: number;
                    rel: number;
                    iv_load_policy: number;
                    modestbranding: number;
                };
                embedOptions: {};
                preload: boolean;
            };
            facebook: {
                appId: string;
                version: string;
                playerId: null;
            };
            dailymotion: {
                params: {
                    api: number;
                    'endscreen-enable': boolean;
                };
                preload: boolean;
            };
            vimeo: {
                playerOptions: {
                    autopause: boolean;
                    byline: boolean;
                    portrait: boolean;
                    title: boolean;
                };
                preload: boolean;
            };
            file: {
                attributes: {};
                tracks: never[];
                forceVideo: boolean;
                forceAudio: boolean;
                forceHLS: boolean;
                forceDASH: boolean;
                hlsOptions: {};
                hlsVersion: string;
                dashVersion: string;
            };
            wistia: {
                options: {};
            };
            mixcloud: {
                options: {
                    hide_cover: number;
                };
            };
            twitch: {
                options: {};
                playerId: null;
            };
        };
        onReady(): void;
        onStart(): void;
        onPlay(): void;
        onPause(): void;
        onBuffer(): void;
        onBufferEnd(): void;
        onEnded(): void;
        onError(): void;
        onDuration(): void;
        onSeek(): void;
        onProgress(): void;
        onEnablePIP(): void;
        onDisablePIP(): void;
    };
    canPlay: any;
    contextType?: React.Context<any> | undefined;
};
//# sourceMappingURL=single-player.d.ts.map