import { Action, Block, Producer } from "../../types/types"; /** * Invokes an **action** on a **value** and returns the original **value**. */ export declare function apply(value: T, action: Action): T; /** * Returns the input **value**. */ export declare function identity(value: T): T; /** * Returns a wrapper function over an input function which produces a number. The wrapper function is * identical to the original function but always returns the negative of the original's return value. */ export declare function negate number>(fn: T): T; /** * Returns false. */ export declare function no(): false; /** * Takes an arbitrary number of arguments of any type, does nothing and returns undefined. */ export declare function noop(...args: any[]): undefined; /** * Returns a wrapper function over a **predicate** that returns true when the predicate is false and false when the * predicate it true. */ export declare function not boolean>(predicate: T): T; /** * Immediately invokes a callback and returns the result. */ export declare function run(producer: Producer): T; /** * Immediately invokes a callback. */ export declare function run(block: Block): void; /** * Invokes a **callback** function **count** times. The **callback** is passed the current index of the loop and an * **end** callback. If **end** is invoked the loop will exit. */ export declare function times(count: number, callback: (index: number, end: () => void) => void): void; /** * Returns true. */ export declare function yes(): true;