import { AddOriginKeyRequest, AddOriginKeyResponse, SendTransactionResponse, SimulateContractExecutionResponse } from "./types";
import Archethic from "..";
import TransactionBuilder from "../transaction_builder";
import { TransactionFee } from "../types";
export declare class NodeRPCClient {
    private client;
    private core;
    constructor(archethic: Archethic);
    callFunction(contractAddress: string, functionName: string, args: any[]): Promise<any>;
    getTransactionFee(tx: TransactionBuilder): Promise<TransactionFee>;
    sendTransaction(tx: TransactionBuilder): Promise<SendTransactionResponse>;
    addOriginKey(origin: AddOriginKeyRequest): Promise<AddOriginKeyResponse>;
    simulateContractExecution(tx: TransactionBuilder): Promise<SimulateContractExecutionResponse[]>;
    handleRequest(jsonRPCRequest: any): Promise<any>;
}
