export = codegen; | |
/** | |
* Appends code to the function's body. | |
* @param [formatStringOrScope] Format string or, to finish the function, an object of additional scope variables, if any | |
* @param [formatParams] Format parameters | |
* @returns Itself or the generated function if finished | |
* @throws {Error} If format parameter counts do not match | |
*/ | |
type Codegen = (formatStringOrScope?: (string|{ [k: string]: any }), ...formatParams: any[]) => (Codegen|Function); | |
/** | |
* Begins generating a function. | |
* @param functionParams Function parameter names | |
* @param [functionName] Function name if not anonymous | |
* @returns Appender that appends code to the function's body | |
*/ | |
declare function codegen(functionParams: string[], functionName?: string): Codegen; | |
/** | |
* Begins generating a function. | |
* @param [functionName] Function name if not anonymous | |
* @returns Appender that appends code to the function's body | |
*/ | |
declare function codegen(functionName?: string): Codegen; | |
declare namespace codegen { | |
/** When set to `true`, codegen will log generated code to console. Useful for debugging. */ | |
let verbose: boolean; | |
} | |