import * as _angular_core from '@angular/core'; import { TemplateRef } from '@angular/core'; import { FormGroup, FormControl } from '@angular/forms'; import { MatDateRangePicker, MatDatepickerInputEvent } from '@angular/material/datepicker'; import { MatFormFieldAppearance, FloatLabelType } from '@angular/material/form-field'; import { SdLabelDefDirective } from '@sdcorejs/angular/forms/directives'; import { SdViewed, SdViewedInput } from '@sdcorejs/angular/forms/models'; import { Size } from '@sdcorejs/utils/models'; interface SdDateRangeValue { from?: string | null; to?: string | null; } declare class SdDateRange { #private; id1: string; id2: string; picker: _angular_core.Signal | undefined>; sdLabelDef: _angular_core.Signal; private cdRef; private formConfig; autoIdInput: _angular_core.InputSignal; autoId: _angular_core.Signal; fromAutoId: _angular_core.Signal; toAutoId: _angular_core.Signal; readonly dataDisabled: _angular_core.Signal<"true" | "false">; readonly dataInvalid: _angular_core.Signal<"true" | "false">; readonly dataEmpty: _angular_core.Signal<"true" | "false">; readonly dataValue: _angular_core.Signal; readonly dataRequired: _angular_core.Signal<"true" | "false">; readonly dataErrorMessage: _angular_core.Signal; name: _angular_core.InputSignal; size: _angular_core.InputSignal; form: _angular_core.InputSignalWithTransform | undefined, any>; label: _angular_core.InputSignal; helperText: _angular_core.InputSignal; hideInlineError: _angular_core.InputSignalWithTransform; /** * Tổng hợp error message để hiển thị trong tooltip khi hideInlineError = true. */ readonly errorMessage: _angular_core.Signal; required: _angular_core.InputSignalWithTransform; disabled: _angular_core.InputSignalWithTransform; /** Display mode: `false` edit · `true` static view · `'inline'` view + click-to-edit (range picker). */ viewed: _angular_core.InputSignalWithTransform; /** In `viewed='inline'`, show a hover clear-× on the text face. Set `false` when the host owns removal (chips). */ clearable: _angular_core.InputSignalWithTransform; /** `true` when `viewed === 'inline'`. */ readonly isInline: _angular_core.Signal; /** `true` when `viewed === true` (static view, no editor). */ readonly isViewed: _angular_core.Signal; /** Open the range picker from the inline text face. No-op unless `viewed='inline'`. */ enterInlineEdit: () => void; /** Optional projected by consumer to override the viewed text. */ sdValueTemplate: _angular_core.Signal | undefined>; /** * Formatted "dd/MM/yyyy → dd/MM/yyyy" string for the viewed-mode display. * why: viewed mode chỉ hiển thị text — cần format gọn cho cả 2 đầu range, * Returns empty when both ends are blank, "from →" when only from is set, and so on. */ formatted: _angular_core.Signal; /** Open the range picker panel programmatically (for query-bar chip auto-open). */ open: () => void; appearanceInput: _angular_core.InputSignal; appearance: _angular_core.Signal; floatLabel: _angular_core.InputSignal; minInput: _angular_core.InputSignal; resolvedMin: _angular_core.Signal; maxInput: _angular_core.InputSignal; resolvedMax: _angular_core.Signal; valueModel: _angular_core.ModelSignal; sdChange: _angular_core.OutputEmitterRef; isMobileOrTablet: boolean; formControl: FormControl; control1: FormControl; control2: FormControl; constructor(); onStartChange: (event: MatDatepickerInputEvent) => void; onEndChange: (event: MatDatepickerInputEvent) => void; clear: () => void; onEnter: () => void; onFocus: () => void; onBlur: () => void; onClosePicker: () => void; onOpenPicker: (event: MouseEvent) => void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } export { SdDateRange }; export type { SdDateRangeValue };