import React from 'react';
import type { PlayerRef } from './player-methods.js';
import type { RenderFullscreenButton, RenderPlayPauseButton } from './PlayerControls.js';
export type ErrorFallback = (info: {
    error: Error;
}) => React.ReactNode;
export type RenderLoading = (canvas: {
    height: number;
    width: number;
    isBuffering: boolean;
}) => React.ReactNode;
export type RenderPoster = RenderLoading;
export type PosterFillMode = 'player-size' | 'composition-size';
declare const _default: React.ForwardRefExoticComponent<{
    controls: boolean;
    loop: boolean;
    autoPlay: boolean;
    allowFullscreen: boolean;
    inputProps: Record<string, unknown>;
    showVolumeControls: boolean;
    style?: React.CSSProperties | undefined;
    clickToPlay: boolean;
    doubleClickToFullscreen: boolean;
    spaceKeyToPlayOrPause: boolean;
    errorFallback: ErrorFallback;
    playbackRate: number;
    renderLoading: RenderLoading | undefined;
    renderPoster: RenderLoading | undefined;
    className: string | undefined;
    moveToBeginningWhenEnded: boolean;
    showPosterWhenPaused: boolean;
    showPosterWhenEnded: boolean;
    showPosterWhenUnplayed: boolean;
    showPosterWhenBuffering: boolean;
    inFrame: number | null;
    outFrame: number | null;
    initiallyShowControls: number | boolean;
    renderPlayPauseButton: RenderPlayPauseButton | null;
    renderFullscreen: RenderFullscreenButton | null;
    alwaysShowControls: boolean;
    showPlaybackRateControl: boolean | number[];
    posterFillMode: PosterFillMode;
    bufferStateDelayInMilliseconds: number;
    hideControlsWhenPointerDoesntMove: number | boolean;
} & React.RefAttributes<PlayerRef>>;
export default _default;
