import { Signer, AccountBalance, AccountId, AccountInfo, Executable, Key, LedgerId, SignerSignature, Transaction, TransactionRecord } from '@hiero-ledger/sdk'; import type { CoreTypes, ISignClient } from '@walletconnect/types'; import { LogLevel } from '../shared/logger'; export declare class DAppSigner implements Signer { private readonly accountId; private readonly signClient; readonly topic: string; private readonly ledgerId; readonly extensionId?: string | undefined; private logger; constructor(accountId: AccountId, signClient: ISignClient, topic: string, ledgerId?: LedgerId, extensionId?: string | undefined, logLevel?: LogLevel); /** * Sets the logging level for the DAppSigner * @param level - The logging level to set */ setLogLevel(level: LogLevel): void; private _getHederaClient; private get _signerAccountId(); request(request: { method: string; params: any; }): Promise; getAccountId(): AccountId; getAccountKey(): Key; getLedgerId(): LedgerId; getNetwork(): { [key: string]: string | AccountId; }; getMirrorNetwork(): string[]; getAccountBalance(): Promise; getAccountInfo(): Promise; getAccountRecords(): Promise; getMetadata(): CoreTypes.Metadata; sign(data: Uint8Array[], signOptions?: { encoding?: 'utf-8' | 'base64'; }): Promise; checkTransaction(transaction: T): Promise; populateTransaction(transaction: T): Promise; /** * Prepares a transaction object for signing using a single node account id. * If the transaction object does not already have a node account id, * generate a random node account id using the Hedera SDK client * * @param transaction - Any instance of a class that extends `Transaction` * @returns transaction - `Transaction` object with signature */ signTransaction(transaction: T): Promise; private _tryExecuteTransactionRequest; private _parseQueryResponse; /** * Executes a free receipt query without signing a transaction. * Enables the DApp to fetch the receipt of a transaction without making a new request * to the wallet. * @param request - The query to execute * @returns The result of the query */ private executeReceiptQueryFromRequest; private _tryExecuteQueryRequest; call(request: Executable): Promise; }