import { ElementRef, EventEmitter, OnInit, OutputEmitterRef, WritableSignal } from "@angular/core"; import { AbstractControl, ControlContainer, ControlValueAccessor } from "@angular/forms"; import * as i0 from "@angular/core"; export declare class InputProviderFactory { static GetProvider(component: any): any[]; } export declare abstract class CustomInput implements ControlValueAccessor, OnInit { id: string; /** Exibe o spinner de carregamento */ loading: boolean; /** Se ativo desabilita o Input */ disabled: boolean; /** Indica se o formulário foi enviado */ submitted: boolean; /** Titulo do Input */ label: string; /** Torna o input obrigatório (Utiliza-se com ngModel) */ required: boolean; writeValue(obj: T): void; _model: T | null | undefined; get model(): T | any; set model(value: T | any); formControlName: string; controlContainer: ControlContainer; control: AbstractControl; protected elementRef: ElementRef; ngOnInit(): void; private RunValidation; invalid: boolean; blurEmitter: EventEmitter; changeEmitter: EventEmitter; propagateChange(obj: T): void; _onChange: Function; _onTouch: Function; registerOnChange(fn: (value: any) => void): void; registerOnTouched(fn: (value: any) => void): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "ng-component", never, { "id": { "alias": "id"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "submitted": { "alias": "submitted"; "required": false; }; "label": { "alias": "label"; "required": false; }; "required": { "alias": "required"; "required": false; }; "formControlName": { "alias": "formControlName"; "required": false; }; "control": { "alias": "formControl"; "required": false; }; }, { "blurEmitter": "blur"; "changeEmitter": "change"; }, never, never, false, never>; } export declare abstract class CustomSignalInput implements ControlValueAccessor, OnInit { /** Exibe o spinner de carregamento */ loading: boolean; /** Se ativo desabilita o Input */ disabled: boolean; /** Indica se o formulário foi enviado */ submitted: boolean; /** Titulo do Input */ label: string; /** Torna o input obrigatorio */ required: WritableSignal; writeValue(obj: T): void; protected _model: T | null; get model(): T | any; set model(value: T | any); formControlName: string; controlContainer: ControlContainer; control: AbstractControl; protected elementRef: ElementRef; constructor(); ngOnInit(): void; private RunValidation; invalid: boolean; /** Acionado quando um elemento perde o foco. */ blur: OutputEmitterRef; /** Emitido quando o valor é alterado. */ change: OutputEmitterRef; propagateChange(obj: T): void; onChange: (value: any) => void; onTouch: (value: any) => void; registerOnChange(fn: (value: any) => void): void; registerOnTouched(fn: (value: any) => void): void; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "ng-component", never, { "loading": { "alias": "loading"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "submitted": { "alias": "submitted"; "required": false; }; "label": { "alias": "label"; "required": false; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "formControlName": { "alias": "formControlName"; "required": false; }; "control": { "alias": "formControl"; "required": false; }; }, { "required": "requiredChange"; "blur": "blur"; "change": "change"; }, never, never, false, never>; }