/** * Converts a numeric value to Arabic words. * * @param {number | string | bigint} value - The numeric value to convert * @param {Object} [options] - Optional configuration * @param {('masculine'|'feminine')} [options.gender='masculine'] - Grammatical gender * @param {string} [options.negativeWord] - Custom word for negative numbers * @returns {string} The number in Arabic words * * @example * toCardinal(1) // 'واحد' * toCardinal(1, {gender: 'feminine'}) // 'واحدة' */ export function toCardinal(value: number | string | bigint, options?: { gender?: "masculine" | "feminine" | undefined; negativeWord?: string | undefined; }): string; /** * Converts a numeric value to Arabic ordinal words. * * @param {number | string | bigint} value - The numeric value to convert (positive integer) * @param {Object} [options] - Optional configuration * @param {('masculine'|'feminine')} [options.gender='masculine'] - Grammatical gender * @returns {string} The number as ordinal words * @throws {TypeError} If value is not a valid numeric type * @throws {RangeError} If value is negative, zero, or has a decimal part * * @example * toOrdinal(1) // 'الأول' * toOrdinal(1, {gender: 'feminine'}) // 'الأولى' * toOrdinal(3) // 'الثالث' */ export function toOrdinal(value: number | string | bigint, options?: { gender?: "masculine" | "feminine" | undefined; }): string; /** * Converts a numeric value to Arabic currency words (Saudi Riyal). * * @param {number | string | bigint} value - The currency amount to convert * @returns {string} The amount in Arabic currency words * @throws {TypeError} If value is not a valid numeric type * @throws {Error} If value is not a valid number format * * @example * toCurrency(42.50) // 'اثنان وأربعون ريالاً وخمسون هللة' * toCurrency(1) // 'ريال واحد' * toCurrency(0.01) // 'هللة واحدة' */ export function toCurrency(value: number | string | bigint): string;