@atomist/automation-client
Version:
Atomist API for software low-level client
21 lines • 660 B
TypeScript
/**
* Interface for a no-arg function that can create an instance of the given type
*/
export declare type Factory<T> = () => T;
/**
* Interface for objects with a no-arg constructor
*/
export declare type Constructor<T> = new () => T;
/**
* A no-arg constructor or a no-arg function that can create
* type T
*/
export declare type Maker<T> = Factory<T> | Constructor<T>;
/**
* Convert a factory function with no arguments or a class with a no arg
* constructor to a factory function
* @param {Maker<T>} fact
* @return {Factory<T>}
*/
export declare function toFactory<T>(fact: Maker<T>): Factory<T>;
//# sourceMappingURL=constructionUtils.d.ts.map