import { Server as HapiServer, Request as HapiRequest, ResponseToolkit, ServerOptions as HapiServerOptions } from '@hapi/hapi';
import { DefinitionHandlerPair } from '../../AbstractBroker';
import { RequestMapper } from '../../IBroker';
import { Action } from '../../../server/types';
import { HttpBroker } from '../HttpBroker';
export declare class HapiBroker extends HttpBroker<HapiServer, HapiRequest, ResponseToolkit, HapiServerOptions> {
    name: string;
    private get logger();
    construct(): void;
    protected requestMapper: RequestMapper;
    protected respond(result: Action, h: ResponseToolkit): import("@hapi/hapi").ResponseObject;
    protected registerHandler(value: DefinitionHandlerPair[], route: string, method: string): void;
    start(): Promise<void>;
    protected paramWrapper(paramName: string): string;
}
