@jmodule/client
Version:
JModule运行时
43 lines (42 loc) • 1.12 kB
TypeScript
export interface ModuleHookHandle {
(...args: any[]): any[] | Promise<any[]>;
}
export declare class ModuleHook {
/**
* 新增模块过程 hook
*
* @param {String} hookName
* @param {Function} handle 需要新增的hook函数
* @return {var}
*/
static addHook(hookName: string, handle: ModuleHookHandle): void;
/**
* 移除模块过程 hook
*
* @param {String} hookName
* @param {Function} handle 需要移除的hook函数
* @return {var}
*/
static removeHook(hookName: string, handle: ModuleHookHandle): void;
/**
* 清理所有 hook
*
* @param {String} hookName
* @return {var}
*/
static clearHooks(hookName: string): void;
/**
* 异步执行指定 hook
*
* @param {String} hookName
* @return {var}
*/
static runHook(hookName: string, ...inputArgs: any[]): Promise<any[]>;
/**
* 同步执行指定 hook
*
* @param {String} hookName
* @return {var}
*/
static runHookSync(hookName: string, ...inputArgs: any[]): any[];
}