/** * A no-arg function, returning T. */ export type Fn0 = () => T; /** * A single arg function from A to B. */ export type Fn = (a: A) => B; /** * A 2-arg function from A,B to C. */ export type Fn2 = (a: A, b: B) => C; /** * A 3-arg function from A,B,C to D. */ export type Fn3 = (a: A, b: B, c: C) => D; /** * A 4-arg function from A,B,C,D to E. */ export type Fn4 = (a: A, b: B, c: C, d: D) => E; /** * A 5-arg function from A,B,C,D,E to F. */ export type Fn5 = (a: A, b: B, c: C, d: D, e: E) => F; /** * A 6-arg function from A,B,C,D,E,F to G. */ export type Fn6 = (a: A, b: B, c: C, d: D, e: E, f: F) => G; /** * A 7-arg function from A,B,C,D,E,F,G to H. */ export type Fn7 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G) => H; /** * A 8-arg function from A,B,C,D,E,F,G,H to I. */ export type Fn8 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H) => I; /** * A 9-arg function from A,B,C,D,E,F,G,H,I to J. */ export type Fn9 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H, i: I) => J; /** * A 10-arg function from A,B,C,D,E,F,G,H,I,J to K. */ export type Fn10 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H, i: I, j: J) => K; export type FnO = (a: A, ...args: any[]) => B; export type FnO2 = (a: A, b: B, ...args: any[]) => C; export type FnO3 = (a: A, b: B, c: C, ...args: any[]) => D; export type FnO4 = (a: A, b: B, c: C, d: D, ...args: any[]) => E; export type FnO5 = (a: A, b: B, c: C, d: D, e: E, ...args: any[]) => F; export type FnO6 = (a: A, b: B, c: C, d: D, e: E, f: F, ...args: any[]) => G; export type FnO7 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G, ...args: any[]) => H; export type FnO8 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H, ...args: any[]) => I; export type FnO9 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H, i: I, ...args: any[]) => J; export type FnO10 = (a: A, b: B, c: C, d: D, e: E, f: F, g: G, h: H, i: I, j: J, ...args: any[]) => K; /** * An untyped vararg arg function to type T. */ export type FnAny = (...args: any[]) => T; /** * A typed vararg arg function from A to B. */ export type FnAnyT = (...args: A[]) => B; /** * 1-arg function with arg of type A and return type B (defaults * to A) */ export type FnU = Fn; /** * 2-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU2 = Fn2; /** * 3-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU3 = Fn3; /** * 4-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU4 = Fn4; /** * 5-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU5 = Fn5; /** * 6-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU6 = Fn6; /** * 7-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU7 = Fn7; /** * 8-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU8 = Fn8; /** * 9-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU9 = Fn9; /** * 10-arg function with all args uniformly of type A and return type B (defaults * to A) */ export type FnU10 = Fn10; export type FnN = FnU; export type FnN2 = FnU2; export type FnN3 = FnU3; export type FnN4 = FnU4; export type FnN5 = FnU5; export type FnN6 = FnU6; export type FnN7 = FnU7; export type FnN8 = FnU8; export type FnN9 = FnU9; export type FnN10 = FnU10; /** * Identity function: `(x) => x` * * @param x */ export declare const identity: (x: T) => T; /** * Zero-arg function always returning true. */ export declare const always: () => boolean; /** * Zero-arg function always returning false. */ export declare const never: () => boolean; //# sourceMappingURL=fn.d.ts.map