/** Autogenerated by public2business schematic. DO NOT CHANGE! */ import { ComponentType, Portal } from '@angular/cdk/portal'; import { AfterContentInit, AfterViewChecked, ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { SbbDateAdapter, SbbDateFormats } from '@sbb-esta/angular-core/datetime'; import { Subject } from 'rxjs'; import { SbbMonthView } from '../month-view/month-view.component'; export declare class SbbCalendarHeader { private _dateAdapter; calendar: SbbCalendar; constructor(_dateAdapter: SbbDateAdapter, calendar: any, changeDetectorRef: ChangeDetectorRef); /** The label for the current calendar view. */ get monthText(): string; /** The label for the current calendar view. */ get yearText(): string; /** Handles user clicks on the previous button. */ previousMonthClicked(): void; /** Handles user clicks on the next button. */ nextMonthClicked(): void; /** Whether the previous period button is enabled. */ previousMonthEnabled(): boolean; /** Whether the next period button is enabled. */ nextMonthEnabled(): boolean; /** Whether the two dates represent the same month. */ private _isSameMonthView; /** Handles user clicks on the previous button. */ previousYearClicked(): void; /** Handles user clicks on the next button. */ nextYearClicked(): void; /** Whether the previous period button is enabled. */ previousYearEnabled(): boolean; /** Whether the next period button is enabled. */ nextYearEnabled(): boolean; /** Whether the two dates represent the same month. */ private _isSameYearView; private _assignActiveDate; } /** * A calendar that is used as part of the datepicker. * @docs-private */ export declare class SbbCalendar implements AfterContentInit, AfterViewChecked, OnDestroy, OnChanges { private _dateAdapter; private _dateFormats; private _changeDetectorRef; /** An input indicating the type of the header component, if set. */ headerComponent: ComponentType; /** A portal containing the header component type for this calendar. */ calendarHeaderPortal: Portal; /** * Used for scheduling that focus should be moved to the active cell on the next tick. * We need to schedule it, rather than do it immediately, because we have to wait * for Angular to re-evaluate the view children. */ private _moveFocusOnNextTick; /** A date representing the period (month or year) to start the calendar in. */ get startAt(): D | null; set startAt(value: D | null); private _startAt; /** The currently selected date. */ get selected(): D | null; set selected(value: D | null); private _selected; /** The minimum selectable date. */ get minDate(): D | null; set minDate(value: D | null); private _minDate; /** The maximum selectable date. */ get maxDate(): D | null; set maxDate(value: D | null); private _maxDate; /** A function used to filter which dates are selectable. */ dateFilter: (date: D) => boolean; /** Emits when the currently selected date changes. */ readonly selectedChange: EventEmitter; /** Emits when any date is selected. */ readonly userSelection: EventEmitter; /** Reference to the current month view component. */ monthView: SbbMonthView; /** * The current active date. This determines which time period is shown and which date is * highlighted when using keyboard navigation. */ get activeDate(): D; set activeDate(value: D); private _clampedActiveDate; /** Emits whenever there is a state change that the header may need to respond to. */ stateChanges: Subject; constructor(_dateAdapter: SbbDateAdapter, _dateFormats: SbbDateFormats, _changeDetectorRef: ChangeDetectorRef); ngAfterContentInit(): void; ngAfterViewChecked(): void; ngOnDestroy(): void; ngOnChanges(changes: SimpleChanges): void; focusActiveCell(): void; /** Handles date selection in the month view. */ dateSelected(date: D | null): void; userSelected(): void; /** * @param obj The object to check. * @returns The given object if it is both a date instance and valid, otherwise null. */ private _getValidDateOrNull; /** Returns the component instance that corresponds to the current calendar view. */ private _getCurrentViewComponent; }