Giant blob of minor changes
[dotfiles/.git] / .config / coc / extensions / node_modules / coc-prettier / node_modules / prettier-eslint / node_modules / typescript / lib / lib.es2018.intl.d.ts
1 /*! *****************************************************************************
2 Copyright (c) Microsoft Corporation. All rights reserved.
3 Licensed under the Apache License, Version 2.0 (the "License"); you may not use
4 this file except in compliance with the License. You may obtain a copy of the
5 License at http://www.apache.org/licenses/LICENSE-2.0
6
7 THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8 KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
9 WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
10 MERCHANTABLITY OR NON-INFRINGEMENT.
11
12 See the Apache Version 2.0 License for specific language governing permissions
13 and limitations under the License.
14 ***************************************************************************** */
15
16
17
18 /// <reference no-default-lib="true"/>\r
19
20
21 declare namespace Intl {\r
22 \r
23     // http://cldr.unicode.org/index/cldr-spec/plural-rules#TOC-Determining-Plural-Categories\r
24     type LDMLPluralRule = "zero" | "one" | "two" | "few" | "many" | "other";\r
25     type PluralRuleType = "cardinal" | "ordinal";\r
26 \r
27     interface PluralRulesOptions {\r
28         localeMatcher?: "lookup" | "best fit";\r
29         type?: PluralRuleType;\r
30         minimumIntegerDigits?: number;\r
31         minimumFractionDigits?: number;\r
32         maximumFractionDigits?: number;\r
33         minimumSignificantDigits?: number;\r
34         maximumSignificantDigits?: number;\r
35     }\r
36 \r
37     interface ResolvedPluralRulesOptions {\r
38         locale: string;\r
39         pluralCategories: LDMLPluralRule[];\r
40         type: PluralRuleType;\r
41         minimumIntegerDigits: number;\r
42         minimumFractionDigits: number;\r
43         maximumFractionDigits: number;\r
44         minimumSignificantDigits?: number;\r
45         maximumSignificantDigits?: number;\r
46     }\r
47 \r
48     interface PluralRules {\r
49         resolvedOptions(): ResolvedPluralRulesOptions;\r
50         select(n: number): LDMLPluralRule;\r
51     }\r
52 \r
53     const PluralRules: {\r
54         new (locales?: string | string[], options?: PluralRulesOptions): PluralRules;\r
55         (locales?: string | string[], options?: PluralRulesOptions): PluralRules;\r
56         supportedLocalesOf(\r
57             locales: string | string[],\r
58             options?: PluralRulesOptions,\r
59         ): string[];\r
60     };\r
61 }\r