import * as React from 'react';
import { ICalendarIconStrings } from './Calendar.types';
export interface ICalendarYearRange {
    fromYear: number;
    toYear: number;
}
export interface ICalendarYearRangeToString {
    (range: ICalendarYearRange): string;
}
export interface ICalendarYearStrings {
    rangeAriaLabel?: string | ICalendarYearRangeToString;
    prevRangeAriaLabel?: string | ICalendarYearRangeToString;
    nextRangeAriaLabel?: string | ICalendarYearRangeToString;
}
export interface ICalendarYear {
    focus(): void;
}
export interface ICalendarYearProps {
    navigationIcons?: ICalendarIconStrings;
    navigatedYear?: number;
    selectedYear?: number;
    minYear?: number;
    maxYear?: number;
    onHeaderSelect?: (focus: boolean) => void;
    onSelectYear?: (year: number) => void;
    onRenderTitle?: (props: ICalendarYearHeaderProps) => React.ReactNode;
    onRenderYear?: (year: number) => React.ReactNode;
    className?: string;
    strings?: ICalendarYearStrings;
}
export interface ICalendarYearHeaderProps extends ICalendarYearProps, ICalendarYearRange {
    onSelectPrev?: () => void;
    onSelectNext?: () => void;
}
export interface ICalendarYearState {
    fromYear: number;
    navigatedYear?: number;
    selectedYear?: number;
}
export declare class CalendarYear extends React.Component<ICalendarYearProps, ICalendarYearState> implements ICalendarYear {
    private _gridRef;
    constructor(props: ICalendarYearProps);
    focus(): void;
    render(): JSX.Element;
    private _onNavNext;
    private _onNavPrev;
    private _renderHeader;
    private _renderGrid;
    private _calculateInitialStateFromProps;
}
