import * as i0 from '@angular/core'; import { InjectionToken, AfterViewInit, OnDestroy, ElementRef, Renderer2, DoCheck } from '@angular/core'; import { NgModel, NgControl } from '@angular/forms'; declare const AUTO_SIZE_INPUT_OPTIONS: InjectionToken; interface AutoSizeInputOptions { extraWidth: number; includeBorders: boolean; includePadding: boolean; includePlaceholder: boolean; maxWidth: number; minWidth: number; setParentWidth: boolean; usePlaceHolderWhenEmpty: boolean; } declare const DEFAULT_AUTO_SIZE_INPUT_OPTIONS: AutoSizeInputOptions; declare class AutoSizeInputDirective implements AfterViewInit, OnDestroy { private element; private renderer; private ngModel?; private ngControl?; readonly options?: AutoSizeInputOptions | undefined; extraWidth: number; includeBorders: boolean; includePadding: boolean; includePlaceholder: boolean; maxWidth: number; minWidth: number; setParentWidth: boolean; usePlaceHolderWhenEmpty: boolean; useValueProperty: boolean; private destroyed$; constructor(element: ElementRef, renderer: Renderer2, ngModel?: NgModel | undefined, ngControl?: NgControl | undefined, options?: AutoSizeInputOptions | undefined); private get borderWidth(); private get paddingWidth(); private get style(); private get placeholder(); private get value(); private get inputWidthIsLessThanMinimum(); private get inputWidthIsGreaterThanMaximum(); private get inputTextWidth(); private get usePlaceholder(); private get placeHolderWidthGreaterThanInputWidth(); private get inputIsEmpty(); private get hasPlaceholder(); private get input(); private get nativeElement(); private get textWidth(); ngAfterViewInit(): void; ngOnDestroy(): void; onInput(): void; private setWidth; private getTextWidth; private updateWidth; private updateWidthWhenControlChanges; private updateWidthWhenModelChanges; private sumStylePropertyWidths; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class CdkInputAutosizeDirective implements DoCheck, AfterViewInit { private _elementRef; cdkInputAutosizeMinWidth?: number; cdkInputAutosizeMaxWidth?: number; cdkInputAutosizeUsePlaceHolderOnlyWhenEmpty: boolean; protected _initialWidth: string; constructor(_elementRef: ElementRef); private get _inputElement(); ngAfterViewInit(): void; ngDoCheck(): void; protected _createInputWithValue(value: string): HTMLTextAreaElement; protected _getWidths(): { inputWidth: number; placeholderWidth: number; }; protected _resizeToFitContent(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } export { AUTO_SIZE_INPUT_OPTIONS, AutoSizeInputDirective, CdkInputAutosizeDirective, DEFAULT_AUTO_SIZE_INPUT_OPTIONS }; export type { AutoSizeInputOptions };