Skip to main content
Version: 8.6.0

Class: RpcChannel

RPC08.RpcChannel

Constructors​

constructor​

• new RpcChannel(optionsOrProvider?): RpcChannel

Parameters​

NameType
optionsOrProvider?RpcProviderOptions

Returns​

RpcChannel

Defined in​

src/channel/rpc_0_8_1.ts:88

Properties​

id​

• Readonly id: "RPC081"

Defined in​

src/channel/rpc_0_8_1.ts:56


channelSpecVersion​

• Readonly channelSpecVersion: "0.8.1" | "0.9.0" = SupportedRpcVersion.v0_8_1

RPC specification version this Channel class implements

Defined in​

src/channel/rpc_0_8_1.ts:61


nodeUrl​

• nodeUrl: string

Defined in​

src/channel/rpc_0_8_1.ts:63


headers​

• headers: object

Defined in​

src/channel/rpc_0_8_1.ts:65


requestId​

• requestId: number

Defined in​

src/channel/rpc_0_8_1.ts:67


blockIdentifier​

• Readonly blockIdentifier: BlockIdentifier

Defined in​

src/channel/rpc_0_8_1.ts:69


retries​

• Readonly retries: number

Defined in​

src/channel/rpc_0_8_1.ts:71


waitMode​

• Readonly waitMode: boolean

Defined in​

src/channel/rpc_0_8_1.ts:73


chainId​

• Private Optional chainId: "0x534e5f4d41494e" | "0x534e5f5345504f4c4941"

Defined in​

src/channel/rpc_0_8_1.ts:75


specVersion​

• Private Optional specVersion: "0.8.1" | "0.9.0"

RPC specification version of the connected node

Defined in​

src/channel/rpc_0_8_1.ts:80


transactionRetryIntervalFallback​

• Private Optional transactionRetryIntervalFallback: number

Defined in​

src/channel/rpc_0_8_1.ts:82


batchClient​

• Private Optional batchClient: BatchClient<Methods>

Defined in​

src/channel/rpc_0_8_1.ts:84


baseFetch​

• Private baseFetch: (input: RequestInfo | URL, init?: RequestInit) => Promise<Response>

Type declaration​

▸ (input, init?): Promise<Response>

MDN Reference

Parameters​
NameType
inputRequestInfo | URL
init?RequestInit
Returns​

Promise<Response>

Defined in​

src/channel/rpc_0_8_1.ts:86

Accessors​

transactionRetryIntervalDefault​

• get transactionRetryIntervalDefault(): number

Returns​

number

Defined in​

src/channel/rpc_0_8_1.ts:144

Methods​

readSpecVersion​

▸ readSpecVersion(): undefined | "0.8.1" | "0.9.0"

Returns​

undefined | "0.8.1" | "0.9.0"

Defined in​

src/channel/rpc_0_8_1.ts:140


setChainId​

▸ setChainId(chainId): void

Parameters​

NameType
chainId"0x534e5f4d41494e" | "0x534e5f5345504f4c4941"

Returns​

void

Defined in​

src/channel/rpc_0_8_1.ts:148


fetch​

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

Parameters​

NameTypeDefault value
methodstringundefined
params?objectundefined
idstring | number0

Returns​

Promise<Response>

Defined in​

src/channel/rpc_0_8_1.ts:152


errorHandler​

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

Parameters​

NameType
methodstring
paramsany
rpcError?Error
otherError?any

Returns​

void

Defined in​

src/channel/rpc_0_8_1.ts:166


fetchEndpoint​

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

Type parameters​

NameType
Textends keyof ReadMethods | keyof WriteMethods | keyof TraceMethods

Parameters​

NameType
methodT
params?Methods[T]["params"]

Returns​

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

Defined in​

src/channel/rpc_0_8_1.ts:178


getChainId​

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

Returns​

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

Defined in​

src/channel/rpc_0_8_1.ts:203


getSpecVersion​

▸ getSpecVersion(): Promise<string>

fetch rpc node specVersion

Returns​

Promise<string>

Example

this.specVersion = '0.8.1';

Defined in​

src/channel/rpc_0_8_1.ts:212


setUpSpecVersion​

▸ setUpSpecVersion(): Promise<"0.8.1" | "0.9.0">

fetch if undefined else just return this.specVersion

Returns​

Promise<"0.8.1" | "0.9.0">

Example

this.specVersion = '0.8.1';

Defined in​

src/channel/rpc_0_8_1.ts:220


getMessagesStatus​

▸ getMessagesStatus(txHash): Promise<L1L2MessagesStatus>

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​

NameType
txHashBigNumberish

Returns​

Promise<L1L2MessagesStatus>

Defined in​

src/channel/rpc_0_8_1.ts:246


getStorageProof​

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

Parameters​

NameTypeDefault value
classHashesBigNumberish[][]
contractAddressesBigNumberish[][]
contractsStorageKeysCONTRACT_STORAGE_KEYS[][]
blockIdentifierBlockIdentifierundefined

Returns​

Promise<StorageProof>

Defined in​

src/channel/rpc_0_8_1.ts:254


getCompiledCasm​

▸ getCompiledCasm(classHash): Promise<CASM_COMPILED_CONTRACT_CLASS>

Parameters​

NameType
classHashBigNumberish

Returns​

Promise<CASM_COMPILED_CONTRACT_CLASS>

Defined in​

src/channel/rpc_0_8_1.ts:273


getNonceForAddress​

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

Parameters​

NameType
contractAddressBigNumberish
blockIdentifierBlockIdentifier

Returns​

Promise<string>

Defined in​

src/channel/rpc_0_8_1.ts:281


getBlockLatestAccepted​

▸ getBlockLatestAccepted(): Promise<BlockHashAndNumber>

Get the most recent accepted block hash and number

Returns​

Promise<BlockHashAndNumber>

Defined in​

src/channel/rpc_0_8_1.ts:296


getBlockNumber​

▸ getBlockNumber(): Promise<number>

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

Returns​

Promise<number>

Number of the latest block

Defined in​

src/channel/rpc_0_8_1.ts:305


getBlockWithTxHashes​

▸ getBlockWithTxHashes(blockIdentifier?): Promise<OnlyFirst<BLOCK_WITH_TX_HASHES, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PENDING_BLOCK_HEADER> | OnlyFirst<PENDING_BLOCK_WITH_TX_HASHES, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PENDING_BLOCK_HEADER>>

Parameters​

NameType
blockIdentifierBlockIdentifier

Returns​

Promise<OnlyFirst<BLOCK_WITH_TX_HASHES, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PENDING_BLOCK_HEADER> | OnlyFirst<PENDING_BLOCK_WITH_TX_HASHES, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TX_HASHES & PENDING_BLOCK_HEADER>>

Defined in​

src/channel/rpc_0_8_1.ts:309


getBlockWithTxs​

▸ getBlockWithTxs(blockIdentifier?): Promise<OnlyFirst<BLOCK_WITH_TXS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PENDING_BLOCK_HEADER> | OnlyFirst<PENDING_BLOCK_WITH_TXS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PENDING_BLOCK_HEADER>>

Parameters​

NameType
blockIdentifierBlockIdentifier

Returns​

Promise<OnlyFirst<BLOCK_WITH_TXS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PENDING_BLOCK_HEADER> | OnlyFirst<PENDING_BLOCK_WITH_TXS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_TXS & PENDING_BLOCK_HEADER>>

Defined in​

src/channel/rpc_0_8_1.ts:314


getBlockWithReceipts​

▸ getBlockWithReceipts(blockIdentifier?): Promise<OnlyFirst<BLOCK_WITH_RECEIPTS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PENDING_BLOCK_HEADER> | OnlyFirst<PENDING_BLOCK_WITH_RECEIPTS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PENDING_BLOCK_HEADER>>

Parameters​

NameType
blockIdentifierBlockIdentifier

Returns​

Promise<OnlyFirst<BLOCK_WITH_RECEIPTS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PENDING_BLOCK_HEADER> | OnlyFirst<PENDING_BLOCK_WITH_RECEIPTS, { status: BLOCK_STATUS } & BLOCK_HEADER & BLOCK_BODY_WITH_RECEIPTS & PENDING_BLOCK_HEADER>>

Defined in​

src/channel/rpc_0_8_1.ts:319


getBlockStateUpdate​

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

Parameters​

NameType
blockIdentifierBlockIdentifier

Returns​

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

Defined in​

src/channel/rpc_0_8_1.ts:324


getBlockTransactionsTraces​

▸ getBlockTransactionsTraces(blockIdentifier?): Promise<BlockTransactionsTraces>

Parameters​

NameType
blockIdentifierBlockIdentifier

Returns​

Promise<BlockTransactionsTraces>

Defined in​

src/channel/rpc_0_8_1.ts:329


getBlockTransactionCount​

▸ getBlockTransactionCount(blockIdentifier?): Promise<number>

Parameters​

NameType
blockIdentifierBlockIdentifier

Returns​

Promise<number>

Defined in​

src/channel/rpc_0_8_1.ts:334


getTransactionByHash​

▸ getTransactionByHash(txHash): Promise<TXN_WITH_HASH>

Parameters​

NameType
txHashBigNumberish

Returns​

Promise<TXN_WITH_HASH>

Defined in​

src/channel/rpc_0_8_1.ts:339


getTransactionByBlockIdAndIndex​

▸ getTransactionByBlockIdAndIndex(blockIdentifier, index): Promise<TXN_WITH_HASH>

Parameters​

NameType
blockIdentifierBlockIdentifier
indexnumber

Returns​

Promise<TXN_WITH_HASH>

Defined in​

src/channel/rpc_0_8_1.ts:346


getTransactionReceipt​

▸ getTransactionReceipt(txHash): Promise<TXN_RECEIPT_WITH_BLOCK_INFO>

Parameters​

NameType
txHashBigNumberish

Returns​

Promise<TXN_RECEIPT_WITH_BLOCK_INFO>

Defined in​

src/channel/rpc_0_8_1.ts:351


getTransactionTrace​

▸ getTransactionTrace(txHash): Promise<TRANSACTION_TRACE>

Parameters​

NameType
txHashBigNumberish

Returns​

Promise<TRANSACTION_TRACE>

Defined in​

src/channel/rpc_0_8_1.ts:356


getTransactionStatus​

▸ getTransactionStatus(transactionHash): Promise<TXN_STATUS_RESULT>

Get the status of a transaction

Parameters​

NameType
transactionHashBigNumberish

Returns​

Promise<TXN_STATUS_RESULT>

Defined in​

src/channel/rpc_0_8_1.ts:364


simulateTransaction​

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

Parameters​

NameTypeDescription
invocationsAccountInvocationsAccountInvocations
simulateTransactionOptionsgetSimulateTransactionOptionsblockIdentifier and flags to skip validation and fee charge
- blockIdentifier
- skipValidate (default false)
- skipFeeCharge (default true)

Returns​

Promise<SimulateTransactionResponse>

Defined in​

src/channel/rpc_0_8_1.ts:376


waitForTransaction​

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

Parameters​

NameType
txHashBigNumberish
options?waitForTransactionOptions

Returns​

Promise<TXN_RECEIPT>

Defined in​

src/channel/rpc_0_8_1.ts:397


getStorageAt​

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

Parameters​

NameType
contractAddressBigNumberish
keyBigNumberish
blockIdentifierBlockIdentifier

Returns​

Promise<string>

Defined in​

src/channel/rpc_0_8_1.ts:491


getClassHashAt​

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

Parameters​

NameType
contractAddressBigNumberish
blockIdentifierBlockIdentifier

Returns​

Promise<string>

Defined in​

src/channel/rpc_0_8_1.ts:506


getClass​

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

Parameters​

NameType
classHashBigNumberish
blockIdentifierBlockIdentifier

Returns​

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

Defined in​

src/channel/rpc_0_8_1.ts:518


getClassAt​

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

Parameters​

NameType
contractAddressBigNumberish
blockIdentifierBlockIdentifier

Returns​

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

Defined in​

src/channel/rpc_0_8_1.ts:530


getEstimateFee​

▸ getEstimateFee(invocations, «destructured»?): Promise<FEE_ESTIMATE[]>

Parameters​

NameType
invocationsAccountInvocations
«destructured»getEstimateFeeBulkOptions

Returns​

Promise<FEE_ESTIMATE[]>

Defined in​

src/channel/rpc_0_8_1.ts:542


invoke​

▸ invoke(functionInvocation, details): Promise<InvokedTransaction>

Parameters​

NameType
functionInvocationInvocation
detailsInvocationsDetailsWithNonce

Returns​

Promise<InvokedTransaction>

Defined in​

src/channel/rpc_0_8_1.ts:560


declare​

▸ declare(«destructured», details): Promise<TXN_RECEIPT | DeclaredTransaction>

Parameters​

NameType
«destructured»DeclareContractTransaction
detailsInvocationsDetailsWithNonce

Returns​

Promise<TXN_RECEIPT | DeclaredTransaction>

Defined in​

src/channel/rpc_0_8_1.ts:587


deployAccount​

▸ deployAccount(«destructured», details): Promise<TXN_RECEIPT | DeployedAccountTransaction>

Parameters​

NameType
«destructured»DeployAccountContractTransaction
detailsInvocationsDetailsWithNonce

Returns​

Promise<TXN_RECEIPT | DeployedAccountTransaction>

Defined in​

src/channel/rpc_0_8_1.ts:623


callContract​

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

Parameters​

NameType
callCall
blockIdentifierBlockIdentifier

Returns​

Promise<string[]>

Defined in​

src/channel/rpc_0_8_1.ts:653


estimateMessageFee​

▸ estimateMessageFee(message, blockIdentifier?): Promise<FEE_ESTIMATE>

NEW: Estimate the fee for a message from L1

Parameters​

NameTypeDescription
messageMSG_FROM_L1Message From L1
blockIdentifierBlockIdentifier-

Returns​

Promise<FEE_ESTIMATE>

Defined in​

src/channel/rpc_0_8_1.ts:669


getSyncingStats​

▸ getSyncingStats(): Promise<Syncing>

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

Returns​

Promise<Syncing>

Object with the stats data

Defined in​

src/channel/rpc_0_8_1.ts:692


getEvents​

▸ getEvents(eventFilter): Promise<EVENTS_CHUNK>

Returns all events matching the given filter

Parameters​

NameType
eventFilterEventFilter

Returns​

Promise<EVENTS_CHUNK>

events and the pagination of the events

Defined in​

src/channel/rpc_0_8_1.ts:700


buildTransaction​

▸ buildTransaction(invocation, versionType?): BROADCASTED_TXN

Parameters​

NameType
invocationAccountInvocationItem
versionType?"fee" | "transaction"

Returns​

BROADCASTED_TXN

Defined in​

src/channel/rpc_0_8_1.ts:704