@antfu/eslint-define-config
Version:
Provide a defineConfig function for .eslintrc.js files
19 lines (15 loc) • 516 B
text/typescript
export type Unprefix<T extends Record<string, any>, Pre extends string> = {
[K in keyof T as K extends `${Pre}${infer U}` ? U : never]: T[K];
};
export type Prefix<T extends Record<string, any>, Pre extends string> = {
// @ts-expect-error
[K in keyof T as `${Pre}${K}`]: T[K];
};
export type RenamePrefix<
T extends Record<string, any>,
Old extends string,
New extends string,
> = Prefix<Unprefix<T, Old>, New>;
export type MergeIntersection<T extends Record<any, any>> = {
[K in keyof T]: T[K];
};