import { DoCheck, EventEmitter, OnInit, TrackByFunction } from '@angular/core'; import { BooleanInput } from '@angular/cdk/coercion'; import { CalendarDate, DateValue } from '@internationalized/date'; import { RangeCalendarDirective } from './shared/range-calendar.directive'; import * as i0 from "@angular/core"; import * as i1 from "./shared/range-calendar.directive"; export interface RangeValue { start: T; end: T; } export interface PredefinedDateRange { label: string; dateRange: { start: DateValue; end: DateValue; }; } export { RangeCalendarDirective }; /** * Range Calendar is accessible as a multiselectable grid. Supports date range selection * with min/max constraints, unavailable dates, week numbers, and locale configuration. */ export declare class RangeCalendarComponent

implements OnInit, DoCheck { readonly localeFromContext: string; readonly _calendar: RangeCalendarDirective; /** * Whether to show the week numbers in days view. */ showWeekNumbers?: BooleanInput; /** * Whether to show two months instead of one. */ showTwoMonths?: BooleanInput; /** * A set of predefined date ranges the user can more conveniently select. */ predefinedRanges?: Record; /** * Emits when the currently selected date changes by user interactions. * If the "predefinedDateKey" is not necessary, you can use `valueChange` * output which allows for two-way binding (`[(value)]="..."`) */ change: EventEmitter<{ value: RangeValue; predefinedRangeKey?: P | undefined; }>; private selectedPredefinedRangeKey?; get visibleDuration(): import("@internationalized/date").DateDuration; constructor(localeFromContext: string, _calendar: RangeCalendarDirective); ngDoCheck(): void; ngOnInit(): void; readonly _trackByIndex: TrackByFunction; selectPredefinedRange(p: P): void; getTimezone(): string; _getPredefinedRanges(): { key: P; value: PredefinedDateRange; }[]; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "sp-range-calendar", never, { "showWeekNumbers": "showWeekNumbers"; "showTwoMonths": "showTwoMonths"; "predefinedRanges": "predefinedRanges"; }, { "change": "change"; }, never, never, true, [{ directive: typeof i1.RangeCalendarDirective; inputs: { "autoFocus": "autoFocus"; "showFixedWeeks": "showFixedWeeks"; "isDateUnavailable": "isDateUnavailable"; "allowUnavailableDatesWithinRange": "allowUnavailableDatesWithinRange"; "minValue": "minValue"; "maxValue": "maxValue"; "value": "value"; "focusedDate": "focusedDate"; "locale": "locale"; "disabled": "disabled"; "size": "size"; "readonly": "readonly"; }; outputs: { "blurred": "blurred"; "valueChange": "valueChange"; }; }]>; }