import { LitElement } from 'lit'; import '../Icon/Icon'; declare global { interface HTMLElementTagNameMap { 'ctt-zip-code-input': CttZipCodeInput; } } declare const CttZipCodeInput_base: (new (...args: any[]) => import("../../utils/form-associated-mixin").FormAssociatedBase) & typeof LitElement; /** * CTT ZipCodeInput Component * * A component for capturing postal codes with country-specific formatting and validation. * Supports Portugal (pt), Spain (es), and United Kingdom (en). * * @element ctt-zip-code-input */ export declare class CttZipCodeInput extends CttZipCodeInput_base { static styles: import("lit").CSSResult; /** * The label text to display above the input */ label: string; /** * The postal code value */ zipCode: string; /** * Supporting hint text */ hint: string; /** * The city/locality name */ locality: string; /** * Country code for postal code format (pt, es, en) */ country: 'pt' | 'es' | 'en'; /** * Optional placeholder for the zip code input. * If not set, uses the country-specific default. */ zipPlaceholder: string; /** * Optional placeholder for the locality input. * If not set, uses the country-specific default. */ localityPlaceholder: string; /** * Whether both inputs are disabled */ disabled: boolean; /** * Whether only the locality input is disabled */ disableLocality: boolean; /** * Whether only the locality field displays an error state. * When true, only the locality input gets the error border/aria-invalid. * Also enables the error message if `error-text` is provided. * Use `error` (global) when both fields should show an error. */ localityError: boolean; /** * Whether the input is required */ required: boolean; /** * Size variant of the input */ size: 's' | 'm' | 'l'; /** * The id attribute for the component */ id: string; private _zipCodeFocused; private _localityFocused; constructor(); private get componentId(); private get zipCodeId(); private get localityId(); private get labelId(); private get errorId(); private get hasError(); private get hasZipCodeError(); private get hasLocalityError(); private get isDisabled(); private get countryFormat(); private formatZipCode; private validateZipCode; private onZipCodeInput; private onLocalityInput; private onZipCodeFocus; private onZipCodeBlur; private onLocalityFocus; private onLocalityBlur; private _emitChangeEvent; private _buildStandardDetail; protected _isValid(): boolean; protected _getValidationMessage(): string; protected _getNativeInput(): HTMLInputElement | undefined; private get _activeZipPlaceholder(); private get _activeLocalityPlaceholder(); render(): import("lit-html").TemplateResult<1>; } export {};