Icon HelpCircleForumIcon Link

⌘K

Icon HelpCircleForumIcon Link

Icon LinkClass: Provider

A provider for connecting to a node

Icon LinkProperties

Icon Linkcache

Optional cache: MemoryCache

Icon LinkDefined in


Icon Linkoperations

operations: Object

Icon LinkType declaration

NameType
dryRun(variables: Exact<{ encodedTransaction: string ; utxoValidation?: InputMaybe<boolean> }>, options?: unknown) => Promise<GqlDryRunMutation>
estimatePredicates(variables: Exact<{ encodedTransaction: string }>, options?: unknown) => Promise<GqlEstimatePredicatesQuery>
getBalance(variables: Exact<{ assetId: string ; owner: string }>, options?: unknown) => Promise<GqlGetBalanceQuery>
getBalances(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; filter: GqlBalanceFilterInput ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetBalancesQuery>
getBlock(variables?: Exact<{ blockId?: InputMaybe<string> ; height?: any }>, options?: unknown) => Promise<GqlGetBlockQuery>
getBlockWithTransactions(variables?: Exact<{ blockHeight?: any ; blockId?: InputMaybe<string> }>, options?: unknown) => Promise<GqlGetBlockWithTransactionsQuery>
getBlocks(variables?: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetBlocksQuery>
getChain(variables?: Exact<{ [key: string]: never; }>, options?: unknown) => Promise<GqlGetChainQuery>
getCoin(variables: Exact<{ coinId: string }>, options?: unknown) => Promise<GqlGetCoinQuery>
getCoins(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; filter: GqlCoinFilterInput ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetCoinsQuery>
getCoinsToSpend(variables: Exact<{ excludedIds?: InputMaybe<GqlExcludeInput> ; owner: string ; queryPerAsset: GqlSpendQueryElementInput | GqlSpendQueryElementInput[] }>, options?: unknown) => Promise<GqlGetCoinsToSpendQuery>
getContract(variables: Exact<{ contractId: string }>, options?: unknown) => Promise<GqlGetContractQuery>
getContractBalance(variables: Exact<{ asset: string ; contract: string }>, options?: unknown) => Promise<GqlGetContractBalanceQuery>
getMessageProof(variables: Exact<{ commitBlockHeight?: any ; commitBlockId?: InputMaybe<string> ; nonce: string ; transactionId: string }>, options?: unknown) => Promise<GqlGetMessageProofQuery>
getMessageStatus(variables: Exact<{ nonce: string }>, options?: unknown) => Promise<GqlGetMessageStatusQuery>
getMessages(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> ; owner: string }>, options?: unknown) => Promise<GqlGetMessagesQuery>
getNodeInfo(variables?: Exact<{ [key: string]: never; }>, options?: unknown) => Promise<GqlGetNodeInfoQuery>
getTransaction(variables: Exact<{ transactionId: string }>, options?: unknown) => Promise<GqlGetTransactionQuery>
getTransactionWithReceipts(variables: Exact<{ transactionId: string }>, options?: unknown) => Promise<GqlGetTransactionWithReceiptsQuery>
getTransactions(variables?: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetTransactionsQuery>
getTransactionsByOwner(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> ; owner: string }>, options?: unknown) => Promise<GqlGetTransactionsByOwnerQuery>
getVersion(variables?: Exact<{ [key: string]: never; }>, options?: unknown) => Promise<GqlGetVersionQuery>
produceBlocks(variables: Exact<{ blocksToProduce: any ; startTimestamp?: InputMaybe<string> }>, options?: unknown) => Promise<GqlProduceBlocksMutation>
statusChange(variables: Exact<{ transactionId: string }>, options?: unknown) => AsyncIterable<GqlStatusChangeSubscription>
submit(variables: Exact<{ encodedTransaction: string }>, options?: unknown) => Promise<GqlSubmitMutation>
submitAndAwait(variables: Exact<{ encodedTransaction: string }>, options?: unknown) => AsyncIterable<GqlSubmitAndAwaitSubscription>

Icon LinkDefined in


Icon Linkoptions

options: ProviderOptions

Icon LinkDefined in


Icon Linkurl

url: string
GraphQL endpoint of the Fuel node

Icon LinkDefined in


Icon LinkchainInfoCache

Private Static chainInfoCache: ChainInfoCache = {}

Icon LinkDefined in


Icon LinknodeInfoCache

Private Static nodeInfoCache: NodeInfoCache = {}

Icon LinkDefined in

Icon LinkMethods

Icon Linkcall

call(transactionRequestLike, utxoValidation?): Promise<CallResult >
Executes a transaction without actually submitting it to the chain.
If the transaction is missing any dependencies, the transaction will be mutated and those dependencies will be added.

Icon LinkParameters

NameTypeDescription
transactionRequestLikeTransactionRequestLike The transaction request object.
utxoValidationProviderCallParams Additional provider call parameters.

Icon LinkReturns

Promise<CallResult >
A promise that resolves to the call result object.

Icon LinkDefined in


Icon Linkconnect

connect(url, options?): Promise<void>
Updates the URL for the provider and fetches the consensus parameters for the new URL, if needed.

Icon LinkParameters

NameType
urlstring
options?ProviderOptions

Icon LinkReturns

Promise<void>

Icon LinkDefined in


Icon LinkcreateOperations

createOperations(): Object
Create GraphQL client and set operations.

Icon LinkReturns

Object
The operation SDK object
NameType
dryRun(variables: Exact<{ encodedTransaction: string ; utxoValidation?: InputMaybe<boolean> }>, options?: unknown) => Promise<GqlDryRunMutation>
estimatePredicates(variables: Exact<{ encodedTransaction: string }>, options?: unknown) => Promise<GqlEstimatePredicatesQuery>
getBalance(variables: Exact<{ assetId: string ; owner: string }>, options?: unknown) => Promise<GqlGetBalanceQuery>
getBalances(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; filter: GqlBalanceFilterInput ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetBalancesQuery>
getBlock(variables?: Exact<{ blockId?: InputMaybe<string> ; height?: any }>, options?: unknown) => Promise<GqlGetBlockQuery>
getBlockWithTransactions(variables?: Exact<{ blockHeight?: any ; blockId?: InputMaybe<string> }>, options?: unknown) => Promise<GqlGetBlockWithTransactionsQuery>
getBlocks(variables?: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetBlocksQuery>
getChain(variables?: Exact<{ [key: string]: never; }>, options?: unknown) => Promise<GqlGetChainQuery>
getCoin(variables: Exact<{ coinId: string }>, options?: unknown) => Promise<GqlGetCoinQuery>
getCoins(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; filter: GqlCoinFilterInput ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetCoinsQuery>
getCoinsToSpend(variables: Exact<{ excludedIds?: InputMaybe<GqlExcludeInput> ; owner: string ; queryPerAsset: GqlSpendQueryElementInput | GqlSpendQueryElementInput[] }>, options?: unknown) => Promise<GqlGetCoinsToSpendQuery>
getContract(variables: Exact<{ contractId: string }>, options?: unknown) => Promise<GqlGetContractQuery>
getContractBalance(variables: Exact<{ asset: string ; contract: string }>, options?: unknown) => Promise<GqlGetContractBalanceQuery>
getMessageProof(variables: Exact<{ commitBlockHeight?: any ; commitBlockId?: InputMaybe<string> ; nonce: string ; transactionId: string }>, options?: unknown) => Promise<GqlGetMessageProofQuery>
getMessageStatus(variables: Exact<{ nonce: string }>, options?: unknown) => Promise<GqlGetMessageStatusQuery>
getMessages(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> ; owner: string }>, options?: unknown) => Promise<GqlGetMessagesQuery>
getNodeInfo(variables?: Exact<{ [key: string]: never; }>, options?: unknown) => Promise<GqlGetNodeInfoQuery>
getTransaction(variables: Exact<{ transactionId: string }>, options?: unknown) => Promise<GqlGetTransactionQuery>
getTransactionWithReceipts(variables: Exact<{ transactionId: string }>, options?: unknown) => Promise<GqlGetTransactionWithReceiptsQuery>
getTransactions(variables?: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>, options?: unknown) => Promise<GqlGetTransactionsQuery>
getTransactionsByOwner(variables: Exact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> ; owner: string }>, options?: unknown) => Promise<GqlGetTransactionsByOwnerQuery>
getVersion(variables?: Exact<{ [key: string]: never; }>, options?: unknown) => Promise<GqlGetVersionQuery>
produceBlocks(variables: Exact<{ blocksToProduce: any ; startTimestamp?: InputMaybe<string> }>, options?: unknown) => Promise<GqlProduceBlocksMutation>
statusChange(variables: Exact<{ transactionId: string }>, options?: unknown) => AsyncIterable<GqlStatusChangeSubscription>
submit(variables: Exact<{ encodedTransaction: string }>, options?: unknown) => Promise<GqlSubmitMutation>
submitAndAwait(variables: Exact<{ encodedTransaction: string }>, options?: unknown) => AsyncIterable<GqlSubmitAndAwaitSubscription>

Icon LinkDefined in


Icon LinkestimatePredicates

estimatePredicates(transactionRequest): Promise<TransactionRequest >
Verifies whether enough gas is available to complete transaction.

Icon LinkParameters

NameTypeDescription
transactionRequestTransactionRequest The transaction request object.

Icon LinkReturns

A promise that resolves to the estimated transaction request object.

Icon LinkDefined in


Icon LinkestimateTxDependencies

estimateTxDependencies(transactionRequest): Promise<EstimateTxDependenciesReturns >
Will dryRun a transaction and check for missing dependencies.
If there are missing variable outputs, addVariableOutputs is called on the transaction.

Icon LinkParameters

NameTypeDescription
transactionRequestTransactionRequest The transaction request object.

Icon LinkReturns

A promise.

Icon LinkDefined in


Icon LinkfetchChain

fetchChain(): Promise<ChainInfo >
Fetches the chainInfo for the given node URL.

Icon LinkReturns

Promise<ChainInfo >
ChainInfo object

Icon LinkDefined in


Icon LinkfetchChainAndNodeInfo

fetchChainAndNodeInfo(): Promise<{ chain: ChainInfo ; nodeInfo: NodeInfo }>
Fetches both the chain and node information, saves it to the cache, and return it.

Icon LinkReturns

Promise<{ chain: ChainInfo ; nodeInfo: NodeInfo }>
NodeInfo and Chain

Icon LinkDefined in


Icon LinkfetchNode

fetchNode(): Promise<NodeInfo >
Returns the chain information.

Icon LinkReturns

Promise<NodeInfo >
NodeInfo object

Icon LinkDefined in


Icon LinkgetBalance

getBalance(owner, assetId): Promise<BN>
Returns the balance for the given owner for the given asset ID.

Icon LinkParameters

NameTypeDescription
ownerstring | AbstractAddress The address to get coins for.
assetIdBytesLike The asset ID of coins to get.

Icon LinkReturns

Promise<BN>
A promise that resolves to the balance.

Icon LinkDefined in


Icon LinkgetBalances

getBalances(owner, paginationArgs?): Promise<CoinQuantity []>
Returns balances for the given owner.

Icon LinkParameters

NameTypeDescription
ownerstring | AbstractAddress The address to get coins for.
paginationArgs?CursorPaginationArgsPagination arguments.

Icon LinkReturns

Promise<CoinQuantity []>
A promise that resolves to the balances.

Icon LinkDefined in


Icon LinkgetBlock

getBlock(idOrHeight): Promise<null | Block >
Returns block matching the given ID or height.

Icon LinkParameters

NameTypeDescription
idOrHeightstring | numberID or height of the block.

Icon LinkReturns

Promise<null | Block >
A promise that resolves to the block.

Icon LinkDefined in


Icon LinkgetBlockNumber

getBlockNumber(): Promise<BN>
Returns the block number.

Icon LinkReturns

Promise<BN>
A promise that resolves to the block number

Icon LinkDefined in


Icon LinkgetBlockWithTransactions

getBlockWithTransactions(idOrHeight): Promise<null | Block & { transactions: Partial<Omit<TransactionScript, "type">> & Partial<Omit<TransactionCreate, "type">> & Partial<Omit<TransactionMint, "type">> & { type: TransactionType }[] }>
Returns block matching the given ID or type, including transaction data.

Icon LinkParameters

NameTypeDescription
idOrHeightstring | numberID or height of the block.

Icon LinkReturns

Promise<null | Block & { transactions: Partial<Omit<TransactionScript, "type">> & Partial<Omit<TransactionCreate, "type">> & Partial<Omit<TransactionMint, "type">> & { type: TransactionType }[] }>
A promise that resolves to the block.

Icon LinkDefined in


Icon LinkgetBlocks

getBlocks(params): Promise<Block []>
Returns all the blocks matching the given parameters.

Icon LinkParameters

NameTypeDescription
paramsExact<{ after?: InputMaybe<string> ; before?: InputMaybe<string> ; first?: InputMaybe<number> ; last?: InputMaybe<number> }>The parameters to query blocks.

Icon LinkReturns

Promise<Block []>
A promise that resolves to the blocks.

Icon LinkDefined in


Icon LinkgetChain

getChain(): ChainInfo
Returns the cached chainInfo for the current URL.

Icon LinkReturns

Icon LinkDefined in


Icon LinkgetChainId

getChainId(): number
Returns the chain ID

Icon LinkReturns

number
A promise that resolves to the chain ID number

Icon LinkDefined in


Icon LinkgetCoins

getCoins(owner, assetId?, paginationArgs?): Promise<Coin []>
Returns coins for the given owner.

Icon LinkParameters

NameTypeDescription
ownerstring | AbstractAddress The address to get coins for
assetId?BytesLike The asset ID of coins to get
paginationArgs?CursorPaginationArgsPagination arguments

Icon LinkReturns

Promise<Coin []>

Icon LinkDefined in


Icon LinkgetContract

getContract(contractId): Promise<null | ContractResult >
Get deployed contract with the given ID.

Icon LinkParameters

NameTypeDescription
contractIdstringID of the contract.

Icon LinkReturns

Promise<null | ContractResult >
A promise that resolves to the contract.

Icon LinkDefined in


Icon LinkgetContractBalance

getContractBalance(contractId, assetId): Promise<BN>
Returns the balance for the given contract for the given asset ID.

Icon LinkParameters

NameTypeDescription
contractIdstring | AbstractAddress The contract ID to get the balance for.
assetIdBytesLike The asset ID of coins to get.

Icon LinkReturns

Promise<BN>
A promise that resolves to the balance.

Icon LinkDefined in


Icon LinkgetGasConfig

getGasConfig(): Object
Returns some helpful parameters related to gas fees.

Icon LinkReturns

Object
NameType
gasCostsGqlGasCosts
gasPerByteBN
gasPriceFactorBN
maxGasPerPredicateBN
maxGasPerTxBN
minGasPriceBN

Icon LinkDefined in


Icon LinkgetMessageProof

getMessageProof(transactionId, nonce, commitBlockId?, commitBlockHeight?): Promise<null | MessageProof >
Returns Message Proof for given transaction id and the message id from MessageOut receipt.

Icon LinkParameters

NameTypeDescription
transactionIdstringThe transaction to get message from.
noncestring-
commitBlockId?stringThe commit block id.
commitBlockHeight?BNThe commit block height.

Icon LinkReturns

Promise<null | MessageProof >
A promise that resolves to the message proof.

Icon LinkDefined in


Icon LinkgetMessageStatus

getMessageStatus(nonce): Promise<MessageStatus >
Returns Message Proof for given transaction id and the message id from MessageOut receipt.

Icon LinkParameters

NameTypeDescription
noncestringThe nonce of the message to get status from.

Icon LinkReturns

Promise<MessageStatus >
A promise that resolves to the message status

Icon LinkDefined in


Icon LinkgetMessages

getMessages(address, paginationArgs?): Promise<Message []>
Returns message for the given address.

Icon LinkParameters

NameTypeDescription
addressstring | AbstractAddress The address to get message from.
paginationArgs?CursorPaginationArgsPagination arguments.

Icon LinkReturns

Promise<Message []>
A promise that resolves to the messages.

Icon LinkDefined in


Icon LinkgetNode

getNode(): NodeInfo
Returns the cached nodeInfo for the current URL.

Icon LinkReturns

Icon LinkDefined in


Icon LinkgetResourcesForTransaction

getResourcesForTransaction(owner, transactionRequestLike, forwardingQuantities?): Promise<{ estimatedInputs: TransactionRequestInput [] ; gasPrice: BN ; gasUsed: BN ; maxFee: BN ; maxGas: BN ; minFee: BN ; minGas: BN ; minGasPrice: BN ; missingContractIds: string[] ; outputVariables: number ; receipts: TransactionResultReceipt[] ; requiredQuantities: CoinQuantity [] ; resources: Resource [] ; usedFee: BN }>

Icon LinkParameters

NameTypeDefault value
ownerstring | AbstractAddress undefined
transactionRequestLikeTransactionRequestLike undefined
forwardingQuantitiesCoinQuantity [][]

Icon LinkReturns

Promise<{ estimatedInputs: TransactionRequestInput [] ; gasPrice: BN ; gasUsed: BN ; maxFee: BN ; maxGas: BN ; minFee: BN ; minGas: BN ; minGasPrice: BN ; missingContractIds: string[] ; outputVariables: number ; receipts: TransactionResultReceipt[] ; requiredQuantities: CoinQuantity [] ; resources: Resource [] ; usedFee: BN }>

Icon LinkDefined in


Icon LinkgetResourcesToSpend

getResourcesToSpend(owner, quantities, excludedIds?): Promise<Resource []>
Returns resources for the given owner satisfying the spend query.

Icon LinkParameters

NameTypeDescription
ownerstring | AbstractAddress The address to get resources for.
quantitiesCoinQuantityLike []The quantities to get.
excludedIds?ExcludeResourcesOptionIDs of excluded resources from the selection.

Icon LinkReturns

Promise<Resource []>
A promise that resolves to the resources.

Icon LinkDefined in


Icon LinkgetTransaction

getTransaction<TTransactionType>(transactionId): Promise<null | Transaction<TTransactionType>>
Get transaction with the given ID.

Icon LinkType parameters

NameType
TTransactionTypevoid

Icon LinkParameters

NameTypeDescription
transactionIdstringID of the transaction.

Icon LinkReturns

Promise<null | Transaction<TTransactionType>>
A promise that resolves to the transaction.

Icon LinkDefined in


Icon LinkgetTransactionCost

getTransactionCost(transactionRequestLike, forwardingQuantities?, «destructured»?): Promise<TransactionCost >
Returns a transaction cost to enable user to set gasLimit and also reserve balance amounts on the the transaction.

Icon LinkParameters

NameTypeDefault valueDescription
transactionRequestLikeTransactionRequestLike undefinedThe transaction request object.
forwardingQuantitiesCoinQuantity [][]-
«destructured»TransactionCostParams {}-

Icon LinkReturns

Promise<TransactionCost >
A promise that resolves to the transaction cost object.

Icon LinkDefined in


Icon LinkgetTransactionResponse

getTransactionResponse(transactionId): Promise<TransactionResponse >

Icon LinkParameters

NameType
transactionIdstring

Icon LinkReturns

Icon LinkDefined in


Icon LinkgetVersion

getVersion(): Promise<string>
Returns the version of the connected node.

Icon LinkReturns

Promise<string>
A promise that resolves to the version string.

Icon LinkDefined in


Icon LinkproduceBlocks

produceBlocks(amount, startTime?): Promise<BN>
Lets you produce blocks with custom timestamps and the block number of the last block produced.

Icon LinkParameters

NameTypeDescription
amountnumberThe amount of blocks to produce
startTime?numberThe UNIX timestamp (milliseconds) to set for the first produced block

Icon LinkReturns

Promise<BN>
A promise that resolves to the block number of the last produced block.

Icon LinkDefined in


Icon LinksendTransaction

sendTransaction(transactionRequestLike, «destructured»?): Promise<TransactionResponse >
Submits a transaction to the chain to be executed.
If the transaction is missing any dependencies, the transaction will be mutated and those dependencies will be added.

Icon LinkParameters

NameTypeDescription
transactionRequestLikeTransactionRequestLike The transaction request object.
«destructured»ProviderSendTxParams -

Icon LinkReturns

A promise that resolves to the transaction response object.

Icon LinkDefined in


Icon Linksimulate

simulate(transactionRequestLike, «destructured»?): Promise<CallResult >
Executes a signed transaction without applying the states changes on the chain.
If the transaction is missing any dependencies, the transaction will be mutated and those dependencies will be added

Icon LinkParameters

NameTypeDescription
transactionRequestLikeTransactionRequestLike The transaction request object.
«destructured»EstimateTransactionParams -

Icon LinkReturns

Promise<CallResult >
A promise that resolves to the call result object.

Icon LinkDefined in


Icon LinkclearChainAndNodeCaches

clearChainAndNodeCaches(): void

Icon LinkReturns

void

Icon LinkDefined in


Icon Linkcreate

create(url, options?): Promise<Provider >
Creates a new instance of the Provider class. This is the recommended way to initialize a Provider.

Icon LinkParameters

NameTypeDescription
urlstringGraphQL endpoint of the Fuel node
optionsProviderOptions Additional options for the provider

Icon LinkReturns

Promise<Provider >

Icon LinkDefined in


Icon LinkensureClientVersionIsSupported

ensureClientVersionIsSupported(nodeInfo): void

Icon LinkParameters

NameType
nodeInfoNodeInfo

Icon LinkReturns

void

Icon LinkDefined in


Icon LinkgetFetchFn

getFetchFn(options): (url: string, requestInit?: RequestInit, providerOptions?: Omit<ProviderOptions , "fetch">) => Promise<Response>

Icon LinkParameters

NameType
optionsProviderOptions

Icon LinkReturns

fn
▸ (url, requestInit?, providerOptions?): Promise<Response>
Custom fetch function to use for making requests.

Icon LinkParameters

NameType
urlstring
requestInit?RequestInit
providerOptions?Omit<ProviderOptions , "fetch">

Icon LinkReturns

Promise<Response>

Icon LinkDefined in