import { ControlValueAccessor, FormGroup } from '@angular/forms'; import * as i0 from "@angular/core"; /** Possible input style variants */ export type InputVariantProps = 'primary' | 'secondary' | 'tertiary' | 'accent' | 'info' | 'success' | 'warning' | 'error' | null | undefined; /** Possible input size variants */ export type InputSizeProps = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | null | undefined; /** Configuration object for input styling */ export type InputProps = { variant?: InputVariantProps; size?: InputSizeProps; }; /** Native HTML input types supported by the component */ type HTMLNativeInputType = 'text' | 'email' | 'number' | 'password' | 'file'; /** * A customizable input component with validation, debouncing, and styling variants * * @remarks * Implements ControlValueAccessor for seamless integration with Angular forms. * Supports both template-driven and reactive forms, with automatic validation styling. * * @example * ```html * * * ``` * * @example * ```html * * * ``` */ export declare class InputComponent implements ControlValueAccessor { /** * Input style variant * @defaultValue 'secondary' */ variant: import("@angular/core").InputSignal; /** * Input size variant * @defaultValue 'md' */ size: import("@angular/core").InputSignal; /** * Label text displayed above the input */ label: import("@angular/core").InputSignal; /** * Whether to show optional indicator * @defaultValue false */ showOptional: import("@angular/core").InputSignal; /** * Optional indicator text (translation key or literal) * @defaultValue 'sdk.formFields.optional' */ optionalText: import("@angular/core").InputSignal; /** * HTML input type * @defaultValue 'text' */ type: import("@angular/core").InputSignal; /** * HTML name attribute for the input */ name: import("@angular/core").InputSignal; /** * Input placeholder text */ placeholder: import("@angular/core").InputSignal; /** * Whether the input is read-only * @defaultValue false */ readonly: import("@angular/core").InputSignal; focus: import("@angular/core").InputSignal; /** * Whether to restrict input to numeric characters only * @defaultValue false */ onlyNumbers: import("@angular/core").InputSignal; /** * Whether to use ghost (transparent) styling * @defaultValue false */ ghost: import("@angular/core").InputSignal; /** * Two-way bindable input value */ value: import("@angular/core").ModelSignal; /** * Parent form group for reactive forms */ parentForm: import("@angular/core").InputSignal | null>; /** * Form control name for reactive forms */ formControlName: import("@angular/core").InputSignal; private onControlChange; private onControlTouch; /** * Whether the input is disabled * @defaultValue false */ disabled: import("@angular/core").ModelSignal; /** * Stop event propagation for activation events * @defaultValue false */ stopPropagation: import("@angular/core").InputSignal; /** * Event emitted on Enter keydown */ keyDownEnter: import("@angular/core").OutputEmitterRef; /** * Event emitted on activation (Enter) */ triggered: import("@angular/core").OutputEmitterRef; /** * Event emitted on click */ clicked: import("@angular/core").OutputEmitterRef; /** * Event emitted when input loses focus */ blurred: import("@angular/core").OutputEmitterRef; /** * Event emitted with debounced value changes */ valueDebounced: import("@angular/core").OutputEmitterRef; /** * Debounce time in milliseconds for value changes * @defaultValue 500 */ debounceTime: import("@angular/core").InputSignal; private blurTrigger; private debounceAction$; private debounceTimeEffect; private value$; constructor(); /** * @internal * Computed base input classes */ componentClass: import("@angular/core").Signal; /** * @internal * Computed error state classes */ errorClass: import("@angular/core").Signal; /** * @internal * Computed success state classes */ successClass: import("@angular/core").Signal; writeValue(obj: any): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; setDisabledState(isDisabled: boolean): void; /** * @internal * Handles input value changes */ handleChange(): void; /** * @internal * Handles click activation */ handleClick(event: MouseEvent): void; /** * @internal * Handles Enter key press */ handleEnter(event: Event): void; /** * @internal * Handles blur event */ handleBlur(): void; /** @internal */ private formControl; /** @internal */ private formControl$; /** @internal */ private statusChanges$; /** @internal */ private stateChanges$; /** @internal */ private statusSignal; /** @internal */ private stateSignal; /** * @internal * Reactive validation class computation */ validationClass: import("@angular/core").Signal; /** * @internal * Sets up debounced value changes */ private setupDebounce; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};