import * as React from "react"; import * as PropTypes from "prop-types"; import { ExpandContext } from "../ExpandController"; export declare enum Direction { prev = "prev", next = "next" } export interface SliderControllerContext { registerSlide: () => string; setAsActive: (id: string) => void; unregisterSlide: (id: string) => void; slideControl: { [Direction.next]: { disabled: boolean; setAsActive: () => void; }; [Direction.prev]: { disabled: boolean; setAsActive: () => void; }; }; slidesList: Array; } export declare const SliderControllerContextTypes: { [P in keyof SliderControllerContext]: PropTypes.Validator; }; export interface SliderControllerState { slides: Set; activeSlide: number; } export interface SliderControllerProps { autoPlay?: boolean; autoPlayDelay?: number; } export declare const SliderControllerPropTypes: { [P in keyof SliderControllerProps]: PropTypes.Validator; }; export declare const SliderControllerDefaultProps: { [P in keyof SliderControllerProps]?: SliderControllerProps[P]; }; export declare class SliderController extends React.Component { static readonly childContextTypes: { registerSlide: PropTypes.Validator; setAsActive: PropTypes.Validator; unregisterSlide: PropTypes.Validator; slideControl: PropTypes.Validator; slidesList: PropTypes.Validator; }; static readonly defaultProps: { autoPlay?: boolean; autoPlayDelay?: number; }; static readonly propTypes: { autoPlay?: PropTypes.Validator; autoPlayDelay?: PropTypes.Validator; }; static readonly contextTypes: { changeExpandState: PropTypes.Validator; isExpanded: PropTypes.Validator; getState: PropTypes.Validator; }; static slidesCount: number; readonly context: ExpandContext; readonly state: SliderControllerState; protected timer: any; getChildContext(): SliderControllerContext; componentDidMount(): void; componentDidUpdate(): void; componentWillUnmount(): void; render(): React.ReactNode; protected registerSlide: () => string; protected unregisterSlide: (id: string) => void; protected changeActiveSlide: (id: string) => void; protected setAsActiveNext: () => void; protected setAsActivPrev: () => void; protected readonly slidesArray: Array; private autoPlay; private getSlideIndex; private getSlideByIndex; private readonly contextActiveSlide; private readonly isNoActiveSlide; }