forked from microsoft/TypeScript
/
declarationEmitBindingPatternWithReservedWord.types
52 lines (38 loc) · 1.59 KB
/
declarationEmitBindingPatternWithReservedWord.types
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
=== tests/cases/compiler/declarationEmitBindingPatternWithReservedWord.ts ===
type LocaleData = Record<string, never>
>LocaleData : { [x: string]: never; }
type ConvertLocaleConfig<T extends LocaleData = LocaleData> = Record<
>ConvertLocaleConfig : ConvertLocaleConfig<T>
string,
T
>;
type LocaleConfig<T extends LocaleData = LocaleData> = Record<string, Partial<T>>;
>LocaleConfig : LocaleConfig<T>
export interface GetLocalesOptions<T extends LocaleData> {
app: unknown;
>app : unknown
default: ConvertLocaleConfig<T>;
>default : ConvertLocaleConfig<T>
config?: LocaleConfig<T> | undefined;
>config : LocaleConfig<T>
name?: string;
>name : string
}
export const getLocales = <T extends LocaleData>({
>getLocales : <T extends LocaleData>({ app, name, default: defaultLocalesConfig, config, }: GetLocalesOptions<T>) => ConvertLocaleConfig<T>
><T extends LocaleData>({ app, name, default: defaultLocalesConfig, config: userLocalesConfig = {},}: GetLocalesOptions<T>): ConvertLocaleConfig<T> => { return defaultLocalesConfig;} : <T extends LocaleData>({ app, name, default: defaultLocalesConfig, config, }: GetLocalesOptions<T>) => ConvertLocaleConfig<T>
app,
>app : unknown
name,
>name : string
default: defaultLocalesConfig,
>default : any
>defaultLocalesConfig : ConvertLocaleConfig<T>
config: userLocalesConfig = {},
>config : any
>userLocalesConfig : LocaleConfig<T>
>{} : {}
}: GetLocalesOptions<T>): ConvertLocaleConfig<T> => {
return defaultLocalesConfig;
>defaultLocalesConfig : ConvertLocaleConfig<T>
};