import { IClass, ITypeFilter } from "@robotlegsjs/core";
import { IMediatorMapping } from "../api/IMediatorMapping";
import { IMediatorConfigurator } from "../dsl/IMediatorConfigurator";
/**
 * @private
 */
export declare class MediatorMapping implements IMediatorMapping, IMediatorConfigurator {
    private _matcher;
    /**
     * @inheritDoc
     */
    get matcher(): ITypeFilter;
    private _mediatorClass;
    /**
     * @inheritDoc
     */
    get mediatorClass(): IClass<any>;
    private _guards;
    /**
     * @inheritDoc
     */
    get guards(): any[];
    private _hooks;
    /**
     * @inheritDoc
     */
    get hooks(): any[];
    private _autoRemoveEnabled;
    /**
     * @inheritDoc
     */
    get autoRemoveEnabled(): boolean;
    /**
     * @private
     */
    constructor(matcher: ITypeFilter, mediatorClass: IClass<any>);
    /**
     * @inheritDoc
     */
    withGuards(...guards: any[]): IMediatorConfigurator;
    /**
     * @inheritDoc
     */
    withHooks(...hooks: any[]): IMediatorConfigurator;
    /**
     * @inheritDoc
     */
    autoRemove(value?: boolean): IMediatorConfigurator;
}
