import { ApplicationConfig } from '../../app/application-config';
import { ContextCreator } from '../../helpers/context-creator';
import { ContainerIoC } from '../injector';
import { InstanceWrapper } from '../injector/instance-wrapper';
import { HandlerTransform, Type } from "../../contracts";
import { ControllerType } from "../../types";
export declare class HandlersContextCreator extends ContextCreator {
    private readonly container;
    private readonly config?;
    private moduleContext;
    constructor(container: ContainerIoC, config?: ApplicationConfig);
    create(instance: ControllerType, callback: (...args: unknown[]) => unknown, moduleKey: string, contextId?: import("../injector").ContextId, inquirerId?: string): HandlerTransform[];
    createConcreteContext<T extends any[], R extends any[]>(metadata: T, contextId?: import("../injector").ContextId, inquirerId?: string): R;
    getHandlerInstance(handler: Function | HandlerTransform, contextId?: import("../injector").ContextId, inquirerId?: string): HandlerTransform | null;
    getInstanceByMetaType(metaType: Type<unknown>): InstanceWrapper | undefined;
    getGlobalMetadata<T extends unknown[]>(contextId?: import("../injector").ContextId, inquirerId?: string): T;
    setModuleContext(context: string): void;
}
//# sourceMappingURL=handlers-context-creator.d.ts.map