@newdash/newdash
Version:
javascript/typescript utility library
21 lines (20 loc) • 642 B
TypeScript
/**
* Creates a function that is restricted to invoking `func` once. Repeat calls
* to the function return the value of the first invocation. The `func` is
* invoked with the `this` binding and arguments of the created function.
*
* @since 5.15.0
* @category Function
* @param {Function} func The function to restrict.
* @returns {Function} Returns the new restricted function.
* @example
*
* ```ts
* const initialize = once(createApplication)
* initialize()
* initialize()
* // => `createApplication` is invoked once
* ```
*/
export declare function once<T extends (...args: any[]) => any>(func: T): T;
export default once;