import { Platform } from '@angular/cdk/platform'; import { AfterViewInit, DoCheck, ElementRef, OnChanges, OnDestroy } from '@angular/core'; import { NgControl } from '@angular/forms'; import { Subject } from 'rxjs'; import { RealsoftFormFieldControl } from '../form-field/directives/form-field-control'; import { RealsoftFormField } from '../form-field/form-field'; import { ErrorStateMatcher } from '../select/error-state-matcher'; import * as i0 from "@angular/core"; export declare const REALSOFT_INPUT_INVALID_TYPES: string[]; export declare class RealsoftInput implements RealsoftFormFieldControl, AfterViewInit, DoCheck, OnChanges, OnDestroy { protected elementRef: ElementRef; ngControl: NgControl; protected _formField?: RealsoftFormField; private _ngZone; protected uniqueInputID: string; private _parentForm; private _parentFormGroup; private _defaultErrorStateMatcher; private _accessor; private _formFieldDescribedById; private _inputValueAccessor; private _signalBasedValueAccessor?; protected _disabled: boolean; protected _id: string; protected _required: boolean | undefined; private _readonly; protected _platform: Platform; private _autofillMonitor; private _renderer; private _cleanupWebkitWheel; private _cleanupIosKeyup; protected _type: string; readonly _isServer: boolean; readonly _isNativeSelect: boolean; readonly _isTextarea: boolean; readonly _isInFormField: boolean; protected _previousNativeValue: any; private _previousPlaceholder; private _errorStateTracker; focused: boolean; readonly stateChanges: Subject; controlType: string; autofilled: boolean; get errorState(): boolean; set errorState(value: boolean); protected _neverEmptyInputTypes: string[]; constructor(); ngAfterViewInit(): void; ngOnChanges(): void; ngDoCheck(): void; get disabled(): boolean; set disabled(value: boolean); get id(): string; set id(value: string); placeholder: string; name: string; get required(): boolean; set required(value: boolean); get errorStateMatcher(): ErrorStateMatcher; set errorStateMatcher(value: ErrorStateMatcher); userAriaDescribedBy: string; get type(): string; set type(value: string); get value(): string; set value(value: any); get readonly(): boolean; set readonly(value: boolean); focus(options?: FocusOptions): void; updateErrorState(): void; /** * When an input is focused, browsers often auto select its text. Since the input is disabled, the selection doesn't make any sense because the user cannot modify the content. * This function ensures that when the disabled input gets focused, no text is highlighted * For number inputs => number inputs do not support setSelectionRange, hence this type is temporarily * * @param currenltyFocused * @returns */ _focus(currenltyFocused: boolean): void; _onInput(): void; protected _inputValueChanged(): void; private _placeholderValueChanged; isInlineSelect(): boolean; protected _getPlaceholder(): string | null; protected _validateType(): void; private _webkitBlinkWheelListener; private _ensureMouseWheelDefaultBehavior; protected _isNeverEmpty(): boolean; protected badInput(): boolean; protected _isReadonly(): string | null; onContainerClick(): void; get shouldLabelFloat(): boolean; get empty(): boolean; private _iOSKeyupListener; setDescribedByIds(ids: string[]): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; static ngAcceptInputType_disabled: unknown; static ngAcceptInputType_required: unknown; static ngAcceptInputType_readonly: unknown; }