import { type MouseEvent, type ReactElement } from "react";
import { type SpacingVariants } from "../style/Spacing.js";
import { type WidthVariants } from "../style/Width.js";
import type { ChildProps, OptionalChildProps } from "../util/props.js";
export interface VideoProps extends SpacingVariants, WidthVariants, OptionalChildProps {
}
export interface VideoButtonsProps extends ChildProps {
    left?: boolean;
}
export interface VideoButtonProps extends ChildProps {
    title?: string | undefined;
    onClick?: (event: MouseEvent<HTMLButtonElement>) => void;
    danger?: boolean;
    disabled?: boolean;
}
/**
 * Video container element.
 * - Has a black background and a 16:9 aspect ratio.
 * - Shows its contents (i.e. a `<video>` element or a `<TwilioRoom>`.
 */
export declare function Video({ children, ...variants }: VideoProps): ReactElement;
/** Set of video buttons floating over a video. */
export declare function VideoButtons({ children, ...variants }: VideoButtonsProps): import("react/jsx-runtime").JSX.Element;
/** Individual video button over a video. */
export declare function VideoButton({ children, title, onClick, disabled, ...variants }: VideoButtonProps): ReactElement;
declare const _fullscreenVideoButtonProps: unique symbol;
export interface FullscreenVideoButtonProps {
    readonly [_fullscreenVideoButtonProps]?: never;
}
/** Button to make a video element go fullscreen. */
export declare function FullscreenVideoButton(): ReactElement | null;
export {};
