import * as React from 'react';
import type { CalendarProps, ContainerState, DatepickerProps, StatefulContainerProps, StateChangeType, StateReducer } from './types';
type InputProps<T> = CalendarProps<T> | DatepickerProps<T>;
type Props<T> = StatefulContainerProps<InputProps<T>, T>;
declare class StatefulContainer<T = Date> extends React.Component<Props<T>, ContainerState<T>> {
    static defaultProps: {
        stateReducer: StateReducer<unknown>;
    } & Partial<Props<unknown>>;
    constructor(props: Props<T>);
    onChange: (a: {
        readonly date: T | undefined | null | Array<T | undefined | null>;
    }) => unknown;
    internalSetState(type: StateChangeType, changes: ContainerState<T>): void;
    render(): React.ReactNode;
}
export default StatefulContainer;
