@carousel-ui/react-spin-carousel-3d
Version:
A 3d Carousel that is built for React
37 lines (34 loc) • 1.58 kB
TypeScript
import * as react_jsx_runtime from 'react/jsx-runtime';
import React from 'react';
interface BaseCarouselProps<T> {
data: T[];
renderItem: (item: T, index: number) => React.ReactNode;
width?: string | number;
height?: string | number;
itemWidth?: string | number;
accentColor?: string;
backgroundColor?: string;
initialActiveIndex?: number;
isAutoPlay?: boolean;
autoPlayInterval?: number;
showRadioButtons?: boolean;
customRadioButtons?: (index: number, isActive: boolean, setActiveIndex: (index: number) => void) => React.ReactNode;
radioButtonStyle?: React.CSSProperties;
containerStyle?: React.CSSProperties;
itemStyle?: React.CSSProperties;
onItemClick?: (item: T, index: number) => void;
displayMode?: "image" | "card";
imageFit?: "cover" | "contain" | "fill";
imagePosition?: string;
}
interface CardModeProps<T> extends BaseCarouselProps<T> {
displayMode?: "card";
}
interface ImageModeProps<T> extends BaseCarouselProps<T> {
displayMode: "image";
imageFit?: "cover" | "contain" | "fill";
imagePosition?: string;
}
type CarouselProps<T> = CardModeProps<T> | ImageModeProps<T>;
declare const ReactSpinCarousel3D: <T>({ data, renderItem, width, height, itemWidth, accentColor, backgroundColor, initialActiveIndex, isAutoPlay, autoPlayInterval, showRadioButtons, customRadioButtons, radioButtonStyle, containerStyle, itemStyle, onItemClick, displayMode, imageFit, imagePosition, }: CarouselProps<T>) => react_jsx_runtime.JSX.Element;
export { ReactSpinCarousel3D as default };