@cosmicmind/patternjs
Version:
A library of Design Patterns in TypeScript.
17 lines • 568 B
TypeScript
export type Pluginable<T> = {
get name(): string;
execute(...args: T[]): void;
};
export declare abstract class Plugin<T> implements Pluginable<T> {
abstract get name(): string;
abstract execute(...args: T[]): void;
}
export declare class PluginManager<T> {
protected plugins: Plugin<T>[];
constructor();
register(...plugins: Plugin<T>[]): boolean;
deregister(...plugins: Plugin<T>[] | string[]): boolean;
execute(...args: T[]): void;
protected indexOf(plugin: Plugin<T> | string): number;
}
//# sourceMappingURL=Plugin.d.ts.map