import type { Dinero, ISO4217Code } from "../primitives/money.js"; export interface UseMoneyReturn { toDinero: ( amount: number | null | undefined, currencyCode?: ISO4217Code | string, unit?: "major" | "minor", ) => Dinero; format: ( amount: number | null | undefined, currencyCode?: ISO4217Code | string, unit?: "major" | "minor", localeOverride?: string, ) => string; add: ( a: number, b: number, currencyCode?: ISO4217Code | string, unit?: "major" | "minor", ) => Dinero; subtract: ( a: number, b: number, currencyCode?: ISO4217Code | string, unit?: "major" | "minor", ) => Dinero; convert: ( amount: number, fromCode: string, unit?: "major" | "minor", ) => Dinero; formatConverted: ( amount: number, fromCode: string, unit?: "major" | "minor", ) => string; toPayload: ( amount: number, currencyCode?: string, target?: "stripe" | "paypal" | "adyen" | "square", unit?: "major" | "minor", ) => | { amount: number; currency: string; } | { value: string; currency_code: string; } | { value: number; currency: string; } | { amount: bigint; currency: string; }; multiply: ( amount: number, factor: number, currencyCode?: ISO4217Code | string, unit?: "major" | "minor", ) => Dinero; } export declare function useMoney(): UseMoneyReturn;