/// <reference types="node" />
import pem from 'pem';
import { TnsCancelarNfse, TnsConsultarLoteRps, TnsConsultarNfseFaixa, TnsConsultarNfsePorRps, TnsConsultarNfseServicoPrestado, TnsConsultarNfseServicoTomado, TnsGerarNfse, TnsRecepcionarLoteRps, TnsRecepcionarLoteRpsSincrono, TnsSubstituirNfse } from '../soap/notafiscalsoap';
import { ImprimirNfseRequest, ReferenceOptions } from '../types/nfseCampinas';
import { ComputeSignatureOptions } from 'xml-crypto/lib/types';
export declare class NfseCampinas {
    protected host: string;
    protected certificate: Buffer;
    protected certPassword: string;
    protected debug: boolean;
    readonly defaultOptions: ReferenceOptions;
    private soapClient;
    constructor(host: string, certificate: Buffer, certPassword: string, debug?: boolean);
    ConsultarNfsePorRps(input: TnsConsultarNfsePorRps): Promise<[result: import("../soap/notafiscalsoap").TnsConsultarNfsePorRpsResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    ConsultarNfseServicoTomado(input: TnsConsultarNfseServicoTomado): Promise<[result: import("../soap/notafiscalsoap").TnsConsultarNfseServicoTomadoResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    RecepcionarLoteRps(input: TnsRecepcionarLoteRps): Promise<[result: import("../soap/notafiscalsoap").TnsRecepcionarLoteRpsResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    RecepcionarLoteRpsSincrono(input: TnsRecepcionarLoteRpsSincrono): Promise<[result: import("../soap/notafiscalsoap").TnsRecepcionarLoteRpsSincronoResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    ConsultarNfseServicoPrestado(input: TnsConsultarNfseServicoPrestado): Promise<[result: import("../soap/notafiscalsoap").TnsConsultarNfseServicoPrestadoResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    CancelarNfse(input: TnsCancelarNfse): Promise<[result: import("../soap/notafiscalsoap").TnsCancelarNfseResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    ConsultarLoteRps(input: TnsConsultarLoteRps): Promise<[result: import("../soap/notafiscalsoap").TnsConsultarLoteRpsResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    ConsultarNfseFaixa(input: TnsConsultarNfseFaixa): Promise<[result: import("../soap/notafiscalsoap").TnsConsultarNfseFaixaResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    GerarNfse(input: TnsGerarNfse): Promise<[result: import("../soap/notafiscalsoap").TnsGerarNfseResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    SubstituirNfse(input: TnsSubstituirNfse): Promise<[result: import("../soap/notafiscalsoap").TnsSubstituirNfseResponse, rawResponse: any, soapHeader: any, rawRequest: any]>;
    ImprimirNfse(param: ImprimirNfseRequest): Promise<Buffer>;
    protected getSignedXml(xml: string, computeOptions: ComputeSignatureOptions, referenceOptions: ReferenceOptions, pemCert: pem.Pkcs12ReadResult): string;
    private logLastRequestResponse;
    private getPemCert;
    private getSoapClient;
}
