Skip to content

Commit

Permalink
Enabling shorter import paths
Browse files Browse the repository at this point in the history
  • Loading branch information
actions committed May 13, 2021
1 parent 18e6998 commit 041c61f
Show file tree
Hide file tree
Showing 187 changed files with 8,923 additions and 258 deletions.
196 changes: 0 additions & 196 deletions .github/workflows/ci.yaml

This file was deleted.

46 changes: 2 additions & 44 deletions .gitignore
@@ -1,44 +1,2 @@
# Logs
logs
*.log
npm-debug.log*

# Runtime data
pids
*.pid
*.seed

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# node-waf configuration
.lock-wscript

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules
jspm_packages

# Optional npm cache directory
.npm

# Optional REPL history
.node_repl_history

.vscode

.DS_Store

/dist
/deno_dist

/node_modules
19 changes: 19 additions & 0 deletions MethodNames.d.ts
@@ -0,0 +1,19 @@
/**
* Takes as type argument an Api interface and return
* an union type constituted of all the properties names
* whose values are functions.
*
* Example:
*
* interface Api {
* getFoo(): number;
* getBar(): string;
* p: object;
* }
*
* MethodNames<Api> is "getFoo" | "getBar"
*
*/
export declare type MethodNames<Api> = NonNullable<{
[Key in keyof Api]: Api[Key] extends ((...args: any[]) => unknown) | undefined ? Key : never;
}[keyof Api]>;
21 changes: 21 additions & 0 deletions MethodNames.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions MethodNames.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions Param0.d.ts
@@ -0,0 +1,3 @@
import type { Parameters } from "./Parameters";
/** Shorthand for Parameters<typeof f>[0] https://docs.tsafe.dev/param0 */
export declare type Param0<T extends ((...args: any[]) => unknown) | null | undefined | false | ""> = Parameters<T>[0];
4 changes: 4 additions & 0 deletions Param0.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Param0.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions Parameters.d.ts
@@ -0,0 +1,2 @@
/** https://docs.tsafe.dev/parameters */
export declare type Parameters<T extends ((...args: any[]) => unknown) | null | undefined | false | ""> = T extends (...args: infer P) => any ? P : never;
4 changes: 4 additions & 0 deletions Parameters.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Parameters.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

17 changes: 17 additions & 0 deletions PickOptional.d.ts
@@ -0,0 +1,17 @@
/**
* Like the 'Required' builtin type alias helper
* but it only keeps properties that are marked optional.
*
* Example:
*
* Optional<{ p1: string; p2?: string; p3?: number; }>
* is the type
* { p2: string; p3: number }
*/
declare type OptionalKeyof<T extends Record<string, unknown>> = Exclude<{
[Key in keyof T]: T extends Record<Key, T[Key]> ? never : Key;
}[keyof T], undefined>;
export declare type PickOptionals<T extends Record<string, unknown>> = {
[Key in OptionalKeyof<T>]: T[Key];
};
export {};
13 changes: 13 additions & 0 deletions PickOptional.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions PickOptional.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions ReturnType.d.ts
@@ -0,0 +1,2 @@
/** https://docs.tsafe.dev/returntype */
export declare type ReturnType<T extends ((...args: any[]) => unknown) | undefined | null | false | ""> = T extends (...args: any[]) => infer R ? (R extends PromiseLike<infer J> ? J : R) : never;
10 changes: 10 additions & 0 deletions ReturnType.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions ReturnType.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions UnpackPromise.d.ts
@@ -0,0 +1,6 @@
/**
* Use case:
* declare const pr: Promise<string[]>;
* const x: UnpackPromise<typeof pr>; <== x is string[]
*/
export declare type UnpackPromise<T extends PromiseLike<unknown> | undefined | null | false | ""> = T extends PromiseLike<infer U> ? U : never;
3 changes: 3 additions & 0 deletions UnpackPromise.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions UnpackPromise.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions assert.d.ts
@@ -0,0 +1,6 @@
/** https://docs.tsafe.dev/assert#error-thrown */
export declare class AssertionError extends Error {
constructor(msg: string | undefined);
}
/** https://docs.tsafe.dev/assert */
export declare function assert(condition: any, msg?: string): asserts condition;

0 comments on commit 041c61f

Please sign in to comment.