import { ReactNode } from 'react'; import type { Direction } from './SmallCarousel'; export const NEXT = 'next'; export const PREV = 'prev'; export interface Img { isSmall: boolean; img: string; } export interface CarouselItem { imgUrl: string; videoUrl?: string; } export interface IframeProps { isSmall: boolean; src: string; title: string; frameBorder: string; allow: string; allowFullScreen: true; } export interface CarouselContainerProps { sliding: boolean; dir?: Direction; isSmall: boolean; width: number; } export interface CarouselSlotProps { order: number; isSmall: boolean; } export interface BigCarouselWrapperProps { show: boolean; isSmall: boolean; } export interface CarouselProps { items: CarouselItem[]; isSmall: boolean; } export interface SmallCarouselWrapperProps { isSmall: boolean; } export interface SmallCarouselProps { isSmall: boolean; children: ReactNode; leftClickEvent: (event?: React.MouseEvent) => void; rightClickEvent: (event?: React.MouseEvent) => void; className?: string; width: number; } export interface BigCarouselProps { open: boolean; handleBigCarousel: (direction: 'prev' | 'next') => void; index: number; items: EmptyStateCarouselProps['items']; isSmall: boolean; fallBackImg: string; leftClickEvent: (event?: React.MouseEvent) => void; rightClickEvent: (event?: React.MouseEvent) => void; vidoStartEvent: (event?: React.MouseEvent) => void; } export interface EmptyStateCarouselProps { items: CarouselItem[]; isSmall: boolean; fallBackImg: string; imgClickEvent: (event?: React.MouseEvent) => void; leftClickEvent: (event?: React.MouseEvent) => void; rightClickEvent: (event?: React.MouseEvent) => void; vidoStartEvent: (event?: React.MouseEvent) => void; className?: string; width: number; isError: boolean; }