import { AbstractControl, NgModel } from '@angular/forms';
import { OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import * as i0 from "@angular/core";
type ErrorMessageType = {
id: string;
message: string;
};
/**
* @description Componente que exibe as mensagens de erro de validação associadas a um controle de formulário.
* Observa as alterações de estado do controle e renderiza as mensagens mapeadas em `errorMessages`.
* Compativel com `AbstractControl` do Reactive Forms e `NgModel` do Template-Driven Forms.
*
* @example
* ```html
*
* ```
*
* @category Feedback
*/
export declare class ControlErrorsComponent implements OnDestroy, OnChanges {
static readonly nextIdSeed = 0;
private static readonly RANDOM_ID_END_INDEX;
private static readonly BASE_36;
private static _nextId;
static getNextId(): number;
/**
* @description Identificador único do componente. Gerado automaticamente se não informado.
* Usado para associação acessível com o campo correspondente.
*/
id: string;
/**
* @description Controle do formulário cujos erros serão exibidos.
* Aceita `AbstractControl` (Reactive Forms) ou `NgModel` (Template-Driven Forms). Campo obrigatório.
*/
control: AbstractControl | NgModel;
/**
* @description Mapa de chaves de erro para mensagens de texto exibidas ao usuário.
* Cada chave corresponde a um erro que pode estar presente em `control.errors`.
*
* @example
* ```ts
* { required: 'Campo obrigatório', minlength: 'Mínimo 8 caracteres' }
* ```
*/
errorMessages: any;
/**
* @description Referência ao formulário pai. Utilizado em cenários de validação customizada
* que dependem do estado geral do formulário.
*/
form: any;
errorMessagesList: ErrorMessageType[];
private readonly onDestroy$;
ngOnChanges(changes: SimpleChanges): void;
setErrorMessagesList(): void;
ngOnDestroy(): void;
static ɵfac: i0.ɵɵFactoryDeclaration;
static ɵcmp: i0.ɵɵComponentDeclaration;
}
export {};