import { type ViewStyle } from "react-native"; import { type AnatomyTarget } from "../../style/anatomy.js"; import { Button as WebButton } from "../button/button.js"; import { Slider as WebSlider } from "../slider/slider.js"; /** * What the Video shell hands its control bar: the playback state and the handlers that * change it. An internal part contract, not public API (it is deliberately not named * `*Props`, which the docs generator publishes as a component's prop table). */ export interface VideoTransport { playing: boolean; muted: boolean; /** Seconds played. */ currentTime: number; /** Length of the clip in seconds (0 until it has loaded). */ duration: number; /** The clip's accessible name, used in the controls' own names. */ label: string; onTogglePlay: () => void; onSeek: (seconds: number) => void; onToggleMute: () => void; onFullscreen: () => void; /** The bar's surface, from the platform skin. */ style: ViewStyle; /** The anatomy handlers of the seek slider's part, inside a docs AnatomyProvider only. */ scrubberPart?: AnatomyTarget; /** The platform's Button, taken as a part (the web build by default). */ Button?: typeof WebButton; /** The platform's Slider, taken as a part (the web build by default). */ Slider?: typeof WebSlider; } /** m:ss, the way players show a clip's time. */ export declare function clock(seconds: number): string; export declare function VideoControls(props: VideoTransport): import("react").JSX.Element; //# sourceMappingURL=video.controls.d.ts.map