import { ItemRO } from './readonlyInterfaces'; export declare const itemsReduce: (id: string, init: U) => (items: readonly T[], reducer: (acc: U, item: T) => U) => U; export declare const addPrices: (...prices: number[]) => number; export declare const minusPrice: (a: number, b: number) => number; export declare const itemPrice: ({ price, qty }: T) => number; export declare const enrichItem: (item: T) => T & { total: number; }; export declare const itemDiscount: ({ total, ...item }: T) => number; export declare const divideTotal: (item: T) => T[]; export declare const itemsGroupReduce: (init: (item: T) => U) => (items: readonly T[], reducer: (acc: U, item: T) => U) => U[]; export declare const takeItem: (cheapest: boolean) => (from: readonly T[], item: U) => (U & T)[]; export declare const takeItems: (cheapest: boolean) => (from: readonly T[], items: readonly U[]) => (U & T)[]; export declare const spreadAdjustment: (amount: number, items: readonly T[]) => { amount: number; items: readonly T[]; next: () => readonly T[]; }; export declare const minusItem: (item: U) => (from: readonly T[]) => T[];