Skip to main content
Version: Next

Class: Provider

Hierarchy​

  • RpcProvider<this> & StarknetId<this>

    ↳ Provider

    ↳↳ Account

Constructors​

constructor​

• new Provider(optionsOrProvider?): Provider

Parameters​

NameType
optionsOrProvider?RpcProviderOptions | ProviderInterface | RpcProvider

Returns​

Provider

Inherited from​

Mixin(BaseRpcProvider, StarknetId).constructor

Defined in​

src/provider/rpc.ts:66

• new Provider(): Provider

Returns​

Provider

Inherited from​

Mixin(BaseRpcProvider, StarknetId).constructor

Properties​

responseParser​

• responseParser: RPCResponseParser

Inherited from​

Mixin(BaseRpcProvider, StarknetId).responseParser

Defined in​

src/provider/rpc.ts:62


channel​

• channel: RpcChannel | RpcChannel

Inherited from​

Mixin(BaseRpcProvider, StarknetId).channel

Defined in​

src/provider/rpc.ts:64


getStateUpdate​

• getStateUpdate: () => Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>(blockIdentifier: "pending") => Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>(blockIdentifier: "latest") => Promise<{ block_hash: string ; new_root: string ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>(blockIdentifier?: BlockIdentifier) => Promise<StateUpdateResponse>

Type declaration​

â–¸ (): Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Returns​

Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

â–¸ (blockIdentifier): Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Parameters​
NameType
blockIdentifier"pending"
Returns​

Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

â–¸ (blockIdentifier): Promise<{ block_hash: string ; new_root: string ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Parameters​
NameType
blockIdentifier"latest"
Returns​

Promise<{ block_hash: string ; new_root: string ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

â–¸ (blockIdentifier?): Promise<StateUpdateResponse>

Parameters​
NameType
blockIdentifier?BlockIdentifier
Returns​

Promise<StateUpdateResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getStateUpdate

Defined in​

src/provider/rpc.ts:243

Methods​

create​

â–¸ create<T>(this, optionsOrProvider?): Promise<T>

auto configure channel based on provided node leave space for other async before constructor

Type parameters​

NameType
Textends RpcProvider<T>

Parameters​

NameType
this(...args: [optionsOrProvider?: RpcProviderOptions | ProviderInterface | RpcProvider]) => T
optionsOrProvider?RpcProviderOptions

Returns​

Promise<T>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).create

Defined in​

src/provider/rpc.ts:96


getStarkName​

â–¸ getStarkName(provider, address, StarknetIdContract?): Promise<string>

Parameters​

NameType
providerProviderInterface
addressBigNumberish
StarknetIdContract?string

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getStarkName

Defined in​

src/provider/extensions/starknetId.ts:62


getAddressFromStarkName​

â–¸ getAddressFromStarkName(provider, name, StarknetIdContract?): Promise<string>

Parameters​

NameType
providerProviderInterface
namestring
StarknetIdContract?string

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getAddressFromStarkName

Defined in​

src/provider/extensions/starknetId.ts:96


getStarkProfile​

â–¸ getStarkProfile(provider, address, StarknetIdContract?, StarknetIdIdentityContract?, StarknetIdVerifierContract?, StarknetIdPfpContract?, StarknetIdPopContract?, StarknetIdMulticallContract?): Promise<StarkProfile>

Parameters​

NameType
providerProviderInterface
addressBigNumberish
StarknetIdContract?string
StarknetIdIdentityContract?string
StarknetIdVerifierContract?string
StarknetIdPfpContract?string
StarknetIdPopContract?string
StarknetIdMulticallContract?string

Returns​

Promise<StarkProfile>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getStarkProfile

Defined in​

src/provider/extensions/starknetId.ts:128


fetch​

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

Parameters​

NameTypeDefault value
methodstringundefined
params?objectundefined
idstring | number0

Returns​

Promise<Response>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).fetch

Defined in​

src/provider/rpc.ts:113


getChainId​

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

Returns​

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

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getChainId

Defined in​

src/provider/rpc.ts:117


getSpecVersion​

â–¸ getSpecVersion(): Promise<"0.7" | "0.8">

return spec version in format "M.m"

Returns​

Promise<"0.7" | "0.8">

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getSpecVersion

Defined in​

src/provider/rpc.ts:124


getSpecificationVersion​

â–¸ getSpecificationVersion(): Promise<string>

Returns​

Promise<string>

return spec version in format 'M.m.p-rc'

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getSpecificationVersion

Defined in​

src/provider/rpc.ts:131


getNonceForAddress​

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

Parameters​

NameType
contractAddressBigNumberish
blockIdentifier?BlockIdentifier

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getNonceForAddress

Defined in​

src/provider/rpc.ts:135


getBlock​

â–¸ getBlock(): Promise<{ transactions: string[] ; parent_hash: string ; timestamp: number ; sequencer_address: string ; l1_gas_price: RESOURCE_PRICE ; l2_gas_price: RESOURCE_PRICE ; l1_data_gas_price: RESOURCE_PRICE ; l1_da_mode: L1_DA_MODE ; starknet_version: string }>

Returns​

Promise<{ transactions: string[] ; parent_hash: string ; timestamp: number ; sequencer_address: string ; l1_gas_price: RESOURCE_PRICE ; l2_gas_price: RESOURCE_PRICE ; l1_data_gas_price: RESOURCE_PRICE ; l1_da_mode: L1_DA_MODE ; starknet_version: string }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlock

Defined in​

src/provider/rpc.ts:142

â–¸ getBlock(blockIdentifier): Promise<{ transactions: string[] ; parent_hash: string ; timestamp: number ; sequencer_address: string ; l1_gas_price: RESOURCE_PRICE ; l2_gas_price: RESOURCE_PRICE ; l1_data_gas_price: RESOURCE_PRICE ; l1_da_mode: L1_DA_MODE ; starknet_version: string }>

Parameters​

NameType
blockIdentifier"pending"

Returns​

Promise<{ transactions: string[] ; parent_hash: string ; timestamp: number ; sequencer_address: string ; l1_gas_price: RESOURCE_PRICE ; l2_gas_price: RESOURCE_PRICE ; l1_data_gas_price: RESOURCE_PRICE ; l1_da_mode: L1_DA_MODE ; starknet_version: string }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlock

Defined in​

src/provider/rpc.ts:143

â–¸ getBlock(blockIdentifier): Promise<{ status: BLOCK_STATUS ; block_hash: string ; parent_hash: string ; block_number: number ; new_root: string ; timestamp: number ; sequencer_address: string ; l1_gas_price: RESOURCE_PRICE ; l2_gas_price: RESOURCE_PRICE ; l1_data_gas_price: RESOURCE_PRICE ; l1_da_mode: L1_DA_MODE ; starknet_version: string ; transactions: string[] }>

Parameters​

NameType
blockIdentifier"latest"

Returns​

Promise<{ status: BLOCK_STATUS ; block_hash: string ; parent_hash: string ; block_number: number ; new_root: string ; timestamp: number ; sequencer_address: string ; l1_gas_price: RESOURCE_PRICE ; l2_gas_price: RESOURCE_PRICE ; l1_data_gas_price: RESOURCE_PRICE ; l1_da_mode: L1_DA_MODE ; starknet_version: string ; transactions: string[] }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlock

Defined in​

src/provider/rpc.ts:144

â–¸ getBlock(blockIdentifier?): Promise<GetBlockResponse>

Parameters​

NameType
blockIdentifier?BlockIdentifier

Returns​

Promise<GetBlockResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlock

Defined in​

src/provider/rpc.ts:145


getBlockLatestAccepted​

â–¸ getBlockLatestAccepted(): Promise<BlockHashAndNumber>

Get the most recent accepted block hash and number

Returns​

Promise<BlockHashAndNumber>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockLatestAccepted

Defined in​

src/provider/rpc.ts:155


getBlockNumber​

â–¸ getBlockNumber(): Promise<number>

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

Returns​

Promise<number>

Number of the latest block

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockNumber

Defined in​

src/provider/rpc.ts:164


getBlockWithTxHashes​

â–¸ getBlockWithTxHashes(blockIdentifier?): Promise<BlockWithTxHashes>

Parameters​

NameType
blockIdentifier?BlockIdentifier

Returns​

Promise<BlockWithTxHashes>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockWithTxHashes

Defined in​

src/provider/rpc.ts:168


getBlockWithTxs​

â–¸ getBlockWithTxs(blockIdentifier?): Promise<BlockWithTxs>

Parameters​

NameType
blockIdentifier?BlockIdentifier

Returns​

Promise<BlockWithTxs>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockWithTxs

Defined in​

src/provider/rpc.ts:172


waitForBlock​

â–¸ waitForBlock(blockIdentifier?, retryInterval?): Promise<void>

Pause the execution of the script until a specified block is created.

Parameters​

NameTypeDefault valueDescription
blockIdentifierBlockIdentifier'pending'bloc number (BigNumberish) or 'pending' or 'latest'. Use of 'latest" or of a block already created will generate no pause.
retryInterval?number5000number of milliseconds between 2 requests to the node

Returns​

Promise<void>

Example

await myProvider.waitForBlock();
// wait the creation of the pending block

Inherited from​

Mixin(BaseRpcProvider, StarknetId).waitForBlock

Defined in​

src/provider/rpc.ts:187


getL1GasPrice​

â–¸ getL1GasPrice(blockIdentifier?): Promise<string>

Parameters​

NameType
blockIdentifier?BlockIdentifier

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getL1GasPrice

Defined in​

src/provider/rpc.ts:217


getL1MessageHash​

â–¸ getL1MessageHash(l2TxHash): Promise<string>

Parameters​

NameType
l2TxHashBigNumberish

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getL1MessageHash

Defined in​

src/provider/rpc.ts:223


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> | BlockWithTxReceipts>

Parameters​

NameType
blockIdentifier?BlockIdentifier

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> | BlockWithTxReceipts>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockWithReceipts

Defined in​

src/provider/rpc.ts:239


getBlockStateUpdate​

â–¸ getBlockStateUpdate(): Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Returns​

Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockStateUpdate

Defined in​

src/provider/rpc.ts:245

â–¸ getBlockStateUpdate(blockIdentifier): Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Parameters​

NameType
blockIdentifier"pending"

Returns​

Promise<{ block_hash: never ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockStateUpdate

Defined in​

src/provider/rpc.ts:246

â–¸ getBlockStateUpdate(blockIdentifier): Promise<{ block_hash: string ; new_root: string ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Parameters​

NameType
blockIdentifier"latest"

Returns​

Promise<{ block_hash: string ; new_root: string ; old_root: string ; state_diff: { storage_diffs: { address: string; storage_entries: { key: string; value: string; }[]; }[]; deprecated_declared_classes: string[]; declared_classes: { class_hash: string; compiled_class_hash: string; }[]; deployed_contracts: { address: string; class_hash: string; }[]; replaced_classes: { contract_address: string; class_hash: string; }[]; nonces: { nonce: string; contract_address: string; }[]; } }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockStateUpdate

Defined in​

src/provider/rpc.ts:247

â–¸ getBlockStateUpdate(blockIdentifier?): Promise<StateUpdateResponse>

Parameters​

NameType
blockIdentifier?BlockIdentifier

Returns​

Promise<StateUpdateResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockStateUpdate

Defined in​

src/provider/rpc.ts:248


getBlockTransactionsTraces​

â–¸ getBlockTransactionsTraces(blockIdentifier?): Promise<BlockTransactionsTraces | BlockTransactionsTraces>

Parameters​

NameType
blockIdentifier?BlockIdentifier

Returns​

Promise<BlockTransactionsTraces | BlockTransactionsTraces>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockTransactionsTraces

Defined in​

src/provider/rpc.ts:253


getBlockTransactionCount​

â–¸ getBlockTransactionCount(blockIdentifier?): Promise<number>

Parameters​

NameType
blockIdentifier?BlockIdentifier

Returns​

Promise<number>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getBlockTransactionCount

Defined in​

src/provider/rpc.ts:257


getTransaction​

â–¸ getTransaction(txHash): Promise<TransactionWithHash>

Parameters​

NameType
txHashBigNumberish

Returns​

Promise<TransactionWithHash>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getTransaction

Defined in​

src/provider/rpc.ts:261


getTransactionByHash​

â–¸ getTransactionByHash(txHash): Promise<TransactionWithHash>

Parameters​

NameType
txHashBigNumberish

Returns​

Promise<TransactionWithHash>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getTransactionByHash

Defined in​

src/provider/rpc.ts:265


getTransactionByBlockIdAndIndex​

â–¸ getTransactionByBlockIdAndIndex(blockIdentifier, index): Promise<TransactionWithHash>

Parameters​

NameType
blockIdentifierBlockIdentifier
indexnumber

Returns​

Promise<TransactionWithHash>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getTransactionByBlockIdAndIndex

Defined in​

src/provider/rpc.ts:269


getTransactionReceipt​

â–¸ getTransactionReceipt(txHash): Promise<GetTransactionReceiptResponse>

Parameters​

NameType
txHashBigNumberish

Returns​

Promise<GetTransactionReceiptResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getTransactionReceipt

Defined in​

src/provider/rpc.ts:273


getTransactionTrace​

â–¸ getTransactionTrace(txHash): Promise<TRANSACTION_TRACE>

Parameters​

NameType
txHashBigNumberish

Returns​

Promise<TRANSACTION_TRACE>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getTransactionTrace

Defined in​

src/provider/rpc.ts:280


getTransactionStatus​

â–¸ getTransactionStatus(transactionHash): Promise<TransactionStatus>

Get the status of a transaction

Parameters​

NameType
transactionHashBigNumberish

Returns​

Promise<TransactionStatus>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getTransactionStatus

Defined in​

src/provider/rpc.ts:287


getSimulateTransaction​

â–¸ getSimulateTransaction(invocations, options?): Promise<SimulateTransactionResponse>

Parameters​

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

Returns​

Promise<SimulateTransactionResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getSimulateTransaction

Defined in​

src/provider/rpc.ts:298


waitForTransaction​

â–¸ waitForTransaction(txHash, options?): Promise<GetTransactionReceiptResponse>

Parameters​

NameType
txHashBigNumberish
options?waitForTransactionOptions

Returns​

Promise<GetTransactionReceiptResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).waitForTransaction

Defined in​

src/provider/rpc.ts:308


getStorageAt​

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

Parameters​

NameType
contractAddressBigNumberish
keyBigNumberish
blockIdentifier?BlockIdentifier

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getStorageAt

Defined in​

src/provider/rpc.ts:320


getClassHashAt​

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

Parameters​

NameType
contractAddressBigNumberish
blockIdentifier?BlockIdentifier

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getClassHashAt

Defined in​

src/provider/rpc.ts:328


getClassByHash​

â–¸ getClassByHash(classHash): Promise<LegacyContractClass | Omit<CompiledSierra, "sierra_program_debug_info">>

Parameters​

NameType
classHashBigNumberish

Returns​

Promise<LegacyContractClass | Omit<CompiledSierra, "sierra_program_debug_info">>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getClassByHash

Defined in​

src/provider/rpc.ts:332


getClass​

â–¸ getClass(classHash, blockIdentifier?): Promise<LegacyContractClass | Omit<CompiledSierra, "sierra_program_debug_info">>

Parameters​

NameType
classHashBigNumberish
blockIdentifier?BlockIdentifier

Returns​

Promise<LegacyContractClass | Omit<CompiledSierra, "sierra_program_debug_info">>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getClass

Defined in​

src/provider/rpc.ts:336


getClassAt​

â–¸ getClassAt(contractAddress, blockIdentifier?): Promise<LegacyContractClass | Omit<CompiledSierra, "sierra_program_debug_info">>

Parameters​

NameType
contractAddressBigNumberish
blockIdentifier?BlockIdentifier

Returns​

Promise<LegacyContractClass | Omit<CompiledSierra, "sierra_program_debug_info">>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getClassAt

Defined in​

src/provider/rpc.ts:342


getContractVersion​

â–¸ getContractVersion(contractAddress, classHash?, options?): Promise<ContractVersion>

Parameters​

NameType
contractAddressBigNumberish
classHash?undefined
options?getContractVersionOptions

Returns​

Promise<ContractVersion>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getContractVersion

Defined in​

src/provider/rpc.ts:348

â–¸ getContractVersion(contractAddress, classHash, options?): Promise<ContractVersion>

Parameters​

NameType
contractAddressundefined
classHashBigNumberish
options?getContractVersionOptions

Returns​

Promise<ContractVersion>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getContractVersion

Defined in​

src/provider/rpc.ts:353


getInvokeEstimateFee​

â–¸ getInvokeEstimateFee(invocation, invocationDetails, blockIdentifier?, skipValidate?): Promise<EstimateFeeResponse>

Parameters​

NameType
invocationInvocation
invocationDetailsInvocationsDetailsWithNonce
blockIdentifier?BlockIdentifier
skipValidate?boolean

Returns​

Promise<EstimateFeeResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getInvokeEstimateFee

Defined in​

src/provider/rpc.ts:386


getDeclareEstimateFee​

â–¸ getDeclareEstimateFee(invocation, details, blockIdentifier?, skipValidate?): Promise<EstimateFeeResponse>

Parameters​

NameType
invocationDeclareContractTransaction
detailsInvocationsDetailsWithNonce
blockIdentifier?BlockIdentifier
skipValidate?boolean

Returns​

Promise<EstimateFeeResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getDeclareEstimateFee

Defined in​

src/provider/rpc.ts:406


getDeployAccountEstimateFee​

â–¸ getDeployAccountEstimateFee(invocation, details, blockIdentifier?, skipValidate?): Promise<EstimateFeeResponse>

Parameters​

NameType
invocationDeployAccountContractTransaction
detailsInvocationsDetailsWithNonce
blockIdentifier?BlockIdentifier
skipValidate?boolean

Returns​

Promise<EstimateFeeResponse>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getDeployAccountEstimateFee

Defined in​

src/provider/rpc.ts:426


getEstimateFeeBulk​

â–¸ getEstimateFeeBulk(invocations, options): Promise<EstimateFeeResponseBulk>

Parameters​

NameType
invocationsAccountInvocations
optionsgetEstimateFeeBulkOptions

Returns​

Promise<EstimateFeeResponseBulk>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getEstimateFeeBulk

Defined in​

src/provider/rpc.ts:446


invokeFunction​

â–¸ invokeFunction(functionInvocation, details): Promise<{ transaction_hash: string }>

Parameters​

NameType
functionInvocationInvocation
detailsInvocationsDetailsWithNonce

Returns​

Promise<{ transaction_hash: string }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).invokeFunction

Defined in​

src/provider/rpc.ts:455


declareContract​

â–¸ declareContract(transaction, details): Promise<{ class_hash: string ; transaction_hash: string }>

Parameters​

NameType
transactionDeclareContractTransaction
detailsInvocationsDetailsWithNonce

Returns​

Promise<{ class_hash: string ; transaction_hash: string }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).declareContract

Defined in​

src/provider/rpc.ts:462


deployAccountContract​

â–¸ deployAccountContract(transaction, details): Promise<{ contract_address: string ; transaction_hash: string }>

Parameters​

NameType
transactionDeployAccountContractTransaction
detailsInvocationsDetailsWithNonce

Returns​

Promise<{ contract_address: string ; transaction_hash: string }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).deployAccountContract

Defined in​

src/provider/rpc.ts:469


callContract​

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

Parameters​

NameType
callCall
blockIdentifier?BlockIdentifier

Returns​

Promise<string[]>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).callContract

Defined in​

src/provider/rpc.ts:476


estimateMessageFee​

â–¸ estimateMessageFee(message, blockIdentifier?): Promise<{ unit: "WEI" | "FRI" ; overall_fee: string | number ; l1_gas_price: undefined | number ; l2_gas_price: undefined | number ; l1_data_gas_price: undefined | number ; l1_gas_consumed: undefined | number ; l2_gas_consumed: undefined | number ; l1_data_gas_consumed: undefined | number ; gas_consumed: undefined | string ; gas_price: undefined | string ; data_gas_consumed: undefined | string ; data_gas_price: undefined | string }>

NEW: Estimate the fee for a message from L1

Parameters​

NameTypeDescription
messageObjectMessage From L1
message.entry_point_selectorstring-
message.from_addressstring-
message.to_addressstring-
message.payloadstring[]-
blockIdentifier?BlockIdentifier-

Returns​

Promise<{ unit: "WEI" | "FRI" ; overall_fee: string | number ; l1_gas_price: undefined | number ; l2_gas_price: undefined | number ; l1_data_gas_price: undefined | number ; l1_gas_consumed: undefined | number ; l2_gas_consumed: undefined | number ; l1_data_gas_consumed: undefined | number ; gas_consumed: undefined | string ; gas_price: undefined | string ; data_gas_consumed: undefined | string ; data_gas_price: undefined | string }>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).estimateMessageFee

Defined in​

src/provider/rpc.ts:484


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

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getSyncingStats

Defined in​

src/provider/rpc.ts:495


getEvents​

â–¸ getEvents(eventFilter): Promise<{ events: { keys: string[]; data: string[]; block_number: number; block_hash: string; transaction_hash: string; from_address: string; }[] ; continuation_token: undefined | string }>

Returns all events matching the given filter

Parameters​

NameType
eventFilterEventFilter

Returns​

Promise<{ events: { keys: string[]; data: string[]; block_number: number; block_hash: string; transaction_hash: string; from_address: string; }[] ; continuation_token: undefined | string }>

events and the pagination of the events

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getEvents

Defined in​

src/provider/rpc.ts:503


verifyMessageInStarknet​

â–¸ verifyMessageInStarknet(message, signature, accountAddress, signatureVerificationFunctionName?, signatureVerificationResponse?): Promise<boolean>

Verify in Starknet a signature of a TypedData object or of a given hash.

Parameters​

NameTypeDescription
messageTypedData | BigNumberishTypedData object to be verified, or message hash to be verified.
signatureSignaturesignature of the message.
accountAddressBigNumberishaddress of the account that has signed the message.
signatureVerificationFunctionName?stringif account contract with non standard account verification function name.
signatureVerificationResponse?Objectif account contract with non standard response of verification function.
signatureVerificationResponse.okResponsestring[]-
signatureVerificationResponse.nokResponsestring[]-
signatureVerificationResponse.errorstring[]-

Returns​

Promise<boolean>

const myTypedMessage: TypedMessage = .... ;
const messageHash = typedData.getMessageHash(myTypedMessage,accountAddress);
const sign: WeierstrassSignatureType = ec.starkCurve.sign(messageHash, privateKey);
const accountAddress = "0x43b7240d227aa2fb8434350b3321c40ac1b88c7067982549e7609870621b535";
const result1 = myRpcProvider.verifyMessageInStarknet(myTypedMessage, sign, accountAddress);
const result2 = myRpcProvider.verifyMessageInStarknet(messageHash, sign, accountAddress);
// result1 = result2 = true

Inherited from​

Mixin(BaseRpcProvider, StarknetId).verifyMessageInStarknet

Defined in​

src/provider/rpc.ts:525


isClassDeclared​

â–¸ isClassDeclared(contractClassIdentifier, blockIdentifier?): Promise<boolean>

Test if class is already declared from ContractClassIdentifier Helper method using getClass

Parameters​

NameType
contractClassIdentifierContractClassIdentifier
blockIdentifier?BlockIdentifier

Returns​

Promise<boolean>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).isClassDeclared

Defined in​

src/provider/rpc.ts:611


prepareInvocations​

â–¸ prepareInvocations(invocations): Promise<Invocations>

Build bulk invocations with auto-detect declared class

  1. Test if class is declared if not declare it preventing already declared class error and not declared class errors
  2. Order declarations first

Parameters​

NameType
invocationsInvocations

Returns​

Promise<Invocations>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).prepareInvocations

Defined in​

src/provider/rpc.ts:642


getL1MessagesStatus​

â–¸ getL1MessagesStatus(transactionHash): void

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
transactionHashBigNumberish

Returns​

void

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getL1MessagesStatus

Defined in​

src/provider/rpc.ts:666


getStorageProof​

â–¸ getStorageProof(classHashes, contractAddresses, contractsStorageKeys, blockIdentifier?): void

Get merkle paths in one of the state tries: global state, classes, individual contract

Parameters​

NameType
classHashesBigNumberish[]
contractAddressesBigNumberish[]
contractsStorageKeysCONTRACT_STORAGE_KEYS[]
blockIdentifier?BlockIdentifier

Returns​

void

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getStorageProof

Defined in​

src/provider/rpc.ts:677


getCompiledCasm​

â–¸ getCompiledCasm(classHash): void

Get the contract class definition in the given block associated with the given hash

Parameters​

NameType
classHashBigNumberish

Returns​

void

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getCompiledCasm

Defined in​

src/provider/rpc.ts:698


getStarkName​

â–¸ getStarkName(address, StarknetIdContract?): Promise<string>

Parameters​

NameType
addressBigNumberish
StarknetIdContract?string

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getStarkName

Defined in​

src/provider/extensions/starknetId.ts:22


getAddressFromStarkName​

â–¸ getAddressFromStarkName(name, StarknetIdContract?): Promise<string>

Parameters​

NameType
namestring
StarknetIdContract?string

Returns​

Promise<string>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getAddressFromStarkName

Defined in​

src/provider/extensions/starknetId.ts:31


getStarkProfile​

â–¸ getStarkProfile(address, StarknetIdContract?, StarknetIdIdentityContract?, StarknetIdVerifierContract?, StarknetIdPfpContract?, StarknetIdPopContract?, StarknetIdMulticallContract?): Promise<StarkProfile>

Parameters​

NameType
addressBigNumberish
StarknetIdContract?string
StarknetIdIdentityContract?string
StarknetIdVerifierContract?string
StarknetIdPfpContract?string
StarknetIdPopContract?string
StarknetIdMulticallContract?string

Returns​

Promise<StarkProfile>

Inherited from​

Mixin(BaseRpcProvider, StarknetId).getStarkProfile

Defined in​

src/provider/extensions/starknetId.ts:40