diff options
| author | DivisionByZero <[email protected]> | 2024-09-26 17:50:05 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-09-26 17:50:05 +0200 |
| commit | 9537dfddba882bd93d9a429697fd44bc72428426 (patch) | |
| tree | f60b5b694d5e4e8ddab228aeb20c7b7746685edc /src/utils/types.ts | |
| parent | 424b120a4d94b15b6e77c04a0aaffd0016a9c870 (diff) | |
| download | faker-9537dfddba882bd93d9a429697fd44bc72428426.tar.xz faker-9537dfddba882bd93d9a429697fd44bc72428426.zip | |
infra: update file structure for util/internal (#3141)
Diffstat (limited to 'src/utils/types.ts')
| -rw-r--r-- | src/utils/types.ts | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/src/utils/types.ts b/src/utils/types.ts deleted file mode 100644 index affdda7e..00000000 --- a/src/utils/types.ts +++ /dev/null @@ -1,39 +0,0 @@ -/** - * Type that provides auto-suggestions but also any string. - * - * @see https://github.com/microsoft/TypeScript/issues/29729#issuecomment-471566609 - */ -export type LiteralUnion<TSuggested extends TBase, TBase = string> = - | TSuggested - | (TBase & { zz_IGNORE_ME?: never }); - -/** - * A function that returns a value. - * - * `Function` cannot be used instead because it doesn't accept class declarations. - * These would fail when invoked since they are invoked without the `new` keyword. - */ -export type Callable = ( - // TODO @Shinigami92 2023-02-14: This `any` type can be fixed by anyone if they want to. - // eslint-disable-next-line @typescript-eslint/no-explicit-any - ...args: any[] -) => unknown; - -/** - * Type that represents a single method/function name of the given type. - */ -export type MethodOf<TObjectType, TSignature extends Callable = Callable> = { - [Key in keyof TObjectType]: TObjectType[Key] extends TSignature - ? Key extends string - ? Key - : never - : never; -}[keyof TObjectType]; - -/** - * Type that represents all method/function names of the given type. - */ -export type MethodsOf< - TObjectType, - TSignature extends Callable = Callable, -> = ReadonlyArray<MethodOf<TObjectType, TSignature>>; |
