import JcBase from "./base";
/**
 * request data from node and submit data to node directly, instead of `JcExchange` class
 *
 * creation example:
 *
 * 1: `new JcNodeRpc(["http://localhost:8080", "https://localhost:8090"])`
 *
 * 2: `new JcNodeRpc(["localhost"], 8080, false)`
 *
 * @export
 * @class JcNodeRpc
 * @extends {JcBase}
 */
export default class JcNodeRpc extends JcBase {
    constructor(...args: any[]);
    /**
     * get sequence
     *
     * @param {string} address wallet public key
     * @param {string} _url rpc server host
     * @returns {Promise<number>}
     * @memberof JcNodeRpc
     */
    getSequence(address: string, _url?: string): Promise<number>;
    /**
     * request transaction detail
     *
     * @param {string} hash traction hash
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    requestTransaction(hash: string): Promise<any>;
    /**
     * create order with signed data
     *
     * @link [How to sign and create](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L99)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    createOrder(blob: string, _url?: string): Promise<any>;
    /**
     * cancel order with signed data
     *
     * @link [How to sign and cancel](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L124)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    cancelOrder(blob: string, _url?: string): Promise<any>;
    /**
     * transfer token with signed data
     *
     * @link [How to sign and transfer](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L153)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    transfer(blob: string, _url?: string): Promise<any>;
    /**
     * set brokerage with signed data
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    setBrokerage(blob: string, _url?: string): Promise<any>;
    /**
     * add blacklist with signed data
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    addBlackList(blob: string, _url?: string): Promise<any>;
    /**
     * remove blacklist with signed data
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    removeBlackList(blob: string, _url?: string): Promise<any>;
    /**
     * set ManageIssuer with signed data
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    setManageIssuer(blob: string, _url?: string): Promise<any>;
    /**
     * issueSet with signed data
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    issueSet(blob: string, _url?: string): Promise<any>;
    /**
     * set signer list with signed data
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    setSignerList(blob: string, _url?: string): Promise<any>;
    /**
     * disable/enable account master key
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    setAccount(blob: string, _url?: string): Promise<any>;
    /**
     * send raw transaction
     *
     * @link [How to sign and set](https://github.com/JCCDex/jcc_exchange/blob/master/src/index.ts#L182)
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    sendRawTransaction(blob: string, _url?: string): Promise<any>;
    /**
     * submit multi sign transaction
     *
     * @protected
     * @param {string} params
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    submit_multisigned(params: any, _url?: string): Promise<any>;
    /**
     * submit transaction to specified rpc server
     *
     * @protected
     * @param {string} blob
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    protected submit(blob: string, _url?: string): Promise<any>;
    /**
     * request transaction detail from the fixed rpc host
     *
     * @param {string} hash traction hash
     * @param {string} _url rpc server host
     * @returns {Promise<any>}
     * @memberof JcNodeRpc
     */
    private requestTx;
}
