import { AfterViewInit, ElementRef, OnChanges, OnDestroy, QueryList, SimpleChanges } from '@angular/core'; import { FieldControl, FieldComponent, IconRegistry } from '@danske/sapphire-angular'; import { DateValue } from '@internationalized/date'; import { FocusMonitor } from '@angular/cdk/a11y'; import { BooleanInput } from '@angular/cdk/coercion'; import { ControlValueAccessor, ValidatorFn } from '@angular/forms'; import { DateFieldInputComponent } from './date-field-input.component'; import { PredefinedDateRange, RangeValue } from '../../calendar/public_api'; import { TranslateService } from '../../common/translate.service'; import * as i0 from "@angular/core"; import * as i1 from "@danske/sapphire-angular"; /** * Sapphire date input field. */ export declare class DateRangeFieldComponent

implements FieldControl, ControlValueAccessor, AfterViewInit, OnChanges, OnDestroy { private elementRef; private focusMonitor; private translateService; readonly localeFromContext: string; field?: FieldComponent | undefined; constructor(elementRef: ElementRef, focusMonitor: FocusMonitor, translateService: TranslateService, iconRegistry: IconRegistry, localeFromContext: string, field?: FieldComponent | undefined); /** * A unique id for the host DOM element. * If none is supplied, it will be auto-generated. */ id: string; disabled: BooleanInput; readonly: BooleanInput; required: BooleanInput; /** * Whether to show the week numbers in the calendar. */ showWeekNumbersInCalendar: BooleanInput; /** * Whether to show two months in the calendar. */ showTwoMonthsInCalendar: BooleanInput; /** * Whether range is allowed to span unavailable dates. */ allowUnavailableDatesWithinRange: BooleanInput; value: RangeValue | null; /** * A set of predefined date ranges the user can more conveniently select. */ predefinedRanges?: Record; /** * The minimum allowed date that a user may select. */ minValue?: DateValue; /** * The maximum allowed date that a user may select. */ maxValue?: DateValue; /** * Callback that is called for each date of the calendar. If it * returns true, then the date is unavailable. */ isDateUnavailable?: (date: DateValue) => boolean; noClearButton: BooleanInput; noCalendarButton: BooleanInput; locale: string; /** * Whether to always show leading zeros in the month, and day fields. * By default, this is determined by the user's locale. */ shouldForceLeadingZeros?: BooleanInput; calendarButtonId: string; onChange: ((date: RangeValue | null) => void) | undefined; private onTouched; private popoverTrigger?; _dateFieldInputs: QueryList; startDateAriaLabel: () => string; endDateAriaLabel: () => string; onCalendarSelectDate(): void; isPartiallyFilled(): boolean; displayValue: RangeValue | null; setValue({ value, emitChange, }: { value: Partial> | null; emitChange: boolean; }): void; /** * Implements validation to provide in NG_VALIDATORS */ validate: ValidatorFn; clear(): void; /** * Implementing ControlValueAccessor interface below */ writeValue(value: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; /** * Implementing FieldControl interface below */ focus(): void; getId(): string | undefined; isDisabled(): boolean; ngAfterViewInit(): void; ngOnChanges(changes: SimpleChanges): void; /** * Implementing OnDestroy interface below */ ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration, [null, null, null, null, null, { optional: true; }]>; static ɵcmp: i0.ɵɵComponentDeclaration, "sp-date-range-field", never, { "id": "id"; "disabled": "disabled"; "readonly": "readonly"; "required": "required"; "showWeekNumbersInCalendar": "showWeekNumbersInCalendar"; "showTwoMonthsInCalendar": "showTwoMonthsInCalendar"; "allowUnavailableDatesWithinRange": "allowUnavailableDatesWithinRange"; "value": "value"; "predefinedRanges": "predefinedRanges"; "minValue": "minValue"; "maxValue": "maxValue"; "isDateUnavailable": "isDateUnavailable"; "noClearButton": "noClearButton"; "noCalendarButton": "noCalendarButton"; "locale": "locale"; "shouldForceLeadingZeros": "shouldForceLeadingZeros"; }, {}, never, never, false, [{ directive: typeof i1.UseComponentStylesOnHost; inputs: {}; outputs: {}; }]>; }