7 lines
396 B
TypeScript
7 lines
396 B
TypeScript
/**
|
|
* This function asserts the given value as a function or itself.
|
|
* If the value itself is a function it will evaluate it with the passed in arguments,
|
|
* elsewise it will directly return itself.
|
|
*/
|
|
export declare function assertFunctionOrSelf<T>(functionOrSelf: T, ...args: T extends (...args: any[]) => any ? Parameters<T> : never): T extends (...args: any[]) => any ? ReturnType<T> : T;
|