import * as React from "react"; import { ConfigConsumerProps } from "../Config"; interface ICarouselProps { /** * 初始当前位置 * * @default 0 **/ defaultIndex?: number; /** * 动画切换速度,单位秒 * * @default 0.5 **/ speed?: number; /** * 是否自动切换 * * @default true **/ autoPlay?: boolean; /** * 是否循环播放 * * @default false **/ infinite?: boolean; /** * 自动播放间隔时间,单位秒 * * @default 3.5 **/ interval?: number; /** * 是否有左右箭头 * * @default true **/ hasArrows?: boolean; /** * 是否显示page dots * * @default true **/ hasDots?: boolean; /** * 第一层div 额外要添加的 ID 名 * * @default '' **/ id?: string; /** * 第一层div 额外要添加的 CSS 类名 * * @default '' **/ className?: string; /** * 第三层当前元素当前额外要添加的 CSS 类名 * * @default 'curr' **/ currClassName?: string; /** * 第三层当前元素额外要添加的 CSS 类名 * * @default 'lg-carousel-item'' **/ carouselItemClassName?: string; /** * page dots 额外要添加的 CSS 类名 * * @default '' **/ dotClassName?: string; /** * 切换时回调 function ([...curr]) {} 可见元素下标 从0 开始 * * @default (...arg)=> void **/ onChange?: (...arg: any[]) => void; /** * 组件子内容 * * **/ children: any; /** * 每次滑动的次数 * * @default 1 **/ step?: number; /** * 可见元素个数 * * @default 1 **/ visibleNum?: number; /** * 渲染自定义dots ((props: dotBarPropsType) => React.ReactNode) * * @default null **/ renderDotBar?: any; /** * 自定义dots数据 * * @default [] **/ dotData?: any[]; /** * 默认前缀 * * @default 'lg' **/ prefixCls?: string; /** * item 的宽度 * * @default 0 **/ iWidth?: number; /** * 设置宽度单位 * * @default ‘px’ **/ widthUnit?: string; } interface ICarouseState { currIndex: number; wrapWidth: number; itemWidth: number; disPrev: boolean; disNext: boolean; callbackArr: number[]; jumpStep: number; } declare class Carousel extends React.PureComponent { static defaultProps: { defaultIndex: number; speed: number; interval: number; autoPlay: boolean; infinite: boolean; onChange: (...arg: any[]) => void; className: string; currClassName: string; carouselItemClassName: string; hasArrows: boolean; hasDots: boolean; dotClassName: string; id: string; step: number; visibleNum: number; renderDotBar: null; dotData: never[]; iWidth: number; widthUnit: string; }; private autoPlayFlag; private animTimer; private getWidthTimer; private nextFlag; private animationID; private marqueeSpeed; private marqueeWidth; private container; private ulWrap; private prefixCls; constructor(props: any); componentDidMount(): void; componentDidUpdate(prevProps: any, prevState: any): void; componentWillUnmount(): void; getWrapWidth(): void; getDotProps(): { goNext: (n: any) => void; count: any; currIndex: number; dotClassName: string | undefined; step: number | undefined; dotData: any[] | undefined; }; transitionEnd(): void; pausePlay(): void; goPlay(): void; startAnimation(): void; stopAnimation(): void; animationLeftFun(): void; goNext(n: any): void; renderDotBar(prefixCls: any): any; renderCarousel: ({ getPrefixCls }: ConfigConsumerProps) => JSX.Element | null; render(): JSX.Element; } export default Carousel;