import { RequestContext } from "./operationContext";
import { Message } from "./message";
export declare class ExpressRequestContext implements RequestContext {
    message: Message;
    user: any;
    /**
     * @hidden
     */
    private _res;
    /**
     * @hidden
     */
    private _req;
    constructor(req: ExpressRequest, res: ExpressResponse);
    abort(): void;
    reply(message: Message): void;
    addListener(event: string, listener: Function): RequestContext;
    removeListener(event: string, listener: Function): RequestContext;
}
/**
 * @hidden
 */
export interface ExpressRequest {
    body: any;
    user: any;
    method: string;
    headers: {
        [key: string]: string;
    };
    originalUrl: string;
    addListener(event: string, listener: Function): any;
    removeListener(event: string, listener: Function): any;
}
/**
 * @hidden
 */
export interface ExpressResponse {
    status(code: number): ExpressResponse;
    end(): void;
    end(data?: any, encoding?: string): void;
    set(fields: any): ExpressResponse;
    send(body: any): ExpressResponse;
}
