export interface VideoConfig { controls?: boolean; loop?: boolean; muted?: boolean; volume?: number; } export interface GlobalConfig { type?: 'index' | 'id'; index?: { value: number; }; defaultId?: { value: string | number; }; videoConfig?: VideoConfig; } export interface CarouselConfig { display: boolean; autoplaySpeed: number; position: 'before' | 'after'; moveStay: boolean; } export interface AnimationConfig { carouseEffect: 'scroll' | 'fade' | 'flip' | 'cube' | 'coverflow'; switchSpeed: number; mode: 'horizontal' | 'vertical'; carouselConfig: CarouselConfig; } export interface PagerConfig { display: boolean; horiPosition?: 'top' | 'bottom'; vertPosition?: 'left' | 'right'; width: number; height: number; xOffset: number; yOffset: number; radius: number; speed: number; bgColor: string; activeBgColor: string; } export type DataMap = { id: number | string; url: string; title: string; }; export interface CarouselVideoSteamProps { w?: number; h?: number; globalConfig?: GlobalConfig; animationConfig?: AnimationConfig; pagerConfig?: PagerConfig; data?: DataMap[]; onChange?: (item: DataMap) => void; }