@robotlegsjs/phaser
Version:
RobotlegsJS integration with Phaser Scene Manager
37 lines (36 loc) • 1.24 kB
TypeScript
import { IClass, IInjector, IType, ITypeFilter } from "@robotlegsjs/core";
import { IMediatorManager } from "../api/IMediatorManager";
import { IMediatorMapping } from "../api/IMediatorMapping";
/**
* @protected
*/
export declare abstract class AbstractMediatorFactory {
protected _mediators: Map<any, any>;
protected _injector: IInjector;
protected _manager: IMediatorManager;
/**
* @private
*/
constructor(injector: IInjector);
/**
* @private
*/
getMediator(item: any, mapping: IMediatorMapping): any;
/**
* @private
*/
createMediators(item: any, type: IClass<any>, mappings: any[]): any[];
/**
* @private
*/
removeMediators(item: any): void;
/**
* @private
*/
removeAllMediators(): void;
protected createMediator(item: any, mapping: IMediatorMapping): any;
protected addMediator(mediator: any, item: any, mapping: IMediatorMapping): void;
protected mapTypeForFilterBinding(filter: ITypeFilter, type: IClass<any>, item: any): void;
protected unmapTypeForFilterBinding(filter: ITypeFilter, type: IClass<any>, item: any): void;
protected requiredTypesFor(filter: ITypeFilter, type: IClass<any>): IType<any>[];
}