import { InstanceWrapper } from '../core';
import { ExcludeRouteMetadataInterface, HandlerTransform, WebSocketAdapter } from '../contracts';
import { AccessResourceInterface, ExceptionFilterInterface, GlobalPrefixOptionsInterface, InterceptorInterface } from "../contracts";
import { CanActivate } from '../contracts/can-activate';
export declare class ApplicationConfig {
    private ioAdapter;
    private globalPrefix;
    private globalPrefixOptions;
    private globalHandlers;
    private globalFilters;
    private globalInterceptors;
    private globalGuards;
    private globalAccessResource;
    private readonly globalRequestHandlers;
    private readonly globalRequestFilters;
    private readonly globalRequestInterceptors;
    private readonly globalRequestGuards;
    private readonly globalRequestAccessResource;
    constructor(ioAdapter?: WebSocketAdapter | null);
    setGlobalPrefix(prefix: string): void;
    getGlobalPrefix(): string;
    setGlobalPrefixOptions(options: GlobalPrefixOptionsInterface<ExcludeRouteMetadataInterface>): void;
    getGlobalPrefixOptions(): GlobalPrefixOptionsInterface<ExcludeRouteMetadataInterface>;
    setIoAdapter(ioAdapter: WebSocketAdapter): void;
    getIoAdapter(): WebSocketAdapter;
    addGlobalHandler(handler: HandlerTransform<any>): void;
    useGlobalHandlers(...pipes: HandlerTransform<any>[]): void;
    getGlobalFilters(): ExceptionFilterInterface[];
    addGlobalFilter(filter: ExceptionFilterInterface): void;
    useGlobalFilters(...filters: ExceptionFilterInterface[]): void;
    getGlobalHandlers(): HandlerTransform<any>[];
    getGlobalInterceptors(): InterceptorInterface[];
    addGlobalInterceptor(interceptor: InterceptorInterface): void;
    useGlobalInterceptors(...interceptors: InterceptorInterface[]): void;
    getGlobalGuards(): CanActivate[];
    addGlobalGuard(guard: CanActivate): void;
    useGlobalGuards(...guards: CanActivate[]): void;
    getGlobalAccessResources(): AccessResourceInterface[];
    addGlobalAccessResource(guard: AccessResourceInterface): void;
    useGlobalAccessResource(...guards: AccessResourceInterface[]): void;
    addGlobalRequestInterceptor(wrapper: InstanceWrapper<InterceptorInterface>): void;
    getGlobalRequestInterceptors(): InstanceWrapper<InterceptorInterface>[];
    addGlobalRequestHandler(wrapper: InstanceWrapper<HandlerTransform>): void;
    getGlobalRequestHandlers(): InstanceWrapper<HandlerTransform>[];
    addGlobalRequestFilter(wrapper: InstanceWrapper<ExceptionFilterInterface>): void;
    getGlobalRequestFilters(): InstanceWrapper<ExceptionFilterInterface>[];
    addGlobalRequestGuard(wrapper: InstanceWrapper<CanActivate>): void;
    getGlobalRequestGuards(): InstanceWrapper<CanActivate>[];
    addGlobalRequestAccessResource(wrapper: InstanceWrapper<AccessResourceInterface>): void;
    getGlobalRequestAccessResource(): InstanceWrapper<AccessResourceInterface>[];
}
//# sourceMappingURL=application-config.d.ts.map