import { DatatypeModule } from "../datatype"; import { ChacaUtils } from "../../core/utils"; declare type AmountProps = { min?: number; max?: number; symbol?: string; precision?: number; }; declare type PinProps = { length?: number; }; export declare class FinanceModule { private readonly utils; private readonly datatypeModule; constructor(utils: ChacaUtils, datatypeModule: DatatypeModule); readonly constants: { accountTypes: string[]; ibans: import("./constants/iban").Iban; moneyInfo: { CUP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; USD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CAD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; EUR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; AED: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; AFN: { symbol: string; /** * Returns a suscription plan type * * @example * modules.finance.subscriptionPlan() // 'Free' * * @returns string */ name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ALL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; AMD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ARS: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; AUD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; AZN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BAM: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BDT: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BGN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; /** * Returns a Ethereum address. * * @example * modules.finance.ethereumAddress() // '0xf03dfeecbafc5147241cc4c4ca20b3c9dfd04c4a' * * @returns string */ }; BHD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BIF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BND: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BOB: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BRL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BWP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BYN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; BZD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CDF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CHF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CLP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CNY: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; COP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CRC: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CVE: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; CZK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; DJF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; DKK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; DOP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; DZD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; EEK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; EGP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ERN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ETB: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; GBP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; GEL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; GHS: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; GNF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; GTQ: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; HKD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; HNL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; HRK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; HUF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; IDR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ILS: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; INR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; IQD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; IRR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ISK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; JMD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; JOD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; JPY: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; KES: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; KHR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; KMF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; KRW: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; KWD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; KZT: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; LBP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; LKR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; LTL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; LVL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; LYD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MAD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MDL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MGA: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MKD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MMK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MOP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MUR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MXN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MYR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; MZN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; NAD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; NGN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; NIO: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; NOK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; NPR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; NZD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; OMR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; PAB: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; PEN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; PHP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; PKR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; PLN: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; PYG: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; QAR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; RON: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; RSD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; RUB: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; RWF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; SAR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; SDG: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; SEK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; SGD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; SOS: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; SYP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; THB: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; TND: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; TOP: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; TRY: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; TTD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; TWD: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; TZS: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; UAH: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; UGX: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; UYU: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; UZS: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; VEF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; VND: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; XAF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; XOF: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; YER: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ZAR: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ZMK: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; ZWL: { symbol: string; name: string; symbol_native: string; decimal_digits: number; rounding: number; code: string; name_plural: string; }; }; transactionTypes: string[]; subscriptionPlans: string[]; }; /** * Returns a transaction type * * @example * modules.finance.transaction() // 'payment' * * @returns string */ transaction(): string; /** * Returns a suscription plan type * * @example * modules.finance.subscriptionPlan() // 'Free' * * @returns string */ subscriptionPlan(): string; /** * Returns a PIN number. * * @param args.length The length of the PIN to generate. Defaults to `4`. * * @example * modules.finance.pin() // '5067' * modules.finance.pin({ length: 6 }) // '213789' * * @returns string */ pin({ length }?: PinProps): string; /** * Returns a Bitcoin address. * * @example * modules.finance.bitcoinAddress() // '3ySdvCkTLVy7gKD4j6JfSaf5d' * * @returns string */ bitcoinAddress(): string; /** * Returns a credit card number. * * @example * modules.finance.creditCard() // '6375-3265-4676-6646' * * @returns string */ creditCard(): string; /** * Returns a Ethereum address. * * @example * modules.finance.ethereumAddress() // '0xf03dfeecbafc5147241cc4c4ca20b3c9dfd04c4a' * * @returns string */ ethereumAddress(): string; /** * @example * modules.finance.accountType() // "Credit Card" * * @returns string */ accountType(): string; /** * Returns a SWIFT/BIC code based on the [ISO-9362](https://en.wikipedia.org/wiki/ISO_9362) format. * * @example * modules.finance.bic() // 'WYAUPGX1' * * @returns string */ bic(): string; /** * @example * modules.finance.routingNumber() // '522814402' * @returns string */ routingNumber(): string; /** * Returns a credit card CVV. * * @example * modules.finance.creditCardCVV() // '506' * * @returns string */ creditCardCVV(): string; /** * Returns a string with a money symbol * @example modules.finance.moneySymbol() // '$' * @returns string */ moneySymbol(): string; /** * Generates a random amount between the given bounds (inclusive). * * @param args.min The lower bound for the amount. * @param args.max The upper bound for the amount. * @param args.precision The number of decimal places for the amount. * @param args.symbol The symbol used to prefix the amount. Defaults to `'$'`. * * @example * modules.finance.amount()// '$6170.87' * modules.finance.amount({ min: 0, max: 1000 }) // '$5.53' * modules.finance.amount({ min: 0, max: 1000, symbol: '€', precision: 0 }) // '€5' * * @returns string */ amount({ max, min, precision, symbol: isymbol }?: AmountProps): string; /** * Returns a current money name * @example modules.finance.currencyMoneyName() // 'Us Dollar' * @returns string */ currencyMoneyName(): string; /** * Returns a common money code * @example modules.finance.moneyCode() // 'EUR' * @returns string */ moneyCode(): string; /** * Generates a random Litecoin address. * * @example * modules.finance.litecoinAddress() // 'MoQaSTGWBRXkWfyxKbNKuPrAWGELzcW' */ litecoinAddress(): string; } export {};