import { EventEmitter } from '@angular/core';
import { TuiMonth, TuiMonthRange, TuiYear } from '@taiga-ui/cdk';
import { TuiInteractiveState, TuiRangeState, TuiWithOptionalMinMax } from '@taiga-ui/core';
import { TuiMonthContext } from '@taiga-ui/kit/interfaces';
import { TuiBooleanHandlerWithContext } from '@taiga-ui/kit/types';
import { Observable } from 'rxjs';
export declare class TuiCalendarMonthComponent implements TuiWithOptionalMinMax<TuiMonth> {
    readonly months$: Observable<readonly string[]>;
    value: TuiMonthRange | TuiMonth | null;
    year: TuiYear;
    disabledItemHandler: TuiBooleanHandlerWithContext<TuiMonth, TuiMonthContext>;
    min: TuiMonth;
    max: TuiMonth;
    readonly monthClick: EventEmitter<TuiMonth>;
    readonly hoveredItemChange: EventEmitter<TuiMonth | null>;
    readonly yearChange: EventEmitter<TuiYear>;
    isYearPickerShown: boolean;
    hoveredItem: TuiMonth | null;
    pressedItem: TuiMonth | null;
    constructor(months$: Observable<readonly string[]>);
    get isSingle(): boolean;
    get previousYearDisabled(): boolean;
    get nextYearDisabled(): boolean;
    getItemState(item: TuiMonth): TuiInteractiveState | null;
    getItemRange(item: TuiMonth): TuiRangeState | null;
    getTuiMonth(monthNumber: number, yearNumber: number): TuiMonth;
    isItemToday(item: TuiMonth): boolean;
    isItemInsideRange(month: TuiMonth): boolean;
    onPickerYearClick(year: TuiYear): void;
    onItemClick(month: TuiMonth): void;
    onYearClick(): void;
    onNextYear(): void;
    onPreviousYear(): void;
    onItemHovered(hovered: boolean, item: TuiMonth): void;
    onItemPressed(pressed: boolean, item: TuiMonth): void;
    private get disabledItemHandlerWithMinMax();
    private updateHoveredItem;
    private updatePressedItem;
    private calculateDisabledItemHandlerWithMinMax;
}
