import { Request } from "./../../GN-common/entity/operationRequest/base/Request";
import express from "express";
import { OperationResponse } from "./../../GN-common/entity/operationResponse/OperationResponse";
import { ApiMiddleware } from "./../middleware/ApiMiddleware";
import { GNServer } from "./../../GNServer";
import { AntiDdosMiddleware } from "./../middleware/AntiDdosMiddleware";
interface OnHttpRequest {
    (request: Request): Promise<OperationResponse>;
}
export declare class HttpAppHandler {
    private _onRequestCb;
    private apiMiddleware;
    private antiDdosMiddleware;
    private gnServer;
    private enableSendAndReceiveDebug;
    private enablePostViaMsgPack;
    private enablePostViaJson;
    private router;
    private apiJsonRouter;
    private apiMsgPackRouter;
    setRouter(router: express.Express): void;
    setApiMiddleware(apiMiddleware: ApiMiddleware): void;
    setAntiDdosMiddleware(antiDdosMiddleware: AntiDdosMiddleware): void;
    setGNServer(gnServer: GNServer): void;
    setOnHttpRequest(_onRequestCb: OnHttpRequest): void;
    setEnableSendAndReceiveDebug(enableSendAndReceiveDebug: boolean): void;
    setEnablePostViaMsgPack(enablePostViaMsgPack: boolean): void;
    setEnablePostViaJson(enablePostViaJson: boolean): void;
    run(): void;
    private onHttpRequest;
}
export {};
