import type { HTMLAttributes, ReactNode, VideoHTMLAttributes } from 'react';
import { type CssLength } from '../../../utils/css';
type CircleToPortraitVideoLabel = string | ((item: CircleToPortraitVideoItem) => string);
type NativeVideoProps = Omit, 'children' | 'className' | 'controls' | 'poster' | 'src' | 'style'>;
export type CircleToPortraitVideoSource = {
src: string;
type?: string;
media?: string;
};
export type CircleToPortraitVideoItem = {
id: string;
src?: string;
sources?: CircleToPortraitVideoSource[];
type?: string;
poster?: string;
label?: string;
};
export type CircleToPortraitVideoPlayerProps = Omit, 'children' | 'title'> & {
title?: ReactNode;
subtitle?: ReactNode;
items: readonly CircleToPortraitVideoItem[];
activeId?: string | null;
defaultActiveId?: string | null;
onActiveIdChange?: (activeId: string | null) => void;
resetOnDeactivate?: boolean;
resetDelayMs?: number;
size?: CssLength;
activeWidth?: CssLength;
gap?: CssLength;
maxGridHeight?: CssLength;
sectionRadius?: CssLength;
activeRadius?: CssLength;
videoProps?: NativeVideoProps;
gridClassName?: string;
itemClassName?: string;
mediaClassName?: string;
videoClassName?: string;
playLabel?: CircleToPortraitVideoLabel;
closeLabel?: CircleToPortraitVideoLabel;
};
export declare const CircleToPortraitVideoPlayer: ({ title, subtitle, items, activeId, defaultActiveId, onActiveIdChange, resetOnDeactivate, resetDelayMs, size, activeWidth, gap, maxGridHeight, sectionRadius, activeRadius, videoProps, className, gridClassName, itemClassName, mediaClassName, videoClassName, playLabel, closeLabel, style, ...rootProps }: CircleToPortraitVideoPlayerProps) => import("react/jsx-runtime").JSX.Element;
export {};