import { IClass, IContext, ITypeMatcher } from "@robotlegsjs/core";
import { IViewHandler } from "../../viewManager/api/IViewHandler";
import { IViewMediatorMap } from "../api/IViewMediatorMap";
import { IMediatorMapper } from "../dsl/IMediatorMapper";
import { IMediatorUnmapper } from "../dsl/IMediatorUnmapper";
/**
 * @private
 */
export declare class ViewMediatorMap implements IViewMediatorMap, IViewHandler {
    private _mappers;
    private _logger;
    private _factory;
    private _viewHandler;
    private _NULL_UNMAPPER;
    /**
     * @private
     */
    constructor(context: IContext);
    /**
     * @inheritDoc
     */
    mapMatcher(matcher: ITypeMatcher): IMediatorMapper;
    /**
     * @inheritDoc
     */
    map(view: IClass<Phaser.GameObjects.Container>): IMediatorMapper;
    /**
     * @inheritDoc
     */
    unmapMatcher(matcher: ITypeMatcher): IMediatorUnmapper;
    /**
     * @inheritDoc
     */
    unmap(view: IClass<Phaser.GameObjects.Container>): IMediatorUnmapper;
    /**
     * @inheritDoc
     */
    handleView(view: Phaser.GameObjects.Container, type: any): void;
    /**
     * @inheritDoc
     */
    mediate(view: IClass<Phaser.GameObjects.Container>): void;
    /**
     * @inheritDoc
     */
    unmediate(view: IClass<Phaser.GameObjects.Container>): void;
    /**
     * @inheritDoc
     */
    unmediateAll(): void;
    private _createMapper;
}
