import { OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { InputMetadata } from '../../types';
import * as i0 from "@angular/core";
export declare class TextInputComponent implements OnInit, OnChanges {
private presets;
/**
* Preset name to apply. Presets define reusable input configurations
* (size, fill, labelPosition, etc.) that can be registered at app level.
*
* @example
*
*/
preset?: string;
/**
* Input configuration object. Values here override preset values.
* @type {InputMetadata}
* @property control - The Angular FormControl for the input.
* @property placeholder - The placeholder text.
* @property inputType - Native HTML input type ('text' | 'email' | 'number' | 'tel' | 'password' | 'time' | ...).
* @property label, name, hint, type, validators, etc. - See InputMetadata for all options.
*/
props: Partial;
/**
* Resolved props after merging preset + explicit props.
* Preset values are overridden by explicit props.
*/
resolvedProps: InputMetadata;
states: {
ENABLED: "ENABLED";
DISABLED: "DISABLED";
WORKING: "WORKING";
ERROR: "ERROR";
};
/** Ids únicos por instancia para el wiring de accesibilidad label↔input↔error. */
private readonly uid;
readonly inputId: string;
/**
* Id del label visible. Si `val-form` orquesta el campo, pasa el id del
* `` externo vía `props.labelId`; si no, se usa el id interno.
*/
get labelId(): string;
/**
* Id del contenedor de error. Si `val-form` orquesta el campo, pasa el id del
* `` externo vía `props.errorId`; si no, se usa el id interno.
*/
get errorId(): string;
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
/**
* Native HTML input type, defaulting to 'text'. Drives both the `[type]` of the
* `` and the branch between `` and ``.
*/
get resolvedType(): NonNullable;
/** Para `aria-invalid` / `aria-describedby`: error visible solo si tocado. */
get isInvalid(): boolean;
/**
* Merge preset configuration with explicit props.
* Explicit props take precedence over preset values.
*/
private resolveProps;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}