import { Ref } from 'vue'; /** * @internal */ interface CurrencyInputValue { number: number | null; formatted: string | null; } interface NumberRange { min?: number; max?: number; } declare enum CurrencyDisplay { symbol = "symbol", narrowSymbol = "narrowSymbol", code = "code", name = "name", hidden = "hidden" } declare enum ValueScaling { precision = "precision", thousands = "thousands", tenThousands = "tenThousands", millions = "millions", billions = "billions" } interface CurrencyInputOptions { accountingSign?: boolean; autoDecimalDigits?: boolean; currency: string; currencyDisplay?: CurrencyDisplay; hideCurrencySymbolOnFocus?: boolean; hideGroupingSeparatorOnFocus?: boolean; hideNegligibleDecimalDigitsOnFocus?: boolean; locale?: string; precision?: NumberRange | number; useGrouping?: boolean; valueRange?: NumberRange; valueScaling?: ValueScaling; } interface UseCurrencyInput { formattedValue: Ref; inputRef: Ref; numberValue: Ref; setOptions: (options: CurrencyInputOptions) => void; setValue: (number: number | null) => void; } declare function useCurrencyInput(options: CurrencyInputOptions, autoEmit?: boolean): UseCurrencyInput; export { CurrencyDisplay, CurrencyInputOptions, CurrencyInputValue, NumberRange, UseCurrencyInput, ValueScaling, useCurrencyInput };