import type { formatOptionParams, formatValue } from './NumberUtils';
type UseNumberFormatWithPartsOptions = Omit<formatOptionParams, 'currency_display' | 'currency_position' | 'omit_currency_sign' | 'clean_copy_value' | 'omit_rounding' | 'options'> & {
    currencyDisplay?: formatOptionParams['currency_display'];
    currencyPosition?: formatOptionParams['currency_position'] | 'auto';
    omitCurrencySign?: formatOptionParams['omit_currency_sign'];
    cleanCopyValue?: formatOptionParams['clean_copy_value'];
    omitRounding?: formatOptionParams['omit_rounding'];
    options?: formatOptionParams['options'];
    forceCurrencyAfterAmount?: boolean;
};
export type NumberFormatParts = {
    sign: string | null;
    signedNumber: string;
    number: string;
    currency: string | null;
    currencyPosition: 'before' | 'after' | null;
    spaceAfterCurrency: boolean;
    spaceBeforeCurrency: boolean;
    percent: string | null;
    percentSpacing: string;
};
declare function useNumberFormatWithParts(value: formatValue, options?: UseNumberFormatWithPartsOptions): any;
export default useNumberFormatWithParts;
