import * as _angular_core from '@angular/core'; import { TemplateRef, OnInit, OnDestroy } from '@angular/core'; declare class FormControlSuffixDirective { templateRef: TemplateRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵdir: _angular_core.ɵɵDirectiveDeclaration; } interface FktControlFormatter { viewToModelValue: (value: FormattedValue) => ModelValue; modelToViewValue?: (value: ModelValue) => FormattedValue; sanitizeViewValue?: (params: { currentValue: FormattedValue; previousValue: FormattedValue | null; previousCursorPosition: number; }) => { sanitizedValue: FormattedValue; cursorOffset?: number; }; } declare class FktControlFormatterDirective implements OnInit, OnDestroy { fktControlFormatter: _angular_core.InputSignal | FktControlFormatter | undefined>; modelValue: _angular_core.ModelSignal; private elementValue; formattedValue: _angular_core.Signal; private elementRef; private element; private cursorPosition; private previousValue; protected watchModelValue: _angular_core.EffectRef; private onInput; private updateViewValueFromModel; private sanitizeViewValue; private getSanitized; private setElementValue; private getElementValue; private onBeforeInput; ngOnInit(): void; ngOnDestroy(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration, never>; static ɵdir: _angular_core.ɵɵDirectiveDeclaration, "input[fktControlFormatter],textarea[fktControlFormatter]", never, { "fktControlFormatter": { "alias": "fktControlFormatter"; "required": false; "isSignal": true; }; "modelValue": { "alias": "modelValue"; "required": true; "isSignal": true; }; }, { "modelValue": "modelValueChange"; }, never, never, true, never>; } declare const currencyFormatter: FktControlFormatter; declare const dateFormatter: FktControlFormatter; declare const hourFormatter: FktControlFormatter; declare const percentFormatter: FktControlFormatter; interface Options { min?: number; max?: number; maxDecimals?: number; } declare const numberFormatter: (options?: Options) => FktControlFormatter; export { FktControlFormatterDirective, FormControlSuffixDirective, currencyFormatter, dateFormatter, hourFormatter, numberFormatter, percentFormatter }; export type { FktControlFormatter };