import { VCLDateAdapter } from '../dateadapter/index'; import { VCLCalendarView, VCLCalendarHandler, VCLCalendar } from './interfaces'; export declare abstract class DateHandler extends VCLCalendarHandler { protected dateAdapter: VCLDateAdapter; constructor(dateAdapter: VCLDateAdapter); readonly abstract mode: string; init(calendar: VCLCalendar): void; handleValueChange(calendar: VCLCalendar, source: VCLCalendarView, date: VCLDate): void; abstract handleMonthValueChange(calendar: VCLCalendar, date: VCLDate): void; handleViewDateChange(calendar: VCLCalendar, source: VCLCalendarView, viewDate: VCLDate): void; handleLabelClick(calendar: VCLCalendar, source: VCLCalendarView): void; } export declare class DateSingleHandler extends DateHandler { constructor(dateAdapter: VCLDateAdapter); mode: string; handleMonthValueChange(calendar: VCLCalendar, date: VCLDate): void; } export declare class DateMultipleHandler extends DateHandler { constructor(dateAdapter: VCLDateAdapter); mode: string; handleMonthValueChange(calendar: VCLCalendar, date: VCLDate): void; } export declare class DateRangeHandler extends DateHandler { constructor(dateAdapter: VCLDateAdapter); mode: string; init(calendar: VCLCalendar): void; handleMonthValueChange(calendar: VCLCalendar, date: VCLDate): void; } export declare abstract class MonthHandler extends VCLCalendarHandler { protected dateAdapter: VCLDateAdapter; constructor(dateAdapter: VCLDateAdapter); readonly abstract mode: string; init(calendar: VCLCalendar): void; handleValueChange(calendar: VCLCalendar, source: VCLCalendarView, date: VCLDate): void; abstract handleYearValueChange(calendar: VCLCalendar, date: VCLDate): void; handleViewDateChange(calendar: VCLCalendar, source: VCLCalendarView, viewDate: VCLDate): void; handleLabelClick(calendar: VCLCalendar, source: VCLCalendarView): void; } export declare class MonthSingleHandler extends MonthHandler { constructor(dateAdapter: VCLDateAdapter); mode: string; handleYearValueChange(calendar: VCLCalendar, date: VCLDate): void; } export declare class MonthMultipleHandler extends MonthHandler { constructor(dateAdapter: VCLDateAdapter); mode: string; handleYearValueChange(calendar: VCLCalendar, date: VCLDate): void; } export declare class MonthRangeHandler extends MonthHandler { constructor(dateAdapter: VCLDateAdapter); mode: string; init(calendar: VCLCalendar): void; handleYearValueChange(calendar: VCLCalendar, date: VCLDate): void; }