import { G as GetInfoResult, b as GetTransactionResult, c as GetScResult, d as GasEstimateParams, e as GasEstimateResult } from '../wallet-rpc-sY1qJ24S.cjs'; export { f as GetAddressResult, g as GetBalanceParams, h as GetBalanceResult, i as GetHeightResult, j as GetScParams, k as GetTransactionParams, l as GetTransferByTXIDParams, m as GetTransferByTXIDResult, n as GetTransfersParams, o as GetTransfersResult, I as InstallScParams, p as InvokeScParams, q as InvokeScResult, J as JsonRpcRequest, r as JsonRpcResponse, M as MakeIntegratedAddressParams, s as MakeIntegratedAddressResult, P as PayloadRpcArg, S as ScRpcArg, t as SplitIntegratedAddressParams, u as SplitIntegratedAddressResult, T as TransactionInfo, v as TransferDestination, w as TransferEntry, x as TransferParams, y as TransferResult, W as WalletRpcClient, a as WalletRpcConfig } from '../wallet-rpc-sY1qJ24S.cjs'; /** * DERO Daemon RPC client. * * Communicates with the DERO daemon's HTTP JSON-RPC interface * for blockchain queries (height, transaction lookup, etc.). * * Default ports: * - Mainnet: 10102 * - Testnet: 40402 */ /** Daemon RPC client configuration */ type DaemonRpcConfig = { /** Daemon RPC endpoint (default: http://127.0.0.1:10102/json_rpc) */ url?: string; /** Basic auth credentials */ auth?: { username: string; password: string; }; /** Request timeout in ms (default: 30000) */ timeoutMs?: number; }; /** * DERO Daemon RPC client for blockchain queries. */ declare class DaemonRpcClient { private url; private headers; private timeoutMs; private requestCounter; constructor(config?: DaemonRpcConfig); /** * Send a JSON-RPC request to the daemon. */ private rpcCall; /** * Get daemon info including current height, network stats, etc. */ getInfo(): Promise; /** * Get the current blockchain height. * * NOTE: this returns TOPOHEIGHT (the topological order index), which runs * ahead of block height across side-blocks. For anything compared against * GetTransfers.min_height or TransferEntry.height (BLOCK height), use * {@link getBlockHeight} instead. */ getHeight(): Promise; /** * Get the current BLOCK height (info.height), the unit GetTransfers.min_height * filters on. Used to anchor an invoice's wallet-scan floor at creation time. */ getBlockHeight(): Promise; /** * Get the current stable height (finalized blocks). */ getStableHeight(): Promise; /** * Look up transactions by their hashes. */ getTransactions(txHashes: string[]): Promise; /** * Query a smart contract's state, code, and variables. * * @param scid - Smart Contract ID * @param options - Query options (code, variables, specific keys, topoheight) * @returns SC state including code, variables, and balance */ getSc(scid: string, options?: { code?: boolean; variables?: boolean; topoheight?: number; keysstring?: string[]; keysuint64?: number[]; }): Promise; /** * Convenience method to read a specific string-keyed variable from a smart contract. * Uses the targeted `keysstring` query which only fetches the requested key. * * @param scid - Smart Contract ID * @param key - Variable name to read * @returns The raw string value from valuesstring[0], or undefined if not found */ getScVariable(scid: string, key: string): Promise; /** * Get the DERO balance held by a smart contract. * * @param scid - Smart Contract ID * @returns Balance in atomic units */ getScBalance(scid: string): Promise; /** * Estimate the gas cost of a smart contract operation. * * @param params - Gas estimation parameters (same structure as a transfer) * @returns Compute and storage gas costs */ gasEstimate(params: GasEstimateParams): Promise; /** * Check if the daemon is reachable. */ ping(): Promise; /** * Check if the daemon is on testnet. */ isTestnet(): Promise; } export { DaemonRpcClient, type DaemonRpcConfig, GasEstimateParams, GasEstimateResult, GetInfoResult, GetScResult, GetTransactionResult };