/**
* Function represented as a type.
*/
export type Function = (a: A) => B;
/**
* compose two functions into one.
*/
export declare const compose: (f: Function, g: Function) => (a: A) => C;
/**
* compose3 functions into one.
*/
export declare const compose3: (f: Function, g: Function, h: Function) => (a: A) => D;
/**
* compose4 functions into one.
*/
export declare const compose4: (f: Function, g: Function, h: Function, i: Function) => (a: A) => E;
/**
* compose5 functions into one.
*/
export declare const compose5: (f: Function, g: Function, h: Function, i: Function, j: Function) => (a: A) => F;
/**
* cons given two values, ignore the second and always return the first.
*/
export declare const cons: (a: A) => (_: B) => A;
/**
* flip the order of arguments to a curried function that takes 2 arguments.
*/
export declare const flip: (f: (a: A) => (b: B) => C) => (b: B) => (a: A) => C;
/**
* identity function.
*/
export declare const identity: (a: A) => A;
export declare const id: (a: A) => A;
/**
* curry an ES function that accepts 2 parameters.
*/
export declare const curry: (f: (a: A, b: B) => C) => (a: A) => (b: B) => C;
/**
* curry3 curries an ES function that accepts 3 parameters.
*/
export declare const curry3: (f: (a: A, b: B, c: C) => D) => (a: A) => (b: B) => (c: C) => D;
/**
* curry4 curries an ES function that accepts 4 parameters.
*/
export declare const curry4: (f: (a: A, b: B, c: C, d: D) => E) => (a: A) => (b: B) => (c: C) => (d: D) => E;
/**
* curry5 curries an ES function that accepts 5 parameters.
*/
export declare const curry5: (f: (a: A, b: B, c: C, d: D, e: E) => F) => (a: A) => (b: B) => (c: C) => (d: D) => (e: E) => F;
/**
* apply is partial application for a function of 2 arity.
*/
export declare const apply: (f: (a: A, b: B) => C, a: A) => (b: B) => C;
/**
* apply3 is partial application for a function of 3 arity.
*/
export declare const apply3: (f: (a: A, b: B, c: C) => D, a: A, b: B) => (c: C) => D;
/**
* apply4 is partial application for a function of 4 arity.
*/
export declare const apply4: (f: (a: A, b: B, c: C, d: D) => E, a: A, b: B, c: C) => (d: D) => E;
/**
* apply5 is partial application for a function of 4 arity.
*/
export declare const apply5: (f: (a: A, b: B, c: C, d: D, e: E) => F, a: A, b: B, c: C, d: D) => (e: E) => F;
/**
* noop function
*/
export declare const noop: () => void;