You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
19 lines
490 B
TypeScript
19 lines
490 B
TypeScript
export type RenderTextCallbackType = (options: {
|
|
text: string;
|
|
key: number;
|
|
isGroup: boolean;
|
|
}) => JSX.Element;
|
|
|
|
export type LocalizerType = typeof window.i18n;
|
|
|
|
/**
|
|
* Recursively get all keys of an object, including nested objects treating them as strings
|
|
*/
|
|
export type RecursiveKeys<T> = T extends object
|
|
? {
|
|
[K in Extract<keyof T, string>]:
|
|
| K
|
|
| (T[K] extends object ? `${K}.${RecursiveKeys<T[K]>}` : never);
|
|
}[Extract<keyof T, string>]
|
|
: never;
|