n2words 1.24.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +49 -0
- package/README.md +183 -156
- package/dist/languages/am-Latn.js +3 -0
- package/dist/languages/am-Latn.js.map +1 -0
- package/dist/languages/am.js +3 -0
- package/dist/languages/am.js.map +1 -0
- package/dist/languages/ar.js +3 -2
- package/dist/languages/ar.js.map +1 -1
- package/dist/languages/az.js +3 -2
- package/dist/languages/az.js.map +1 -1
- package/dist/languages/bn.js +3 -2
- package/dist/languages/bn.js.map +1 -1
- package/dist/languages/cs.js +3 -2
- package/dist/languages/cs.js.map +1 -1
- package/dist/languages/da.js +3 -2
- package/dist/languages/da.js.map +1 -1
- package/dist/languages/de.js +3 -2
- package/dist/languages/de.js.map +1 -1
- package/dist/languages/el.js +3 -2
- package/dist/languages/el.js.map +1 -1
- package/dist/languages/en.js +3 -2
- package/dist/languages/en.js.map +1 -1
- package/dist/languages/es.js +3 -2
- package/dist/languages/es.js.map +1 -1
- package/dist/languages/fa.js +3 -2
- package/dist/languages/fa.js.map +1 -1
- package/dist/languages/fi.js +3 -0
- package/dist/languages/fi.js.map +1 -0
- package/dist/languages/fil.js +3 -2
- package/dist/languages/fil.js.map +1 -1
- package/dist/languages/fr-BE.js +3 -2
- package/dist/languages/fr-BE.js.map +1 -1
- package/dist/languages/fr.js +3 -2
- package/dist/languages/fr.js.map +1 -1
- package/dist/languages/gu.js +3 -2
- package/dist/languages/gu.js.map +1 -1
- package/dist/languages/ha.js +3 -0
- package/dist/languages/ha.js.map +1 -0
- package/dist/languages/hbo.js +3 -0
- package/dist/languages/hbo.js.map +1 -0
- package/dist/languages/he.js +3 -2
- package/dist/languages/he.js.map +1 -1
- package/dist/languages/hi.js +3 -2
- package/dist/languages/hi.js.map +1 -1
- package/dist/languages/hr.js +3 -2
- package/dist/languages/hr.js.map +1 -1
- package/dist/languages/hu.js +3 -2
- package/dist/languages/hu.js.map +1 -1
- package/dist/languages/id.js +3 -2
- package/dist/languages/id.js.map +1 -1
- package/dist/languages/it.js +3 -2
- package/dist/languages/it.js.map +1 -1
- package/dist/languages/ja.js +3 -2
- package/dist/languages/ja.js.map +1 -1
- package/dist/languages/kn.js +3 -2
- package/dist/languages/kn.js.map +1 -1
- package/dist/languages/ko.js +3 -2
- package/dist/languages/ko.js.map +1 -1
- package/dist/languages/lt.js +3 -2
- package/dist/languages/lt.js.map +1 -1
- package/dist/languages/lv.js +3 -2
- package/dist/languages/lv.js.map +1 -1
- package/dist/languages/mr.js +3 -2
- package/dist/languages/mr.js.map +1 -1
- package/dist/languages/ms.js +3 -2
- package/dist/languages/ms.js.map +1 -1
- package/dist/languages/nb.js +3 -2
- package/dist/languages/nb.js.map +1 -1
- package/dist/languages/nl.js +3 -2
- package/dist/languages/nl.js.map +1 -1
- package/dist/languages/pa.js +3 -0
- package/dist/languages/pa.js.map +1 -0
- package/dist/languages/pl.js +3 -2
- package/dist/languages/pl.js.map +1 -1
- package/dist/languages/pt.js +3 -2
- package/dist/languages/pt.js.map +1 -1
- package/dist/languages/ro.js +3 -2
- package/dist/languages/ro.js.map +1 -1
- package/dist/languages/ru.js +3 -2
- package/dist/languages/ru.js.map +1 -1
- package/dist/languages/sr-Cyrl.js +3 -0
- package/dist/languages/sr-Cyrl.js.map +1 -0
- package/dist/languages/sr-Latn.js +3 -2
- package/dist/languages/sr-Latn.js.map +1 -1
- package/dist/languages/sv.js +3 -2
- package/dist/languages/sv.js.map +1 -1
- package/dist/languages/sw.js +3 -2
- package/dist/languages/sw.js.map +1 -1
- package/dist/languages/ta.js +3 -2
- package/dist/languages/ta.js.map +1 -1
- package/dist/languages/te.js +3 -2
- package/dist/languages/te.js.map +1 -1
- package/dist/languages/th.js +3 -2
- package/dist/languages/th.js.map +1 -1
- package/dist/languages/tr.js +3 -2
- package/dist/languages/tr.js.map +1 -1
- package/dist/languages/uk.js +3 -2
- package/dist/languages/uk.js.map +1 -1
- package/dist/languages/ur.js +3 -2
- package/dist/languages/ur.js.map +1 -1
- package/dist/languages/vi.js +3 -2
- package/dist/languages/vi.js.map +1 -1
- package/dist/languages/zh-Hans.js +3 -2
- package/dist/languages/zh-Hans.js.map +1 -1
- package/dist/languages/zh-Hant.js +3 -0
- package/dist/languages/zh-Hant.js.map +1 -0
- package/dist/n2words.js +3 -2
- package/dist/n2words.js.map +1 -1
- package/lib/languages/am-Latn.d.ts +7 -0
- package/lib/languages/am-Latn.js +164 -0
- package/lib/languages/am.d.ts +7 -0
- package/lib/languages/am.js +164 -0
- package/lib/languages/ar.d.ts +17 -0
- package/lib/languages/ar.js +171 -209
- package/lib/languages/az.d.ts +7 -0
- package/lib/languages/az.js +167 -49
- package/lib/languages/bn.d.ts +7 -0
- package/lib/languages/bn.js +142 -123
- package/lib/languages/cs.d.ts +18 -0
- package/lib/languages/cs.js +303 -176
- package/lib/languages/da.d.ts +14 -0
- package/lib/languages/da.js +267 -139
- package/lib/languages/de.d.ts +17 -0
- package/lib/languages/de.js +310 -113
- package/lib/languages/el.d.ts +14 -0
- package/lib/languages/el.js +225 -98
- package/lib/languages/en.d.ts +17 -0
- package/lib/languages/en.js +235 -102
- package/lib/languages/es.d.ts +21 -0
- package/lib/languages/es.js +307 -125
- package/lib/languages/fa.d.ts +7 -0
- package/lib/languages/fa.js +115 -108
- package/lib/languages/fi.d.ts +14 -0
- package/lib/languages/fi.js +245 -0
- package/lib/languages/fil.d.ts +7 -0
- package/lib/languages/fil.js +199 -139
- package/lib/languages/fr-BE.d.ts +11 -0
- package/lib/languages/fr-BE.js +287 -48
- package/lib/languages/fr.d.ts +21 -0
- package/lib/languages/fr.js +343 -119
- package/lib/languages/gu.d.ts +7 -0
- package/lib/languages/gu.js +125 -144
- package/lib/languages/ha.d.ts +7 -0
- package/lib/languages/ha.js +230 -0
- package/lib/languages/hbo.d.ts +13 -0
- package/lib/languages/hbo.js +300 -0
- package/lib/languages/he.d.ts +13 -0
- package/lib/languages/he.js +230 -283
- package/lib/languages/hi.d.ts +7 -0
- package/lib/languages/hi.js +142 -123
- package/lib/languages/hr.d.ts +11 -0
- package/lib/languages/hr.js +190 -129
- package/lib/languages/hu.d.ts +7 -0
- package/lib/languages/hu.js +194 -133
- package/lib/languages/id.d.ts +7 -0
- package/lib/languages/id.js +167 -140
- package/lib/languages/it.d.ts +19 -0
- package/lib/languages/it.js +337 -108
- package/lib/languages/ja.d.ts +17 -0
- package/lib/languages/ja.js +224 -155
- package/lib/languages/kn.d.ts +7 -0
- package/lib/languages/kn.js +128 -62
- package/lib/languages/ko.d.ts +14 -0
- package/lib/languages/ko.js +250 -70
- package/lib/languages/lt.d.ts +18 -0
- package/lib/languages/lt.js +287 -148
- package/lib/languages/lv.d.ts +18 -0
- package/lib/languages/lv.js +291 -123
- package/lib/languages/mr.d.ts +7 -0
- package/lib/languages/mr.js +125 -144
- package/lib/languages/ms.d.ts +7 -0
- package/lib/languages/ms.js +171 -112
- package/lib/languages/nb.d.ts +14 -0
- package/lib/languages/nb.js +275 -100
- package/lib/languages/nl.d.ts +26 -0
- package/lib/languages/nl.js +307 -174
- package/lib/languages/pa.d.ts +7 -0
- package/lib/languages/pa.js +163 -0
- package/lib/languages/pl.d.ts +22 -0
- package/lib/languages/pl.js +299 -158
- package/lib/languages/pt.d.ts +17 -0
- package/lib/languages/pt.js +279 -120
- package/lib/languages/ro.d.ts +18 -0
- package/lib/languages/ro.js +214 -337
- package/lib/languages/ru.d.ts +11 -0
- package/lib/languages/ru.js +219 -95
- package/lib/languages/sr-Cyrl.d.ts +11 -0
- package/lib/languages/sr-Cyrl.js +215 -0
- package/lib/languages/sr-Latn.d.ts +11 -0
- package/lib/languages/sr-Latn.js +190 -132
- package/lib/languages/sv.d.ts +14 -0
- package/lib/languages/sv.js +280 -103
- package/lib/languages/sw.d.ts +7 -0
- package/lib/languages/sw.js +135 -103
- package/lib/languages/ta.d.ts +7 -0
- package/lib/languages/ta.js +133 -205
- package/lib/languages/te.d.ts +7 -0
- package/lib/languages/te.js +148 -213
- package/lib/languages/th.d.ts +7 -0
- package/lib/languages/th.js +139 -101
- package/lib/languages/tr.d.ts +18 -0
- package/lib/languages/tr.js +246 -66
- package/lib/languages/uk.d.ts +11 -0
- package/lib/languages/uk.js +197 -101
- package/lib/languages/ur.d.ts +7 -0
- package/lib/languages/ur.js +160 -123
- package/lib/languages/vi.d.ts +17 -0
- package/lib/languages/vi.js +287 -164
- package/lib/languages/zh-Hans.d.ts +11 -0
- package/lib/languages/zh-Hans.js +159 -142
- package/lib/languages/zh-Hant.d.ts +11 -0
- package/lib/languages/zh-Hant.js +202 -0
- package/lib/n2words.d.ts +53 -0
- package/lib/n2words.js +91 -227
- package/lib/utils/is-plain-object.d.ts +13 -0
- package/lib/utils/is-plain-object.js +17 -0
- package/lib/utils/parse-numeric.d.ts +17 -0
- package/lib/utils/parse-numeric.js +108 -0
- package/lib/utils/validate-options.d.ts +8 -0
- package/lib/utils/validate-options.js +16 -0
- package/package.json +118 -67
- package/dist/languages/pa-Guru.js +0 -2
- package/dist/languages/pa-Guru.js.map +0 -1
- package/lib/classes/abstract-language.js +0 -261
- package/lib/classes/greedy-scale-language.js +0 -195
- package/lib/classes/slavic-language.js +0 -251
- package/lib/classes/south-asian-language.js +0 -161
- package/lib/classes/turkic-language.js +0 -63
- package/lib/languages/pa-Guru.js +0 -126
- package/typings/classes/abstract-language.d.ts +0 -144
- package/typings/classes/greedy-scale-language.d.ts +0 -148
- package/typings/classes/slavic-language.d.ts +0 -145
- package/typings/classes/south-asian-language.d.ts +0 -101
- package/typings/classes/turkic-language.d.ts +0 -42
- package/typings/languages/ar.d.ts +0 -93
- package/typings/languages/az.d.ts +0 -25
- package/typings/languages/bn.d.ts +0 -1
- package/typings/languages/cs.d.ts +0 -120
- package/typings/languages/da.d.ts +0 -53
- package/typings/languages/de.d.ts +0 -26
- package/typings/languages/el.d.ts +0 -11
- package/typings/languages/en.d.ts +0 -30
- package/typings/languages/es.d.ts +0 -43
- package/typings/languages/fa.d.ts +0 -81
- package/typings/languages/fil.d.ts +0 -12
- package/typings/languages/fr-BE.d.ts +0 -41
- package/typings/languages/fr.d.ts +0 -43
- package/typings/languages/gu.d.ts +0 -12
- package/typings/languages/he.d.ts +0 -197
- package/typings/languages/hi.d.ts +0 -1
- package/typings/languages/hr.d.ts +0 -110
- package/typings/languages/hu.d.ts +0 -37
- package/typings/languages/id.d.ts +0 -69
- package/typings/languages/it.d.ts +0 -51
- package/typings/languages/ja.d.ts +0 -58
- package/typings/languages/kn.d.ts +0 -11
- package/typings/languages/ko.d.ts +0 -25
- package/typings/languages/lt.d.ts +0 -110
- package/typings/languages/lv.d.ts +0 -99
- package/typings/languages/mr.d.ts +0 -12
- package/typings/languages/ms.d.ts +0 -37
- package/typings/languages/nb.d.ts +0 -27
- package/typings/languages/nl.d.ts +0 -65
- package/typings/languages/pa-Guru.d.ts +0 -1
- package/typings/languages/pl.d.ts +0 -116
- package/typings/languages/pt.d.ts +0 -39
- package/typings/languages/ro.d.ts +0 -229
- package/typings/languages/ru.d.ts +0 -108
- package/typings/languages/sr-Latn.d.ts +0 -98
- package/typings/languages/sv.d.ts +0 -30
- package/typings/languages/sw.d.ts +0 -1
- package/typings/languages/ta.d.ts +0 -1
- package/typings/languages/te.d.ts +0 -1
- package/typings/languages/th.d.ts +0 -1
- package/typings/languages/tr.d.ts +0 -46
- package/typings/languages/uk.d.ts +0 -117
- package/typings/languages/ur.d.ts +0 -1
- package/typings/languages/vi.d.ts +0 -116
- package/typings/languages/zh-Hans.d.ts +0 -57
- package/typings/n2words.d.ts +0 -177
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Italian cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {Object} [options={}] Configuration options.
|
|
6
|
-
* @returns {string} The number expressed in Italian words.
|
|
7
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
8
|
-
* @throws {Error} If value is an invalid number string.
|
|
9
|
-
*/
|
|
10
|
-
export default function convertToWords(value: number | string | bigint, options?: any): string;
|
|
11
|
-
/**
|
|
12
|
-
* Italian language converter.
|
|
13
|
-
*
|
|
14
|
-
* Converts numbers to Italian words following Italian conventions:
|
|
15
|
-
* - Phonetic contractions (removes duplicate vowels: "ventotto" not "ventiotto")
|
|
16
|
-
* - Accentuation rules for "tre" in compounds ("ventitré" not "ventitre")
|
|
17
|
-
* - Special handling for "uno" and vowel agreement
|
|
18
|
-
* - Complex composition patterns for large numbers
|
|
19
|
-
*
|
|
20
|
-
* Architecture Note:
|
|
21
|
-
* Unlike other GreedyScaleLanguage subclasses, Italian uses a custom algorithm
|
|
22
|
-
* rather than the standard highest-matching-scale approach. This is necessary
|
|
23
|
-
* because Italian's word formation rules are irregular and context-dependent.
|
|
24
|
-
* See tensToCardinal(), hundredsToCardinal(), and bigNumberToCardinal().
|
|
25
|
-
*
|
|
26
|
-
* Features:
|
|
27
|
-
* - Vowel elision (e.g., "ventotto" not "ventiotto")
|
|
28
|
-
* - Accentuation of final "tre" (ventitré, trentacinque - note: accent on compound tres)
|
|
29
|
-
* - Exponent-based large number naming (milione, miliardo, trilione)
|
|
30
|
-
* - Custom word construction for hundreds and thousands
|
|
31
|
-
*/
|
|
32
|
-
export class Italian extends GreedyScaleLanguage {
|
|
33
|
-
cardinalWords: string[];
|
|
34
|
-
strTens: {
|
|
35
|
-
2: string;
|
|
36
|
-
3: string;
|
|
37
|
-
4: string;
|
|
38
|
-
6: string;
|
|
39
|
-
};
|
|
40
|
-
exponentPrefixes: string[];
|
|
41
|
-
accentuate(string: any): any;
|
|
42
|
-
omitIfZero(numberToString: any): any;
|
|
43
|
-
phoneticContraction(string: any): any;
|
|
44
|
-
tensToCardinal(number: any): any;
|
|
45
|
-
hundredsToCardinal(number: any): any;
|
|
46
|
-
thousandsToCardinal(number: any): string;
|
|
47
|
-
exponentLengthToString(exponentLength: any): string;
|
|
48
|
-
bigNumberToCardinal(number: any): string;
|
|
49
|
-
convertWholePart(number: any): any;
|
|
50
|
-
}
|
|
51
|
-
import GreedyScaleLanguage from '../classes/greedy-scale-language.js';
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a value to cardinal (written) form in Japanese.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value - Number to convert.
|
|
5
|
-
* @param {Object} [options] - Options for the converter.
|
|
6
|
-
* @returns {string} Value in Japanese kanji numerals.
|
|
7
|
-
* @throws {Error} If value is invalid.
|
|
8
|
-
*
|
|
9
|
-
* @example
|
|
10
|
-
* convertToWords(42, { lang: 'ja' }); // '四十二'
|
|
11
|
-
* convertToWords(1000, { lang: 'ja' }); // '千'
|
|
12
|
-
* convertToWords(10000, { lang: 'ja' }); // '一万'
|
|
13
|
-
*/
|
|
14
|
-
export default function convertToWords(value: number | string | bigint, options?: any): string;
|
|
15
|
-
/**
|
|
16
|
-
* Japanese language converter.
|
|
17
|
-
*
|
|
18
|
-
* Converts numbers to Japanese kanji numerals using the Sino-Japanese system:
|
|
19
|
-
* - Uses kanji characters (一, 二, 三, etc.)
|
|
20
|
-
* - Grouping by 万 (man, 10,000) and 億 (oku, 100,000,000)
|
|
21
|
-
* - Unique scale units: 兆 (chō, trillion), 京 (kei, 10^16)
|
|
22
|
-
* - Special rules for 1: omitted before 十 (10), 百 (100), 千 (1000), but kept for 万 and above
|
|
23
|
-
*
|
|
24
|
-
* Key Features:
|
|
25
|
-
* - Sino-Japanese number system (standard for general counting)
|
|
26
|
-
* - Grouping by powers of 10,000 (万-based system, not 1,000)
|
|
27
|
-
* - Scale units: 万 (10^4), 億 (10^8), 兆 (10^12), 京 (10^16)
|
|
28
|
-
* - Special handling of 一 (one) prefix
|
|
29
|
-
* - Support for very large numbers up to 無量大数 (10^68)
|
|
30
|
-
*
|
|
31
|
-
* Algorithm:
|
|
32
|
-
* 1. Split number into groups of 4 digits (万-based, not 3-digit thousand-based)
|
|
33
|
-
* 2. Convert each group to kanji using special rules
|
|
34
|
-
* 3. Append appropriate scale word (万, 億, 兆, etc.)
|
|
35
|
-
* 4. Join all groups
|
|
36
|
-
*
|
|
37
|
-
* Special Rules:
|
|
38
|
-
* - 10, 100, 1000: Don't use 一 prefix (十, 百, 千 not 一十, 一百, 一千)
|
|
39
|
-
* - 10,000+: Keep 一 prefix (一万, 一億, 一兆)
|
|
40
|
-
* - Zero: 零 or 〇 (both acceptable, 零 is more formal)
|
|
41
|
-
*/
|
|
42
|
-
export class Japanese extends AbstractLanguage {
|
|
43
|
-
scales: string[];
|
|
44
|
-
/**
|
|
45
|
-
* Converts a group of up to 4 digits to Japanese kanji.
|
|
46
|
-
* Handles special rules for omitting 一 before 十, 百, 千.
|
|
47
|
-
*
|
|
48
|
-
* Rule: Within a group, omit 一 before 十/百/千 EXCEPT when:
|
|
49
|
-
* - It's a lower group (not isTopGroup) AND
|
|
50
|
-
* - It would be the only character in that position
|
|
51
|
-
*
|
|
52
|
-
* @param {bigint} num - Number from 0 to 9999
|
|
53
|
-
* @param {boolean} isTopGroup - Whether this is the highest non-zero group
|
|
54
|
-
* @returns {string} Japanese kanji representation
|
|
55
|
-
*/
|
|
56
|
-
convertGroup(num: bigint, isTopGroup?: boolean): string;
|
|
57
|
-
}
|
|
58
|
-
import AbstractLanguage from '../classes/abstract-language.js';
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to its word representation in Kannada.
|
|
3
|
-
* @param {number|string|bigint} value - The number to convert
|
|
4
|
-
* @param {Object} [options={}] - Conversion options
|
|
5
|
-
* @returns {string} The word representation of the number
|
|
6
|
-
* @example
|
|
7
|
-
* convertToWords(42) // 'ನಲವತ್ತೆರಡು'
|
|
8
|
-
* convertToWords(1000) // 'ಒಂದು ಸಾವಿರ'
|
|
9
|
-
* convertToWords(100000) // 'ಒಂದು ಲಕ್ಷ'
|
|
10
|
-
*/
|
|
11
|
-
export default function convertToWords(value: number | string | bigint, options?: any): string;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Korean cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {Object} [options] Conversion options (see Korean class options).
|
|
6
|
-
* @returns {string} The number expressed in Korean words.
|
|
7
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
8
|
-
* @throws {Error} If value is an invalid number string.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* convertToWords(42); // '사십이'
|
|
12
|
-
* convertToWords(10001); // '만 일'
|
|
13
|
-
*/
|
|
14
|
-
export default function convertToWords(value: number | string | bigint, options?: any): string;
|
|
15
|
-
/**
|
|
16
|
-
* Korean language converter.
|
|
17
|
-
*
|
|
18
|
-
* Features:
|
|
19
|
-
* - Space-separated for large numbers (>= 만/10,000)
|
|
20
|
-
* - Concatenated for smaller numbers
|
|
21
|
-
* - Omits '일' (1) before multipliers
|
|
22
|
-
*/
|
|
23
|
-
export class Korean extends GreedyScaleLanguage {
|
|
24
|
-
}
|
|
25
|
-
import GreedyScaleLanguage from '../classes/greedy-scale-language.js';
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Lithuanian cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {Object} [options={}] Configuration options.
|
|
6
|
-
* @param {boolean} [options.feminine=false] Use feminine forms for numbers.
|
|
7
|
-
* @returns {string} The number expressed in Lithuanian words.
|
|
8
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
9
|
-
* @throws {Error} If value is an invalid number string.
|
|
10
|
-
*/
|
|
11
|
-
export default function convertToWords(value: number | string | bigint, options?: {
|
|
12
|
-
feminine?: boolean;
|
|
13
|
-
}): string;
|
|
14
|
-
/**
|
|
15
|
-
* @typedef {Object} SlavicOptions
|
|
16
|
-
* @property {boolean} [feminine=false] Use feminine forms for numbers.
|
|
17
|
-
*/
|
|
18
|
-
/**
|
|
19
|
-
* Lithuanian language converter.
|
|
20
|
-
*
|
|
21
|
-
* Implements Lithuanian number words using the Slavic language pattern:
|
|
22
|
-
* - Lithuanian number words (vienas/viena, du/dvi, trys, keturi...)
|
|
23
|
-
* - Gender-aware forms (masculine/feminine)
|
|
24
|
-
* - Baltic three-form pluralization (tūkstantis/tūkstančiai/tūkstančių)
|
|
25
|
-
* - Lithuanian-specific declension patterns
|
|
26
|
-
*
|
|
27
|
-
* Key Features:
|
|
28
|
-
* - Three-form pluralization system shared across Slavic/Baltic languages
|
|
29
|
-
* * Form 1 (singular): 1 (e.g., "tūkstantis")
|
|
30
|
-
* * Form 2 (few): 2-4, 22-24, 32-34... excluding teens (e.g., "tūkstančiai")
|
|
31
|
-
* * Form 3 (many): all other numbers (e.g., "tūkstančių")
|
|
32
|
-
* - Chunk-based decomposition (splits into groups of 3 digits: ones, thousands, millions, etc.)
|
|
33
|
-
* - Large number handling via thousands[] array with indexed [singular, few, many] forms
|
|
34
|
-
* - Gender-specific number forms for 1 and 2 (masculine/feminine dual forms)
|
|
35
|
-
*
|
|
36
|
-
* Features:
|
|
37
|
-
* - Dual gender forms (vienas/viena, du/dvi, keturi/keturios)
|
|
38
|
-
* - Complex declension patterns for large numbers
|
|
39
|
-
* - Baltic language characteristics
|
|
40
|
-
*
|
|
41
|
-
* Inherits from SlavicLanguage as Lithuanian uses similar pluralization.
|
|
42
|
-
*/
|
|
43
|
-
export class Lithuanian extends SlavicLanguage {
|
|
44
|
-
ones: {
|
|
45
|
-
1: string;
|
|
46
|
-
2: string;
|
|
47
|
-
3: string;
|
|
48
|
-
4: string;
|
|
49
|
-
5: string;
|
|
50
|
-
6: string;
|
|
51
|
-
7: string;
|
|
52
|
-
8: string;
|
|
53
|
-
9: string;
|
|
54
|
-
};
|
|
55
|
-
onesFeminine: {
|
|
56
|
-
1: string;
|
|
57
|
-
2: string;
|
|
58
|
-
3: string;
|
|
59
|
-
4: string;
|
|
60
|
-
5: string;
|
|
61
|
-
6: string;
|
|
62
|
-
7: string;
|
|
63
|
-
8: string;
|
|
64
|
-
9: string;
|
|
65
|
-
};
|
|
66
|
-
tens: {
|
|
67
|
-
0: string;
|
|
68
|
-
1: string;
|
|
69
|
-
2: string;
|
|
70
|
-
3: string;
|
|
71
|
-
4: string;
|
|
72
|
-
5: string;
|
|
73
|
-
6: string;
|
|
74
|
-
7: string;
|
|
75
|
-
8: string;
|
|
76
|
-
9: string;
|
|
77
|
-
};
|
|
78
|
-
twenties: {
|
|
79
|
-
2: string;
|
|
80
|
-
3: string;
|
|
81
|
-
4: string;
|
|
82
|
-
5: string;
|
|
83
|
-
6: string;
|
|
84
|
-
7: string;
|
|
85
|
-
8: string;
|
|
86
|
-
9: string;
|
|
87
|
-
};
|
|
88
|
-
hundreds: string[];
|
|
89
|
-
thousands: {
|
|
90
|
-
1: string[];
|
|
91
|
-
2: string[];
|
|
92
|
-
3: string[];
|
|
93
|
-
4: string[];
|
|
94
|
-
5: string[];
|
|
95
|
-
6: string[];
|
|
96
|
-
7: string[];
|
|
97
|
-
8: string[];
|
|
98
|
-
9: string[];
|
|
99
|
-
10: string[];
|
|
100
|
-
};
|
|
101
|
-
pluralize(n: any, forms: any): any;
|
|
102
|
-
convertWholePart(number: any): string;
|
|
103
|
-
}
|
|
104
|
-
export type SlavicOptions = {
|
|
105
|
-
/**
|
|
106
|
-
* Use feminine forms for numbers.
|
|
107
|
-
*/
|
|
108
|
-
feminine?: boolean;
|
|
109
|
-
};
|
|
110
|
-
import SlavicLanguage from '../classes/slavic-language.js';
|
|
@@ -1,99 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Latvian cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {Object} [options={}] Configuration options.
|
|
6
|
-
* @param {boolean} [options.feminine=false] Use feminine forms for numbers.
|
|
7
|
-
* @returns {string} The number expressed in Latvian words.
|
|
8
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
9
|
-
* @throws {Error} If value is an invalid number string.
|
|
10
|
-
*/
|
|
11
|
-
export default function convertToWords(value: number | string | bigint, options?: {
|
|
12
|
-
feminine?: boolean;
|
|
13
|
-
}): string;
|
|
14
|
-
/**
|
|
15
|
-
* @typedef {Object} SlavicOptions
|
|
16
|
-
* @property {boolean} [feminine=false] Use feminine forms for numbers.
|
|
17
|
-
*/
|
|
18
|
-
/**
|
|
19
|
-
* Latvian language converter.
|
|
20
|
-
*
|
|
21
|
-
* Implements Latvian number words using the Slavic language pattern:
|
|
22
|
-
* - Latvian number words (viens, divi, trīs, četri, pieci...)
|
|
23
|
-
* - Latvian-specific pluralization patterns
|
|
24
|
-
* - Baltic grammatical structure
|
|
25
|
-
* - Simplified gender handling compared to Lithuanian
|
|
26
|
-
*
|
|
27
|
-
* Key Features:
|
|
28
|
-
* - Three-form pluralization system shared across Slavic/Baltic languages
|
|
29
|
-
* * Form 1 (singular): 1 (e.g., "tūkstotis")
|
|
30
|
-
* * Form 2 (few): 2-4, 22-24, 32-34... excluding teens (e.g., "tūkstoši")
|
|
31
|
-
* * Form 3 (many): all other numbers (e.g., "tūkstošu")
|
|
32
|
-
* - Chunk-based decomposition (splits into groups of 3 digits: ones, thousands, millions, etc.)
|
|
33
|
-
* - Large number handling via thousands[] array with indexed [singular, few, many] forms
|
|
34
|
-
*
|
|
35
|
-
* Features:
|
|
36
|
-
* - Latvian diacritical marks (ī, ā, ē, ū, etc.)
|
|
37
|
-
* - Three-form pluralization (adapted for Latvian)
|
|
38
|
-
* - Baltic number naming conventions
|
|
39
|
-
* - Compound number formation (divdesmit, trīsdesmit)
|
|
40
|
-
*
|
|
41
|
-
* Inherits from SlavicLanguage for pluralization algorithms.
|
|
42
|
-
*/
|
|
43
|
-
export class Latvian extends SlavicLanguage {
|
|
44
|
-
ones: {
|
|
45
|
-
1: string;
|
|
46
|
-
2: string;
|
|
47
|
-
3: string;
|
|
48
|
-
4: string;
|
|
49
|
-
5: string;
|
|
50
|
-
6: string;
|
|
51
|
-
7: string;
|
|
52
|
-
8: string;
|
|
53
|
-
9: string;
|
|
54
|
-
};
|
|
55
|
-
tens: {
|
|
56
|
-
0: string;
|
|
57
|
-
1: string;
|
|
58
|
-
2: string;
|
|
59
|
-
3: string;
|
|
60
|
-
4: string;
|
|
61
|
-
5: string;
|
|
62
|
-
6: string;
|
|
63
|
-
7: string;
|
|
64
|
-
8: string;
|
|
65
|
-
9: string;
|
|
66
|
-
};
|
|
67
|
-
twenties: {
|
|
68
|
-
2: string;
|
|
69
|
-
3: string;
|
|
70
|
-
4: string;
|
|
71
|
-
5: string;
|
|
72
|
-
6: string;
|
|
73
|
-
7: string;
|
|
74
|
-
8: string;
|
|
75
|
-
9: string;
|
|
76
|
-
};
|
|
77
|
-
hundreds: string[];
|
|
78
|
-
thousands: {
|
|
79
|
-
1: string[];
|
|
80
|
-
2: string[];
|
|
81
|
-
3: string[];
|
|
82
|
-
4: string[];
|
|
83
|
-
5: string[];
|
|
84
|
-
6: string[];
|
|
85
|
-
7: string[];
|
|
86
|
-
8: string[];
|
|
87
|
-
9: string[];
|
|
88
|
-
10: string[];
|
|
89
|
-
};
|
|
90
|
-
pluralize(n: any, forms: any): any;
|
|
91
|
-
convertWholePart(number: any): string;
|
|
92
|
-
}
|
|
93
|
-
export type SlavicOptions = {
|
|
94
|
-
/**
|
|
95
|
-
* Use feminine forms for numbers.
|
|
96
|
-
*/
|
|
97
|
-
feminine?: boolean;
|
|
98
|
-
};
|
|
99
|
-
import SlavicLanguage from '../classes/slavic-language.js';
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Convert a number to Marathi words
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value - The number to convert
|
|
5
|
-
* @param {Object} [options={}] - Conversion options
|
|
6
|
-
* @returns {string} The Marathi word representation
|
|
7
|
-
* @example
|
|
8
|
-
* convertToWords(42) // 'बेचाळीस'
|
|
9
|
-
* convertToWords(1000) // 'एक हजार'
|
|
10
|
-
* convertToWords(100000) // 'एक लाख'
|
|
11
|
-
*/
|
|
12
|
-
export default function convertToWords(value: number | string | bigint, options?: any): string;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
export default function convertToWords(value: any, options?: {}): string;
|
|
2
|
-
/**
|
|
3
|
-
* Malay (Bahasa Melayu) language converter.
|
|
4
|
-
*
|
|
5
|
-
* Conventions:
|
|
6
|
-
* - Base-10 structure
|
|
7
|
-
* - "Se-" prefix for singular units (seratus, seribu, sejuta, sebilion, setrilion)
|
|
8
|
-
* - Space-separated components (no conjunction like "dan" for tens/ones)
|
|
9
|
-
* - Grouping by thousands (ribu, juta, bilion, trilion)
|
|
10
|
-
*/
|
|
11
|
-
export class Malay extends AbstractLanguage {
|
|
12
|
-
base: {
|
|
13
|
-
0: any[];
|
|
14
|
-
1: string[];
|
|
15
|
-
2: string[];
|
|
16
|
-
3: string[];
|
|
17
|
-
4: string[];
|
|
18
|
-
5: string[];
|
|
19
|
-
6: string[];
|
|
20
|
-
7: string[];
|
|
21
|
-
8: string[];
|
|
22
|
-
9: string[];
|
|
23
|
-
};
|
|
24
|
-
thousands: {
|
|
25
|
-
3: string;
|
|
26
|
-
6: string;
|
|
27
|
-
9: string;
|
|
28
|
-
12: string;
|
|
29
|
-
};
|
|
30
|
-
splitBy3(number: any): any[][];
|
|
31
|
-
spell(blocks: any): any[];
|
|
32
|
-
getHundreds(number: any): any[];
|
|
33
|
-
getTens(number: any): any;
|
|
34
|
-
join(wordBlocks: any): string;
|
|
35
|
-
convertWholePart(number: any): string;
|
|
36
|
-
}
|
|
37
|
-
import AbstractLanguage from '../classes/abstract-language.js';
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Norwegian cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {Object} [options] Conversion options (see Norwegian class options).
|
|
6
|
-
* @returns {string} The number expressed in Norwegian words.
|
|
7
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
8
|
-
* @throws {Error} If value is an invalid number string.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* convertToWords(42); // 'førti-to'
|
|
12
|
-
* convertToWords('1.5'); // 'en komma fem'
|
|
13
|
-
*/
|
|
14
|
-
export default function convertToWords(value: number | string | bigint, options?: any): string;
|
|
15
|
-
/**
|
|
16
|
-
* Norwegian language converter.
|
|
17
|
-
*
|
|
18
|
-
* GreedyScaleLanguage with inline Norwegian merge rules:
|
|
19
|
-
* - Hyphenation for compound numbers (e.g., "tjueen")
|
|
20
|
-
* - "og" (and) for hundreds combinations
|
|
21
|
-
* - Comma separation for non-magnitude additions
|
|
22
|
-
* - Implicit '1' before tens and magnitudes
|
|
23
|
-
* - Space separators for large numbers
|
|
24
|
-
*/
|
|
25
|
-
export class Norwegian extends GreedyScaleLanguage {
|
|
26
|
-
}
|
|
27
|
-
import GreedyScaleLanguage from '../classes/greedy-scale-language.js';
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Dutch cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {Object} [options] Conversion options (see Dutch class options).
|
|
6
|
-
* @param {boolean} [options.includeOptionalAnd=false] Include optional 'en' (and) separator.
|
|
7
|
-
* @param {boolean} [options.noHundredPairs=false] Don't combine hundreds with tens/units.
|
|
8
|
-
* @param {boolean} [options.accentOne=true] Use accented 'één' for standalone 1.
|
|
9
|
-
* @returns {string} The number expressed in Dutch words.
|
|
10
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
11
|
-
* @throws {Error} If value is an invalid number string.
|
|
12
|
-
*
|
|
13
|
-
* @example
|
|
14
|
-
* convertToWords(1); // 'één' (default accent)
|
|
15
|
-
* convertToWords(1, { accentOne: false }); // 'een'
|
|
16
|
-
* convertToWords(21); // 'eenentwintig' (no accent in compounds)
|
|
17
|
-
* convertToWords(42); // 'tweeenveertig'
|
|
18
|
-
* convertToWords('1.5'); // 'één komma vijf'
|
|
19
|
-
*/
|
|
20
|
-
export default function convertToWords(value: number | string | bigint, options?: {
|
|
21
|
-
includeOptionalAnd?: boolean;
|
|
22
|
-
noHundredPairs?: boolean;
|
|
23
|
-
accentOne?: boolean;
|
|
24
|
-
}): string;
|
|
25
|
-
/**
|
|
26
|
-
* @typedef {Object} DutchOptions
|
|
27
|
-
* @property {boolean} [includeOptionalAnd=false] Include optional "en" separator.
|
|
28
|
-
* @property {boolean} [noHundredPairs=false] Disable comma before hundreds.
|
|
29
|
-
* @property {boolean} [accentOne=true] Use accented "één" for one.
|
|
30
|
-
*/
|
|
31
|
-
/**
|
|
32
|
-
* Dutch language converter.
|
|
33
|
-
*
|
|
34
|
-
* Features:
|
|
35
|
-
* - Optional "en" (and) separator for tens (includeOptionalAnd)
|
|
36
|
-
* - Optional comma before hundreds (noHundredPairs)
|
|
37
|
-
* - Compound word formation without hyphenation
|
|
38
|
-
*/
|
|
39
|
-
export class Dutch extends GreedyScaleLanguage {
|
|
40
|
-
/**
|
|
41
|
-
* Initializes the Dutch converter with language-specific options.
|
|
42
|
-
*
|
|
43
|
-
* @param {DutchOptions} [options={}] Configuration options.
|
|
44
|
-
*/
|
|
45
|
-
constructor({ includeOptionalAnd, noHundredPairs, accentOne }?: DutchOptions);
|
|
46
|
-
includeOptionalAnd: boolean;
|
|
47
|
-
noHundredPairs: boolean;
|
|
48
|
-
accentOne: boolean;
|
|
49
|
-
convertWholePart(value: any): string;
|
|
50
|
-
}
|
|
51
|
-
export type DutchOptions = {
|
|
52
|
-
/**
|
|
53
|
-
* Include optional "en" separator.
|
|
54
|
-
*/
|
|
55
|
-
includeOptionalAnd?: boolean;
|
|
56
|
-
/**
|
|
57
|
-
* Disable comma before hundreds.
|
|
58
|
-
*/
|
|
59
|
-
noHundredPairs?: boolean;
|
|
60
|
-
/**
|
|
61
|
-
* Use accented "één" for one.
|
|
62
|
-
*/
|
|
63
|
-
accentOne?: boolean;
|
|
64
|
-
};
|
|
65
|
-
import GreedyScaleLanguage from '../classes/greedy-scale-language.js';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function convertToWords(value: any, options?: {}): string;
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Polish cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {SlavicOptions} [options={}] Configuration options.
|
|
6
|
-
* @returns {string} The number expressed in Polish words.
|
|
7
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
8
|
-
* @throws {Error} If value is an invalid number string.
|
|
9
|
-
*/
|
|
10
|
-
export default function convertToWords(value: number | string | bigint, options?: SlavicOptions): string;
|
|
11
|
-
/**
|
|
12
|
-
* @typedef {Object} SlavicOptions
|
|
13
|
-
* @property {boolean} [feminine=false] Use feminine forms for numbers.
|
|
14
|
-
*/
|
|
15
|
-
/**
|
|
16
|
-
* Polish language converter.
|
|
17
|
-
*
|
|
18
|
-
* Implements Polish number words using the Slavic language pattern:
|
|
19
|
-
* - Polish number words (jeden, dwa, trzy, cztery, pięć...)
|
|
20
|
-
* - Complex Slavic three-form pluralization (tysiąc/tysiące/tysięcy)
|
|
21
|
-
* - Polish-specific declension patterns
|
|
22
|
-
* - Distinctive Polish phonology and orthography
|
|
23
|
-
*
|
|
24
|
-
* Key Features:
|
|
25
|
-
* - Three-form pluralization system shared across Slavic languages
|
|
26
|
-
* * Form 1 (singular): 1 (e.g., "tysiąc")
|
|
27
|
-
* * Form 2 (few): 2-4, 22-24, 32-34... excluding teens (e.g., "tysiące")
|
|
28
|
-
* * Form 3 (many): all other numbers (e.g., "tysięcy")
|
|
29
|
-
* - Chunk-based decomposition (splits into groups of 3 digits: ones, thousands, millions, etc.)
|
|
30
|
-
* - Large number handling via thousands[] array with indexed [singular, few, many] forms
|
|
31
|
-
*
|
|
32
|
-
* Features:
|
|
33
|
-
* - Polish diacritical marks (ą, ć, ę, ł, ń, ś, ź, ż)
|
|
34
|
-
* - Gender and case agreement
|
|
35
|
-
* - Polish-specific number word endings
|
|
36
|
-
*
|
|
37
|
-
* Inherits from SlavicLanguage for complex pluralization algorithms.
|
|
38
|
-
*/
|
|
39
|
-
export class Polish extends SlavicLanguage {
|
|
40
|
-
ones: {
|
|
41
|
-
1: string;
|
|
42
|
-
2: string;
|
|
43
|
-
3: string;
|
|
44
|
-
4: string;
|
|
45
|
-
5: string;
|
|
46
|
-
6: string;
|
|
47
|
-
7: string;
|
|
48
|
-
8: string;
|
|
49
|
-
9: string;
|
|
50
|
-
};
|
|
51
|
-
tens: {
|
|
52
|
-
0: string;
|
|
53
|
-
1: string;
|
|
54
|
-
2: string;
|
|
55
|
-
3: string;
|
|
56
|
-
4: string;
|
|
57
|
-
5: string;
|
|
58
|
-
6: string;
|
|
59
|
-
7: string;
|
|
60
|
-
8: string;
|
|
61
|
-
9: string;
|
|
62
|
-
};
|
|
63
|
-
twenties: {
|
|
64
|
-
2: string;
|
|
65
|
-
3: string;
|
|
66
|
-
4: string;
|
|
67
|
-
5: string;
|
|
68
|
-
6: string;
|
|
69
|
-
7: string;
|
|
70
|
-
8: string;
|
|
71
|
-
9: string;
|
|
72
|
-
};
|
|
73
|
-
hundreds: {
|
|
74
|
-
1: string;
|
|
75
|
-
2: string;
|
|
76
|
-
3: string;
|
|
77
|
-
4: string;
|
|
78
|
-
5: string;
|
|
79
|
-
6: string;
|
|
80
|
-
7: string;
|
|
81
|
-
8: string;
|
|
82
|
-
9: string;
|
|
83
|
-
};
|
|
84
|
-
thousands: {
|
|
85
|
-
1: string[];
|
|
86
|
-
2: string[];
|
|
87
|
-
3: string[];
|
|
88
|
-
4: string[];
|
|
89
|
-
5: string[];
|
|
90
|
-
6: string[];
|
|
91
|
-
7: string[];
|
|
92
|
-
8: string[];
|
|
93
|
-
9: string[];
|
|
94
|
-
10: string[];
|
|
95
|
-
};
|
|
96
|
-
/**
|
|
97
|
-
* Implements Polish-specific three-form pluralization rules.
|
|
98
|
-
*
|
|
99
|
-
* Polish three-form system:
|
|
100
|
-
* - Form 1 (singular): exactly n=1 (e.g., "tysiąc")
|
|
101
|
-
* - Form 2 (few): n ends in 2-4, excluding teens (22-24, 32-34...) (e.g., "tysiące")
|
|
102
|
-
* - Form 3 (many): all other numbers (e.g., "tysięcy")
|
|
103
|
-
*
|
|
104
|
-
* @param {bigint} n The number to classify.
|
|
105
|
-
* @param {Array<string>} forms Array of [singular, few, many] word forms.
|
|
106
|
-
* @returns {string} The appropriate form for the number n.
|
|
107
|
-
*/
|
|
108
|
-
pluralize(n: bigint, forms: Array<string>): string;
|
|
109
|
-
}
|
|
110
|
-
export type SlavicOptions = {
|
|
111
|
-
/**
|
|
112
|
-
* Use feminine forms for numbers.
|
|
113
|
-
*/
|
|
114
|
-
feminine?: boolean;
|
|
115
|
-
};
|
|
116
|
-
import SlavicLanguage from '../classes/slavic-language.js';
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Converts a number to Portuguese cardinal (written) form.
|
|
3
|
-
*
|
|
4
|
-
* @param {number|string|bigint} value The number to convert.
|
|
5
|
-
* @param {Object} [options] Conversion options (see Portuguese class options).
|
|
6
|
-
* @returns {string} The number expressed in Portuguese words.
|
|
7
|
-
* @throws {TypeError} If value is NaN or invalid type.
|
|
8
|
-
* @throws {Error} If value is an invalid number string.
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* convertToWords(42); // 'quarenta e dois'
|
|
12
|
-
* convertToWords('100.5'); // 'cem vírgula cinco'
|
|
13
|
-
*/
|
|
14
|
-
export default function convertToWords(value: number | string | bigint, options?: any): string;
|
|
15
|
-
/**
|
|
16
|
-
* (European) Portuguese language converter.
|
|
17
|
-
*
|
|
18
|
-
* Features:
|
|
19
|
-
* - Gender-aware hundreds (hundredos, duzentos, etc.)
|
|
20
|
-
* - Million/Billion pluralization
|
|
21
|
-
* - "e" (and) conjunction for number combinations
|
|
22
|
-
* - Post-processing to normalize word flow
|
|
23
|
-
*/
|
|
24
|
-
export class Portuguese extends GreedyScaleLanguage {
|
|
25
|
-
static POSTCLEAN_REGEX: RegExp;
|
|
26
|
-
hundreds: {
|
|
27
|
-
1: string;
|
|
28
|
-
2: string;
|
|
29
|
-
3: string;
|
|
30
|
-
4: string;
|
|
31
|
-
5: string;
|
|
32
|
-
6: string;
|
|
33
|
-
7: string;
|
|
34
|
-
8: string;
|
|
35
|
-
9: string;
|
|
36
|
-
};
|
|
37
|
-
finalizeWords(words: any): any;
|
|
38
|
-
}
|
|
39
|
-
import GreedyScaleLanguage from '../classes/greedy-scale-language.js';
|