/// import React from 'react'; import { LayoutChangeEvent, NativeScrollEvent, NativeSyntheticEvent, StyleProp, ViewStyle } from 'react-native'; import { CarouselPropsType } from './PropsType'; export interface CarouselProps extends CarouselPropsType { bounces?: boolean; onScrollBeginDrag?: (event: NativeSyntheticEvent, state: CarouselState, carousel: Carousel) => void; onMomentumScrollEnd?: (event: NativeSyntheticEvent, state: CarouselState, carousel: Carousel) => void; styles?: any; style?: StyleProp; dotStyle?: StyleProp; dotActiveStyle?: StyleProp; pagination?: (props: PaginationProps) => React.ReactNode; afterChange?: (index: number) => void; } export interface CarouselOffset { x: number; y: number; } export interface CarouselState { width: number; height: number; selectedIndex: number; isScrolling: boolean; autoplayEnd: boolean; loopJump: boolean; offset: CarouselOffset; } export interface PaginationProps { styles: any; vertical?: boolean; current: number; count: number; dotStyle?: StyleProp; dotActiveStyle?: StyleProp; } declare class Carousel extends React.Component { static defaultProps: CarouselProps; private scrollviewRef; private autoplayTimer; private androidScrollEndTimer; private scrollEndTimter; constructor(props: CarouselProps); getChildrenCount: (children: React.ReactNode) => number; componentDidMount(): void; componentWillUnmount(): void; loopJump: () => void; autoplay: () => void; onScrollBegin: (e: NativeSyntheticEvent) => void; onScrollEnd: (e: NativeSyntheticEvent) => void; onScrollEndDrag: (e: NativeSyntheticEvent) => void; paging: (offsetY: number) => void; updateIndex: (offset: CarouselOffset) => void; scrollNextPage: () => void; renderContent: (pages: React.ReactNode) => JSX.Element; renderDots: (index: number) => React.ReactNode; onLayout: (e: LayoutChangeEvent) => void; onChildLayout: (e: LayoutChangeEvent) => void; render(): JSX.Element; } export default Carousel;