export declare enum Currencies { USD = "USD", GBP = "GBP", } export declare enum PriceTypes { TOTAL = "total", SUBTOTAL = "subtotal", TAXES = "taxes", FEES = "fees", } export interface Cost { currency?: Currencies; dollars: number; cents: number; priceType?: PriceTypes; } export declare class Cash implements Cost { readonly currency: Currencies; readonly dollars: number; readonly cents: number; constructor(currency?: Currencies, dollars?: number, cents?: number); readonly displayValue: string; } export declare class Money { readonly USD: Cash; readonly GBP: Cash; private _currencies; set(cost: Cost): void; private _getCurrency(currency); } export declare class Price { readonly total: Money; readonly subtotal: Money; readonly taxes: Money; readonly fees: Money; update(...prices: Cost[]): void; }