import { EventEmitter, OnInit, OnDestroy } from '@angular/core';
import { FormControl } from '@angular/forms';
import { CurrencyInputMetadata, CurrencyInputChangeEvent, CurrencyConfig } from './types';
import * as i0 from "@angular/core";
export declare class CurrencyInputComponent implements OnInit, OnDestroy {
    props: CurrencyInputMetadata;
    currencyChange: EventEmitter<CurrencyInputChangeEvent>;
    states: {
        ENABLED: "ENABLED";
        DISABLED: "DISABLED";
        WORKING: "WORKING";
        ERROR: "ERROR";
    };
    displayControl: FormControl<string>;
    currencyControl: FormControl<string>;
    private valueSubscription;
    private isFocused;
    ngOnInit(): void;
    ngOnDestroy(): void;
    getLabel(): string;
    getPlaceholder(): string;
    getHint(): string;
    private getDefaultPlaceholder;
    getCurrencyList(): CurrencyConfig[];
    getSelectedCurrency(): CurrencyConfig;
    getCurrencySymbol(): string;
    getSymbolPosition(): 'prefix' | 'suffix';
    getDecimalPlaces(): number;
    get hasError(): boolean;
    getErrorMessage(): string;
    onInput(event: CustomEvent): void;
    onFocus(): void;
    onBlur(): void;
    onCurrencyChange(event: CustomEvent): void;
    private parseValue;
    private formatValue;
    private emitChange;
    static ɵfac: i0.ɵɵFactoryDeclaration<CurrencyInputComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CurrencyInputComponent, "val-currency-input", never, { "props": { "alias": "props"; "required": false; }; }, { "currencyChange": "currencyChange"; }, never, never, true, never>;
}
