import { default as React } from 'react';
interface SlideProps {
    title?: string;
    description?: string;
    image: string;
    tabletImage?: string;
    mobileImage?: string;
    slideLink?: string;
    /**
     * Called when a slide is clicked. You can call e.preventDefault() inside to avoid following slideLink.
     */
    onClick?: (args: {
        event: React.MouseEvent<HTMLDivElement>;
        slide: SlideProps;
        index: number;
    }) => void;
    customContent?: () => React.ReactNode;
    target: string;
}
interface SlideOptions {
    /**
     * Auto-change interval in ms. e.g. 5000
     */
    changeWithTimer?: number;
    disableControls?: boolean;
    variantControls?: 'outlined' | 'default' | 'outlined-white' | 'filled-white';
    /**
     * If true, do NOT render the dark overlay even when there's text.
     */
    disableOverlay?: boolean;
    showIndicators?: boolean;
    indicatorType?: 'dots' | 'numbers';
    indicatorVariant?: 'light' | 'dark';
}
export interface SliderProps extends React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement> {
    slides: SlideProps[];
    rounded?: boolean;
    options?: SlideOptions;
    /**
     * Optional hook when the slide changes (manual or auto)
     */
    onSlideChange?: (index: number, prevIndex: number) => void;
}
export declare const Slider: React.FC<SliderProps>;
export default Slider;
