import { Network } from '@btc-vision/bitcoin'; import { Address, AddressTypes, ChallengeSolution, IP2WSHAddress } from '@btc-vision/transaction'; import '../serialize/BigInt.js'; import { Block } from '../block/Block.js'; import { BlockGasParameters } from '../block/BlockGasParameters.js'; import { BlockWitnesses } from '../block/interfaces/IBlockWitness.js'; import { BigNumberish, BlockTag } from '../common/CommonTypes.js'; import { CallResult } from '../contracts/CallResult.js'; import { ContractData } from '../contracts/ContractData.js'; import { IAccessList } from '../contracts/interfaces/IAccessList.js'; import { ICallRequestError } from '../contracts/interfaces/ICallResult.js'; import { ParsedSimulatedTransaction } from '../contracts/interfaces/SimulatedTransaction.js'; import { Epoch } from '../epoch/Epoch.js'; import { EpochWithSubmissions } from '../epoch/EpochSubmission.js'; import { EpochTemplate } from '../epoch/EpochTemplate.js'; import { EpochSubmissionParams } from '../epoch/interfaces/EpochSubmissionParams.js'; import { SubmittedEpoch } from '../epoch/SubmittedEpoch.js'; import { OPNetTransactionTypes } from '../interfaces/opnet/OPNetTransactionTypes.js'; import { MempoolTransactionData } from '../mempool/MempoolTransactionData.js'; import { StoredValue } from '../storage/StoredValue.js'; import { BroadcastedTransaction } from '../transactions/interfaces/BroadcastedTransaction.js'; import { BroadcastedTransactionPackage } from '../transactions/interfaces/BroadcastedTransactionPackage.js'; import { TransactionReceipt } from '../transactions/metadata/TransactionReceipt.js'; import { TransactionBase } from '../transactions/Transaction.js'; import { UTXOsManager } from '../utxos/UTXOsManager.js'; import { JsonRpcPayload } from './interfaces/JSONRpc.js'; import { JSONRpcMethods } from './interfaces/JSONRpcMethods.js'; import { JsonRpcCallResult, JsonRpcResult } from './interfaces/JSONRpcResult.js'; import { MempoolInfo } from './interfaces/mempool/MempoolInfo.js'; import { AddressesInfo, IPublicKeyInfoResult } from './interfaces/PublicKeyInfo.js'; import { ReorgInformation } from './interfaces/ReorgInformation.js'; export declare abstract class AbstractRpcProvider { readonly network: Network; private nextId; private chainId; private gasCache; private lastFetchedGas; private challengeCache; private csvCache; protected constructor(network: Network); private _utxoManager; get utxoManager(): UTXOsManager; getCSV1ForAddress(address: Address): IP2WSHAddress; getPublicKeyInfo(addressRaw: string | Address, isContract: boolean): Promise
; validateAddress(addr: string | Address, network: Network): AddressTypes | null; getBlockNumber(): Promise; getBlockByChecksum(checksum: string, prefetchTxs?: boolean): Promise; getChallenge(): Promise; getBlock(blockNumberOrHash: BlockTag, prefetchTxs?: boolean): Promise; getBlocks(blockNumbers: BlockTag[], prefetchTxs?: boolean): Promise; getBlockByHash(blockHash: string): Promise; getBalance(address: string | Address, filterOrdinals?: boolean): Promise; getBalances(addressesLike: string[], filterOrdinals?: boolean): Promise>; getTransaction(txHash: string): Promise>; getTransactionReceipt(txHash: string): Promise; getNetwork(): Network; getChainId(): Promise; getCode(address: string | Address, onlyBytecode?: boolean): Promise; getStorageAt(address: string | Address, rawPointer: bigint | string, proofs?: boolean, height?: BigNumberish): Promise; call(to: string | Address, data: Uint8Array | string, from?: Address, height?: BigNumberish, simulatedTransaction?: ParsedSimulatedTransaction, accessList?: IAccessList): Promise; gasParameters(): Promise; sendRawTransaction(tx: string, psbt: boolean): Promise; sendRawTransactions(txs: string[]): Promise; sendRawTransactionPackage(txs: string[], isPackage?: boolean): Promise; getBlockWitness(height?: BigNumberish, limit?: number, page?: number): Promise; getReorg(fromBlock?: BigNumberish, toBlock?: BigNumberish): Promise; abstract _send(payload: JsonRpcPayload | JsonRpcPayload[]): Promise; callPayloadSingle(payload: JsonRpcPayload): Promise; callMultiplePayloads(payloads: JsonRpcPayload[]): Promise; buildJsonRpcPayload(method: T, params: unknown[]): JsonRpcPayload; getPublicKeysInfoRaw(addresses: string | string[] | Address | Address[]): Promise; getPublicKeysInfo(addresses: string | string[] | Address | Address[], isContract?: boolean, logErrors?: boolean): Promise; getLatestEpoch(includeSubmissions: boolean): Promise; getEpochByNumber(epochNumber: BigNumberish, includeSubmissions?: boolean): Promise; getEpochByHash(epochHash: string, includeSubmissions?: boolean): Promise; getEpochTemplate(): Promise; submitEpoch(params: EpochSubmissionParams): Promise; getMempoolInfo(): Promise; getPendingTransaction(hash: string): Promise | null>; getLatestPendingTransactions(options?: { address?: string; limit?: number; }): Promise[]>; getLatestPendingTransactionsByAddresses(options: { addresses: string[]; limit?: number; }): Promise[]>; protected abstract providerUrl(url: string): string; private _fetchPendingTransactions; private _gasParameters; private parseSimulatedTransaction; private bigintToBase64; }