import { default as React } from 'react';
import { Swiper as SwiperType } from 'swiper';
export type CarouselDirection = 'horizontal' | 'vertical';
export type CarouselEffect = 'slide' | 'fade' | 'coverflow' | 'cube' | 'flip' | 'creative' | 'cards';
export type CarouselPaginationType = 'bullets' | 'fraction' | 'progressbar' | 'custom';
export interface CarouselProps {
    children: React.ReactNode[];
    slidesPerView?: number | 'auto';
    spaceBetween?: number;
    direction?: CarouselDirection;
    effect?: CarouselEffect;
    mousewheel?: boolean;
    showNavigation?: boolean;
    showPagination?: boolean;
    paginationType?: CarouselPaginationType;
    autoplay?: boolean | {
        delay: number;
        disableOnInteraction?: boolean;
    };
    breakpoints?: Record<number, {
        slidesPerView: number;
        spaceBetween?: number;
    }>;
    loop?: boolean;
    centeredSlides?: boolean;
    grabCursor?: boolean;
    freeMode?: boolean;
    className?: string;
    slideClassName?: string;
    onSlideChange?: (swiper: SwiperType) => void;
    onSwiper?: (swiper: SwiperType) => void;
    'aria-label'?: string;
}
export interface CarouselRef {
    swiper: SwiperType | null;
    slideNext: () => void;
    slidePrev: () => void;
    slideTo: (index: number) => void;
}
export declare const Carousel: React.ForwardRefExoticComponent<CarouselProps & React.RefAttributes<CarouselRef>>;
export default Carousel;
