import { ClientContext } from '@hprose/rpc-core';
export default class ProxyClient {
    private hproseClient;
    private hpProxyObj;
    private defaultContext;
    constructor(hproseUrl: string);
    /**
     * 获得ClientContext对象
     * @param httpHeaders Http的请求头里的参数对象
     * @param requestParams Hprose的公共参数
     * @returns
     */
    getClientContext(httpHeaders?: {
        [name: string]: any;
    }, requestParams?: {
        [name: string]: any;
    }): ClientContext;
    getHproseProxy(): Promise<any>;
    /**
     * hprose调用方法
     * @param methodName
     * @param args
     * @param context 上下文环境对象
     * @returns
     */
    hproseInvoke(methodName: string, args?: any[] | undefined, context?: ClientContext): Promise<any>;
    hproseInvokeContext(methodName: string, context: ClientContext | undefined, ...args: any): Promise<any>;
    /**
     * 编码参数方式请求
     * @param request
     */
    hproseInvokeEncode(requestParamsEncode: string): Promise<any>;
    /**
     * 对请求参数编码
     * @param name 方法名
     * @param args 请求参数
     */
    encodeRequest(name: string, ...args: any): string;
}
