@ace-util/injects
Version:
Utils.
39 lines (38 loc) • 1.05 kB
TypeScript
export declare type Callback = {
func: Function;
acceptedArgs: number;
};
export declare class Inject {
static buildPreinitializedStorage(filters: Record<string, InstanceType<typeof Inject> | Record<number, Callback[]>>): Record<string, Inject>;
private callbacks;
private doingAction;
get filters(): {
[priority: number]: Callback[];
};
/**
* Check if any filter has been registered
* @since
*
*/
hasFilter(functionToCheck?: Function | boolean): Function | boolean;
/**
* Add filter
* @since
*
*/
addFilter(callback: Function, priority?: number, acceptedArgs?: number): void;
/**
* Remove filter
* @since
*
*/
removeFilter(functionToRemove: Function, priority?: number): boolean;
/**
* Remove filter
* @since
*
*/
removeAllFilters(priority?: boolean | number): void;
applyFilters<T = unknown, R = T>(value: T, ...args: unknown[]): Promise<R>;
doAction(...args: unknown[]): Promise<void>;
}