import { wallet } from '@cityofzion/neon-core'; import { Params, RequestArguments } from '@neongd/json-rpc'; import { GetAccountResult, GetProviderResult, InvokeMultiParams, InvokeMultiResult, InvokeParams, InvokeResult, SignMessageParams, SignMessageResult, SignMessageWithoutSaltParams, SignMessageWithoutSaltResult, SignTransactionParams, SignTransactionResult } from '../dapis/Dapi'; import { Expand } from '../utils/typeUtils'; import { Attribute, Invocation, Signer } from '../utils/types'; import { NetworkConfig, NetworkProvider, NetworkProviderOptions } from './NetworkProvider'; export type SigningNetworkProviderOptions = Expand; export declare class SigningNetworkProvider extends NetworkProvider { protected label?: string | undefined; protected options: SigningNetworkProviderOptions; account: wallet.Account; constructor(networkConfigs: NetworkConfig[], defaultNetwork: string, privateKey: string, label?: string | undefined, options?: SigningNetworkProviderOptions); request(args: RequestArguments

): Promise; changeAccount(privateKey: string, label?: string): void; protected handleGetProvider(): Promise; protected handleGetAccount(): Promise; protected handleInvoke(params: InvokeParams): Promise; protected handleInvokeMulti(params: InvokeMultiParams): Promise; protected handleSignMessage(params: SignMessageParams): Promise; protected handleSignMessageWithoutSalt(params: SignMessageWithoutSaltParams): Promise; protected handleSignTransaction(params: SignTransactionParams): Promise; protected populateTransaction(params: { version?: number; nonce?: number; systemFee?: string; networkFee?: string; validUntilBlock?: number; script?: string; invocations?: Invocation[]; attributes?: Attribute[]; signers?: Signer[]; extraSystemFee?: string; extraNetworkFee?: string; network?: string; }): Promise<{ version: number; nonce: number; systemFee: string; networkFee: string; validUntilBlock: number; script: string; attributes: Attribute[]; signers: Signer[]; network: string; }>; protected signTransaction(params: { version: number; nonce: number; systemFee: string; networkFee: string; validUntilBlock: number; script: string; attributes: Attribute[]; signers: Signer[]; network: string; }): Promise<{ txid: string; signedTx: string; publicKey: string; signature: string; }>; protected broadcastTransaction(params: { signedTx: string; network: string; }): Promise<{ nodeUrl: string; }>; }