/** * @license * Copyright 2023 Google Laabidi Aymen * SPDX-License-Identifier: MIT */ import { ReactiveController, ReactiveControllerHost } from 'lit'; import { KeyboardController } from '../interfaces/index.js'; import { DatePickerHost } from '../interfaces/base-controller.interface.js'; import { DatePickerCalendarController } from './calendar.controller.js'; import { DatePickerSelectionController } from './selection.controller.js'; /** * Keyboard navigation controller for datepicker * Handles keyboard interactions and navigation within the calendar */ export declare class DatePickerKeyboardController implements KeyboardController, ReactiveController { private calendarController; private selectionController; readonly host: ReactiveControllerHost & DatePickerHost; private focusedDate; constructor(host: ReactiveControllerHost & DatePickerHost, calendarController: DatePickerCalendarController, selectionController: DatePickerSelectionController); hostConnected(): void; hostDisconnected(): void; /** * Handle keyboard events */ handleKeyDown(event: KeyboardEvent): void; /** * Navigate one day left */ navigateLeft(): void; /** * Navigate one day right */ navigateRight(): void; /** * Navigate one week up */ navigateUp(): void; /** * Navigate one week down */ navigateDown(): void; /** * Navigate to first day of current week */ navigateToFirstDayOfWeek(): void; /** * Navigate to last day of current week */ navigateToLastDayOfWeek(): void; /** * Navigate to first day of current month */ navigateToFirstDayOfMonth(): void; /** * Navigate to last day of current month */ navigateToLastDayOfMonth(): void; /** * Navigate to previous month */ private navigateToPreviousMonth; /** * Navigate to next month */ private navigateToNextMonth; /** * Navigate to previous year */ private navigateToPreviousYear; /** * Navigate to next year */ private navigateToNextYear; /** * Set focused date and update calendar if needed */ private setFocusedDate; /** * Select the currently focused date */ selectCurrentDate(): void; /** * Close the calendar */ closeCalendar(): void; /** * Get currently focused date */ getFocusedDate(): Date; /** * Handle errors that occur within the controller */ handleError(error: Error, context: string): void; } //# sourceMappingURL=keyboard.controller.d.ts.map