import type { IsoPrice } from '../../domain.objects/IsoPrice'; import type { IsoPriceShape } from '../../domain.objects/IsoPriceShape'; import type { IsoPriceWords } from '../../domain.objects/IsoPriceWords'; /** * .what = sums multiple prices * .why = enables price aggregation with mixed precision support * * supports two call signatures: * - spread: `sumPrices('USD 10.00', 'USD 20.00')` * - array: `sumPrices(['USD 10.00', 'USD 20.00'])` * - with options: `sumPrices(['USD 10.00'], { format: 'shape' })` * * @throws BadRequestError if currencies do not match * * @example * sumPrices('USD 10.00', 'USD 20.00') * // => 'USD 30.00' * * @example * sumPrices(['USD 10.00', 'USD 20.00'], { format: 'shape' }) * // => { amount: 3000n, currency: 'USD' } */ export declare function sumPrices(...args: (IsoPrice | string)[]): IsoPriceWords; export declare function sumPrices(prices: (IsoPrice | string)[], options?: { format?: 'words'; }): IsoPriceWords; export declare function sumPrices(prices: (IsoPrice | string)[], options: { format: 'shape'; }): IsoPriceShape; /** * .what = alias for sumPrices * .why = provides semantic name for binary addition */ export declare const addPrices: typeof sumPrices; /** * .what = alias for sumPrices * .why = provides price-prefixed variant */ export declare const priceSum: typeof sumPrices; /** * .what = alias for sumPrices * .why = provides price-prefixed variant */ export declare const priceAdd: typeof sumPrices;