import React, { Component } from 'react';
import PropTypes from 'prop-types';
import { type ThisType as InnerSliderType } from './slick/inner-slider';
import type { SliderProps } from './types';
/**
 * Slider
 */
export default class Slider extends Component<SliderProps> {
    static displayName: string;
    static propTypes: {
        prefix: PropTypes.Requireable<string>;
        rtl: PropTypes.Requireable<boolean>;
        className: PropTypes.Requireable<any>;
        adaptiveHeight: PropTypes.Requireable<boolean>;
        animation: PropTypes.Requireable<NonNullable<string | boolean | null | undefined>>;
        arrows: PropTypes.Requireable<boolean>;
        arrowSize: PropTypes.Requireable<string>;
        arrowPosition: PropTypes.Requireable<string>;
        arrowDirection: PropTypes.Requireable<string>;
        autoplay: PropTypes.Requireable<boolean>;
        autoplaySpeed: PropTypes.Requireable<number>;
        nextArrow: PropTypes.Requireable<PropTypes.ReactElementLike>;
        prevArrow: PropTypes.Requireable<PropTypes.ReactElementLike>;
        centerMode: PropTypes.Requireable<boolean>;
        dots: PropTypes.Requireable<boolean>;
        dotsDirection: PropTypes.Requireable<string>;
        dotsClass: PropTypes.Requireable<string>;
        dotsRender: PropTypes.Requireable<(...args: any[]) => any>;
        draggable: PropTypes.Requireable<boolean>;
        infinite: PropTypes.Requireable<boolean>;
        defaultActiveIndex: PropTypes.Requireable<number>;
        lazyLoad: PropTypes.Requireable<boolean>;
        slide: PropTypes.Requireable<string>;
        slideDirection: PropTypes.Requireable<string>;
        slidesToShow: PropTypes.Requireable<number>;
        slidesToScroll: PropTypes.Requireable<number>;
        speed: PropTypes.Requireable<number>;
        activeIndex: PropTypes.Requireable<number>;
        triggerType: PropTypes.Requireable<string>;
        onChange: PropTypes.Requireable<(...args: any[]) => any>;
        onBeforeChange: PropTypes.Requireable<(...args: any[]) => any>;
        children: PropTypes.Requireable<any>;
        style: PropTypes.Requireable<object>;
        centerPadding: PropTypes.Requireable<string>;
        cssEase: PropTypes.Requireable<string>;
        edgeFriction: PropTypes.Requireable<number>;
        focusOnSelect: PropTypes.Requireable<boolean>;
        pauseOnHover: PropTypes.Requireable<boolean>;
        swipe: PropTypes.Requireable<boolean>;
        swipeToSlide: PropTypes.Requireable<boolean>;
        touchMove: PropTypes.Requireable<boolean>;
        touchThreshold: PropTypes.Requireable<number>;
        useCSS: PropTypes.Requireable<boolean>;
        variableWidth: PropTypes.Requireable<boolean>;
        waitForAnimate: PropTypes.Requireable<boolean>;
        edgeEvent: PropTypes.Requireable<any>;
        swipeEvent: PropTypes.Requireable<any>;
    };
    static defaultProps: {
        prefix: string;
        animation: string;
        arrowSize: string;
        arrowPosition: string;
        vertical: boolean;
        verticalSwiping: boolean;
        dots: boolean;
        dotsDirection: string;
        arrows: boolean;
        arrowDirection: string;
        infinite: boolean;
        autoplay: boolean;
        autoplaySpeed: number;
        speed: number;
        adaptiveHeight: boolean;
        centerMode: boolean;
        centerPadding: string;
        cssEase: string;
        draggable: boolean;
        edgeFriction: number;
        focusOnSelect: boolean;
        defaultActiveIndex: number;
        lazyLoad: boolean;
        pauseOnHover: boolean;
        rtl: boolean;
        slide: string;
        slideDirection: string;
        slidesToShow: number;
        slidesToScroll: number;
        swipe: boolean;
        swipeToSlide: boolean;
        touchMove: boolean;
        touchThreshold: number;
        useCSS: boolean;
        variableWidth: boolean;
        waitForAnimate: boolean;
        onChange: () => void;
        onBeforeChange: () => void;
        edgeEvent: null;
        swipeEvent: null;
        nextArrow: null;
        prevArrow: null;
        style: null;
        dotsRender: null;
        triggerType: string;
    };
    innerSlider: InnerSliderType | null;
    resize: () => void;
    render(): React.JSX.Element | null;
}
