import { WsdlNext } from 'wsdl-next';
import { SoapBodyAttributes, SoapBodyParams, SoapParams } from './SoapTypes';
export default class SoapRequest {
    private readonly url;
    private readonly clientParams;
    private wsdl;
    private readonly requestAgent;
    constructor(url: string, params: SoapParams, wsdl: WsdlNext);
    getRequestHeadParams(): Promise<string[]>;
    getRequestEnvelopeParams(): Promise<{
        soapEnv: string;
        xml_schema: string;
        namespaces: {
            short: string;
            full: string;
        }[];
    }>;
    static getTagAttributes(attributes?: {}): string;
    getParamAsString(key: string, value: string, attributes: SoapBodyAttributes): any;
    getMethodParamRequestString(requestParams: any, paramKey: any, bodyParams: SoapBodyParams): any;
    getRequestParamsAsString(method: string, bodyParams: SoapBodyParams, attributes: SoapBodyAttributes): Promise<any>;
    getRequestXml(method: string, bodyParams: SoapBodyParams, attributes: SoapBodyAttributes): Promise<string>;
    request(body: string): Promise<string>;
    call(method: string, bodyParams: SoapBodyParams, attributes: SoapBodyAttributes): Promise<string>;
}
