Skip to main content
Version: 10.8.0

Class: RpcChannel

Defined in: src/channel/rpc_0_9_0.ts:54

Constructors​

Constructor​

new RpcChannel(optionsOrProvider?): RpcChannel

Defined in: src/channel/rpc_0_9_0.ts:87

Parameters​

optionsOrProvider?​

RpcProviderOptions

Returns​

RpcChannel

Properties​

id​

readonly id: "RPC090" = 'RPC090'

Defined in: src/channel/rpc_0_9_0.ts:55


channelSpecVersion​

readonly channelSpecVersion: "0.9.0" | "0.10.0" | "0.10.2" | "0.10.3" | "0.10.4" = SupportedRpcVersion.v0_9_0

Defined in: src/channel/rpc_0_9_0.ts:60

RPC specification version this Channel class implements


nodeUrl​

nodeUrl: string

Defined in: src/channel/rpc_0_9_0.ts:62


headers​

headers: object

Defined in: src/channel/rpc_0_9_0.ts:64


requestId​

requestId: number

Defined in: src/channel/rpc_0_9_0.ts:66


blockIdentifier​

readonly blockIdentifier: BlockIdentifier

Defined in: src/channel/rpc_0_9_0.ts:68


retries​

readonly retries: number

Defined in: src/channel/rpc_0_9_0.ts:70


waitMode​

readonly waitMode: boolean

Defined in: src/channel/rpc_0_9_0.ts:72

Methods​

readSpecVersion()​

readSpecVersion(): "0.9.0" | "0.10.0" | "0.10.2" | "0.10.3" | "0.10.4" | undefined

Defined in: src/channel/rpc_0_9_0.ts:138

Returns​

"0.9.0" | "0.10.0" | "0.10.2" | "0.10.3" | "0.10.4" | undefined


setChainId()​

setChainId(chainId): void

Defined in: src/channel/rpc_0_9_0.ts:146

Parameters​

chainId​

"0x534e5f4d41494e" | "0x534e5f5345504f4c4941"

Returns​

void


fetch()​

fetch(method, params?, id?): Promise<Response>

Defined in: src/channel/rpc_0_9_0.ts:150

Parameters​

method​

string

params?​

object

id?​

string | number

Returns​

Promise<Response>


errorHandler()​

protected errorHandler(method, params, rpcError?, otherError?): void

Defined in: src/channel/rpc_0_9_0.ts:164

Parameters​

method​

string

params​

any

rpcError?​

Error

otherError?​

any

Returns​

void


fetchEndpoint()​

protected fetchEndpoint<T>(method, params?): Promise<Methods[T]["result"]>

Defined in: src/channel/rpc_0_9_0.ts:176

Type Parameters​

T​

T extends keyof ReadMethods | keyof WriteMethods | keyof TraceMethods

Parameters​

method​

T

params?​

Methods[T]["params"]

Returns​

Promise<Methods[T]["result"]>


getChainId()​

getChainId(): Promise<"0x534e5f4d41494e" | "0x534e5f5345504f4c4941">

Defined in: src/channel/rpc_0_9_0.ts:204

Returns​

Promise<"0x534e5f4d41494e" | "0x534e5f5345504f4c4941">


getSpecVersion()​

getSpecVersion(): Promise<string>

Defined in: src/channel/rpc_0_9_0.ts:213

fetch rpc node specVersion

Returns​

Promise<string>

Example​

this.specVersion = '0.9.0';

setUpSpecVersion()​

setUpSpecVersion(): Promise<"0.9.0" | "0.10.0" | "0.10.2" | "0.10.3" | "0.10.4">

Defined in: src/channel/rpc_0_9_0.ts:221

fetch if undefined else just return this.specVersion

Returns​

Promise<"0.9.0" | "0.10.0" | "0.10.2" | "0.10.3" | "0.10.4">

Example​

this.specVersion = '0.9.0';

getMessagesStatus()​

getMessagesStatus(txHash): Promise<L1L2MessagesStatus>

Defined in: src/channel/rpc_0_9_0.ts:250

Given an l1 tx hash, returns the associated l1_handler tx hashes and statuses for all L1 -> L2 messages sent by the l1 transaction, ordered by the l1 tx sending order

Parameters​

txHash​

BigNumberish

Returns​

Promise<L1L2MessagesStatus>


getStorageProof()​

getStorageProof(classHashes?, contractAddresses?, contractsStorageKeys?, blockIdentifier?): Promise<StorageProof>

Defined in: src/channel/rpc_0_9_0.ts:258

Parameters​

classHashes?​

BigNumberish[] = []

contractAddresses?​

BigNumberish[] = []

contractsStorageKeys?​

CONTRACT_STORAGE_KEYS[] = []

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<StorageProof>


getCompiledCasm()​

getCompiledCasm(classHash): Promise<CASM_COMPILED_CONTRACT_CLASS>

Defined in: src/channel/rpc_0_9_0.ts:277

Parameters​

classHash​

BigNumberish

Returns​

Promise<CASM_COMPILED_CONTRACT_CLASS>


getNonceForAddress()​

getNonceForAddress(contractAddress, blockIdentifier?): Promise<string>

Defined in: src/channel/rpc_0_9_0.ts:285

Parameters​

contractAddress​

BigNumberish

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<string>


getStarknetVersion()​

getStarknetVersion(blockIdentifier?): Promise<string>

Defined in: src/channel/rpc_0_9_0.ts:301

Helper method to get the starknet version from the block, default latest block

Parameters​

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<string>

Starknet version


getBlockLatestAccepted()​

getBlockLatestAccepted(): Promise<BlockHashAndNumber>

Defined in: src/channel/rpc_0_9_0.ts:309

Get the most recent accepted block hash and number

Returns​

Promise<BlockHashAndNumber>


getBlockNumber()​

getBlockNumber(): Promise<number>

Defined in: src/channel/rpc_0_9_0.ts:318

Get the most recent accepted block number redundant use getBlockLatestAccepted();

Returns​

Promise<number>

Number of the latest block


getBlockWithTxHashes()​

getBlockWithTxHashes(blockIdentifier?): Promise<OnlyFirst<BLOCK_WITH_TX_HASHES, object & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PRE_CONFIRMED_BLOCK_HEADER> | OnlyFirst<PRE_CONFIRMED_BLOCK_WITH_TX_HASHES, object & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PRE_CONFIRMED_BLOCK_HEADER>>

Defined in: src/channel/rpc_0_9_0.ts:322

Parameters​

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<OnlyFirst<BLOCK_WITH_TX_HASHES, object & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PRE_CONFIRMED_BLOCK_HEADER> | OnlyFirst<PRE_CONFIRMED_BLOCK_WITH_TX_HASHES, object & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PRE_CONFIRMED_BLOCK_HEADER>>


getBlockWithTxs()​

getBlockWithTxs(blockIdentifier?): Promise<OnlyFirst<BLOCK_WITH_TXS, object & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PRE_CONFIRMED_BLOCK_HEADER> | OnlyFirst<PRE_CONFIRMED_BLOCK_WITH_TXS, object & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PRE_CONFIRMED_BLOCK_HEADER>>

Defined in: src/channel/rpc_0_9_0.ts:327

Parameters​

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<OnlyFirst<BLOCK_WITH_TXS, object & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PRE_CONFIRMED_BLOCK_HEADER> | OnlyFirst<PRE_CONFIRMED_BLOCK_WITH_TXS, object & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PRE_CONFIRMED_BLOCK_HEADER>>


getBlockWithReceipts()​

getBlockWithReceipts(blockIdentifier?): Promise<OnlyFirst<BLOCK_WITH_RECEIPTS, object & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PRE_CONFIRMED_BLOCK_HEADER> | OnlyFirst<PRE_CONFIRMED_BLOCK_WITH_RECEIPTS, object & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PRE_CONFIRMED_BLOCK_HEADER>>

Defined in: src/channel/rpc_0_9_0.ts:332

Parameters​

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<OnlyFirst<BLOCK_WITH_RECEIPTS, object & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PRE_CONFIRMED_BLOCK_HEADER> | OnlyFirst<PRE_CONFIRMED_BLOCK_WITH_RECEIPTS, object & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PRE_CONFIRMED_BLOCK_HEADER>>


getBlockStateUpdate()​

getBlockStateUpdate(blockIdentifier?): Promise<OnlyFirst<STATE_UPDATE, STATE_UPDATE & PRE_CONFIRMED_STATE_UPDATE> | OnlyFirst<PRE_CONFIRMED_STATE_UPDATE, STATE_UPDATE & PRE_CONFIRMED_STATE_UPDATE>>

Defined in: src/channel/rpc_0_9_0.ts:337

Parameters​

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<OnlyFirst<STATE_UPDATE, STATE_UPDATE & PRE_CONFIRMED_STATE_UPDATE> | OnlyFirst<PRE_CONFIRMED_STATE_UPDATE, STATE_UPDATE & PRE_CONFIRMED_STATE_UPDATE>>


getBlockTransactionsTraces()​

getBlockTransactionsTraces(blockIdentifier?): Promise<BlockTransactionsTraces>

Defined in: src/channel/rpc_0_9_0.ts:342

Parameters​

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<BlockTransactionsTraces>


getBlockTransactionCount()​

getBlockTransactionCount(blockIdentifier?): Promise<number>

Defined in: src/channel/rpc_0_9_0.ts:347

Parameters​

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<number>


getTransactionByHash()​

getTransactionByHash(txHash): Promise<TXN_WITH_HASH>

Defined in: src/channel/rpc_0_9_0.ts:352

Parameters​

txHash​

BigNumberish

Returns​

Promise<TXN_WITH_HASH>


getTransactionByBlockIdAndIndex()​

getTransactionByBlockIdAndIndex(blockIdentifier, index): Promise<TXN_WITH_HASH>

Defined in: src/channel/rpc_0_9_0.ts:359

Parameters​

blockIdentifier​

BlockIdentifier

index​

number

Returns​

Promise<TXN_WITH_HASH>


getTransactionReceipt()​

getTransactionReceipt(txHash): Promise<TXN_RECEIPT_WITH_BLOCK_INFO>

Defined in: src/channel/rpc_0_9_0.ts:364

Parameters​

txHash​

BigNumberish

Returns​

Promise<TXN_RECEIPT_WITH_BLOCK_INFO>


getTransactionTrace()​

getTransactionTrace(txHash): Promise<TRANSACTION_TRACE>

Defined in: src/channel/rpc_0_9_0.ts:369

Parameters​

txHash​

BigNumberish

Returns​

Promise<TRANSACTION_TRACE>


getTransactionStatus()​

getTransactionStatus(transactionHash): Promise<TXN_STATUS_RESULT>

Defined in: src/channel/rpc_0_9_0.ts:377

Get the status of a transaction

Parameters​

transactionHash​

BigNumberish

Returns​

Promise<TXN_STATUS_RESULT>


simulateTransaction()​

simulateTransaction(invocations, simulateTransactionOptions?): Promise<SimulateTransactionResponse>

Defined in: src/channel/rpc_0_9_0.ts:389

Parameters​

invocations​

AccountInvocations

AccountInvocations

simulateTransactionOptions?​

getSimulateTransactionOptions = {}

blockIdentifier and flags to skip validation and fee charge

  • blockIdentifier
  • skipValidate (default true)
  • skipFeeCharge (default true)

Returns​

Promise<SimulateTransactionResponse>


waitForTransaction()​

waitForTransaction(txHash, options?): Promise<TXN_RECEIPT>

Defined in: src/channel/rpc_0_9_0.ts:412

Parameters​

txHash​

BigNumberish

options?​

waitForTransactionOptions

Returns​

Promise<TXN_RECEIPT>


getStorageAt()​

getStorageAt(contractAddress, key, blockIdentifier?): Promise<string>

Defined in: src/channel/rpc_0_9_0.ts:506

Parameters​

contractAddress​

BigNumberish

key​

BigNumberish

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<string>


getClassHashAt()​

getClassHashAt(contractAddress, blockIdentifier?): Promise<string>

Defined in: src/channel/rpc_0_9_0.ts:521

Parameters​

contractAddress​

BigNumberish

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<string>


getClass()​

getClass(classHash, blockIdentifier?): Promise<OnlyFirst<CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS> | OnlyFirst<DEPRECATED_CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS>>

Defined in: src/channel/rpc_0_9_0.ts:533

Parameters​

classHash​

BigNumberish

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<OnlyFirst<CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS> | OnlyFirst<DEPRECATED_CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS>>


getClassAt()​

getClassAt(contractAddress, blockIdentifier?): Promise<OnlyFirst<CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS> | OnlyFirst<DEPRECATED_CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS>>

Defined in: src/channel/rpc_0_9_0.ts:545

Parameters​

contractAddress​

BigNumberish

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<OnlyFirst<CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS> | OnlyFirst<DEPRECATED_CONTRACT_CLASS, CONTRACT_CLASS & DEPRECATED_CONTRACT_CLASS>>


getEstimateFee()​

getEstimateFee(invocations, options?): Promise<FEE_ESTIMATE[]>

Defined in: src/channel/rpc_0_9_0.ts:557

Parameters​

invocations​

AccountInvocations

options?​

getEstimateFeeBulkOptions = {}

Returns​

Promise<FEE_ESTIMATE[]>


invoke()​

invoke(functionInvocation, details): Promise<InvokedTransaction>

Defined in: src/channel/rpc_0_9_0.ts:579

Parameters​

functionInvocation​

Invocation

details​

InvocationsDetailsWithNonce

Returns​

Promise<InvokedTransaction>


invokeSignedTx()​

invokeSignedTx(transaction): Promise<InvokedTransaction>

Defined in: src/channel/rpc_0_9_0.ts:596

Parameters​

transaction​

INVOKE_TXN_V3

Returns​

Promise<InvokedTransaction>


declare()​

declare(declareTransaction, details): Promise<TXN_RECEIPT | DeclaredTransaction>

Defined in: src/channel/rpc_0_9_0.ts:603

Parameters​

declareTransaction​

DeclareContractTransaction

details​

InvocationsDetailsWithNonce

Returns​

Promise<TXN_RECEIPT | DeclaredTransaction>


deployAccount()​

deployAccount(deployAccountTransaction, details): Promise<TXN_RECEIPT | DeployedAccountTransaction>

Defined in: src/channel/rpc_0_9_0.ts:623

Parameters​

deployAccountTransaction​

DeployAccountContractTransaction

details​

InvocationsDetailsWithNonce

Returns​

Promise<TXN_RECEIPT | DeployedAccountTransaction>


callContract()​

callContract(call, blockIdentifier?): Promise<string[]>

Defined in: src/channel/rpc_0_9_0.ts:643

Parameters​

call​

Call

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<string[]>


estimateMessageFee()​

estimateMessageFee(message, blockIdentifier?): Promise<MESSAGE_FEE_ESTIMATE>

Defined in: src/channel/rpc_0_9_0.ts:659

NEW: Estimate the fee for a message from L1

Parameters​

message​

MSG_FROM_L1

Message From L1

blockIdentifier?​

BlockIdentifier = ...

Returns​

Promise<MESSAGE_FEE_ESTIMATE>


getSyncingStats()​

getSyncingStats(): Promise<Syncing>

Defined in: src/channel/rpc_0_9_0.ts:682

Returns an object about the sync status, or false if the node is not synching

Returns​

Promise<Syncing>

Object with the stats data


getEvents()​

getEvents(eventFilter): Promise<EVENTS_CHUNK>

Defined in: src/channel/rpc_0_9_0.ts:690

Returns all events matching the given filter

Parameters​

eventFilter​

EventFilter

Returns​

Promise<EVENTS_CHUNK>

events and the pagination of the events


buildTransaction()​

buildTransaction<T>(invocation, versionType?): Promise<T extends object ? INVOKE_TXN_V3 : T extends object ? BROADCASTED_DECLARE_TXN_V3 : T extends object ? DEPLOY_ACCOUNT_TXN_V3 : never>

Defined in: src/channel/rpc_0_9_0.ts:695

Type Parameters​

T​

T extends AccountInvocationItem

Parameters​

invocation​

T

versionType?​

"fee" | "transaction"

Returns​

Promise<T extends object ? INVOKE_TXN_V3 : T extends object ? BROADCASTED_DECLARE_TXN_V3 : T extends object ? DEPLOY_ACCOUNT_TXN_V3 : never>