import { ElementRef, InputSignal, OnInit, OutputEmitterRef, WritableSignal } from "@angular/core"; import { AbstractControl, ControlContainer, ControlValueAccessor } from "@angular/forms"; import * as i0 from "@angular/core"; export declare abstract class CustomInput implements ControlValueAccessor, OnInit { /** Exibe o spinner de carregamento */ loading: WritableSignal; /** Se ativo desabilita o Input */ disabled: WritableSignal; /** Indica se o formulário foi enviado */ submitted: WritableSignal; /** Titulo do Input */ label: InputSignal; /** Torna o input obrigatorio */ required: WritableSignal; abstract writeValue(obj: T): void | Promise; abstract setFocus(event: MouseEvent | null): void; value: WritableSignal; /** @virtual */ SetValue(obj: T): void; formControlName: string; controlContainer: ControlContainer; control: AbstractControl; protected elementRef: ElementRef; constructor(); /** @virtual */ ngOnInit(): void | Promise; protected runValidation(): void; protected invalid: boolean; /** Acionado quando um elemento perde o foco. */ blur: OutputEmitterRef; /** Emitido quando o valor é alterado. */ change: OutputEmitterRef; propagateChange(obj: T): void; onChange: (value: T) => void; onTouch: (value: T) => void; registerOnChange(fn: (value: T) => void): void; registerOnTouched(fn: (value: T) => void): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "ng-component", never, { "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "submitted": { "alias": "submitted"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "formControlName": { "alias": "formControlName"; "required": false; }; "control": { "alias": "formControl"; "required": false; }; }, { "loading": "loadingChange"; "disabled": "disabledChange"; "submitted": "submittedChange"; "required": "requiredChange"; "blur": "blur"; "change": "change"; }, never, never, false, never>; }