Class: Predicate<TInputData>
@fuel-ts/account.Predicate
Predicate
provides methods to populate transaction data with predicate information and sending transactions with them.
Type parameters
Name | Type |
---|---|
TInputData | extends InputValue [] |
Hierarchy
↳
Predicate
Constructors
constructor
• new Predicate<TInputData
>(«destructured»
): Predicate
<TInputData
>
Creates an instance of the Predicate class.
Type parameters
Name | Type |
---|---|
TInputData | extends InputValue [] |
Parameters
Name | Type |
---|---|
«destructured» | PredicateParams <TInputData > |
Returns
Predicate
<TInputData
>
Overrides
Defined in
packages/account/src/predicate/predicate.ts:53
Properties
_connector
• Protected
Optional
_connector: FuelConnector
The connector for use with external wallets
Inherited from
Defined in
packages/account/src/account.ts:85
_provider
• Protected
Optional
_provider: Provider
The provider used to interact with the network.
Inherited from
Defined in
packages/account/src/account.ts:80
address
• Readonly
address: AbstractAddress
The address associated with the account.
Inherited from
Defined in
packages/account/src/account.ts:75
bytes
• bytes: Uint8Array
Defined in
packages/account/src/predicate/predicate.ts:40
interface
• Optional
interface: Interface
<JsonAbi
>
Defined in
packages/account/src/predicate/predicate.ts:42
predicateData
• predicateData: TInputData
Defined in
packages/account/src/predicate/predicate.ts:41
Accessors
provider
• get
provider(): Provider
The provider used to interact with the network.
Throws
FuelError
if the provider is not set.
Returns
A Provider instance.
Inherited from
Account.provider
Defined in
packages/account/src/account.ts:108
• set
provider(provider
): void
Sets the provider for the account.
Parameters
Name | Type | Description |
---|---|---|
provider | Provider | A Provider instance. |
Returns
void
Inherited from
Account.provider
Defined in
packages/account/src/account.ts:121
Methods
addBatchTransfer
▸ addBatchTransfer(request
, transferParams
): ScriptTransactionRequest
Adds multiple transfers to a script transaction request.
Parameters
Name | Type | Description |
---|---|---|
request | ScriptTransactionRequest | The script transaction request to add transfers to. |
transferParams | TransferParams [] | An array of TransferParams objects representing the transfers to be made. |
Returns
The updated script transaction request.
Inherited from
Defined in
packages/account/src/account.ts:391
addTransfer
▸ addTransfer(request
, transferParams
): ScriptTransactionRequest
Adds a transfer to the given transaction request.
Parameters
Name | Type | Description |
---|---|---|
request | ScriptTransactionRequest | The script transaction request to add transfers to. |
transferParams | TransferParams | The object representing the transfer to be made. |
Returns
The updated transaction request with the added transfer.
Inherited from
Defined in
packages/account/src/account.ts:373
batchTransfer
▸ batchTransfer(transferParams
, txParams?
): Promise
<TransactionResponse
>
Transfers multiple amounts of a token to multiple recipients.
Parameters
Name | Type | Description |
---|---|---|
transferParams | TransferParams [] | An array of TransferParams objects representing the transfers to be made. |
txParams | TxParamsType | Optional transaction parameters. |
Returns
Promise
<TransactionResponse
>
A promise that resolves to a TransactionResponse
object representing the transaction result.
Inherited from
Defined in
packages/account/src/account.ts:356
connect
▸ connect(provider
): Provider
Changes the provider connection for the account.
Parameters
Name | Type | Description |
---|---|---|
provider | Provider | A Provider instance. |
Returns
The updated Provider instance.
Inherited from
Defined in
packages/account/src/account.ts:131
createTransfer
▸ createTransfer(destination
, amount
, assetId?
, txParams?
): Promise
<TransactionRequest
>
A helper that creates a transfer transaction request and returns it.
Parameters
Name | Type | Description |
---|---|---|
destination | string | AbstractAddress | The address of the destination. |
amount | BigNumberish | The amount of coins to transfer. |
assetId? | BytesLike | The asset ID of the coins to transfer (optional). |
txParams | TxParamsType | The transaction parameters (optional). |
Returns
Promise
<TransactionRequest
>
A promise that resolves to the prepared transaction request.
Inherited from
Defined in
packages/account/src/account.ts:318
fund
▸ fund<T
>(request
, params
): Promise
<T
>
Funds a transaction request by adding the necessary resources.
Type parameters
Name | Type | Description |
---|---|---|
T | extends TransactionRequest | The type of the TransactionRequest. |
Parameters
Name | Type | Description |
---|---|---|
request | T | The transaction request to fund. |
params | EstimatedTxParams | The estimated transaction parameters. |
Returns
Promise
<T
>
A promise that resolves to the funded transaction request.
Inherited from
Defined in
packages/account/src/account.ts:201
generateFakeResources
▸ generateFakeResources(coins
): Resource
[]
Generates an array of fake resources based on the provided coins.
Parameters
Name | Type | Description |
---|---|---|
coins | FakeResources [] | An array of FakeResources objects representing the coins. |
Returns
Resource
[]
An array of Resource
objects with generated properties.
Overrides
Defined in
packages/account/src/predicate/predicate.ts:206
getBalance
▸ getBalance(assetId?
): Promise
<BN
>
Retrieves the balance of the account for the given asset.
Parameters
Name | Type | Description |
---|---|---|
assetId? | BytesLike | The asset ID to check the balance for (optional). |
Returns
Promise
<BN
>
A promise that resolves to the balance amount.
Inherited from
Defined in
packages/account/src/account.ts:178
getBalances
▸ getBalances(): Promise
<GetBalancesResponse
>
Retrieves all the balances for the account.
Returns
Promise
<GetBalancesResponse
>
A promise that resolves to an array of Coins and their quantities.
Inherited from
Defined in
packages/account/src/account.ts:189
getCoins
▸ getCoins(assetId?
, paginationArgs?
): Promise
<GetCoinsResponse
>
Retrieves coins owned by the account.
Parameters
Name | Type | Description |
---|---|---|
assetId? | BytesLike | The asset ID of the coins to retrieve (optional). |
paginationArgs? | CursorPaginationArgs | - |
Returns
Promise
<GetCoinsResponse
>
A promise that resolves to an array of Coins.
Inherited from
Defined in
packages/account/src/account.ts:156
getIndexFromPlaceholderWitness
▸ getIndexFromPlaceholderWitness(request
): number
Returns the index of the witness placeholder that was added to this predicate. If no witness placeholder was added, it returns -1.
Parameters
Name | Type | Description |
---|---|---|
request | TransactionRequest | The transaction request. |
Returns
number
The index of the witness placeholder, or -1 if there is no witness placeholder.
Defined in
packages/account/src/predicate/predicate.ts:274
getMessages
▸ getMessages(paginationArgs?
): Promise
<GetMessagesResponse
>
Retrieves messages owned by the account.
Parameters
Name | Type |
---|---|
paginationArgs? | CursorPaginationArgs |
Returns
Promise
<GetMessagesResponse
>
A promise that resolves to an array of Messages.
Inherited from
Defined in
packages/account/src/account.ts:168
getPredicateData
▸ getPredicateData(): Uint8Array
Returns
Uint8Array
Defined in
packages/account/src/predicate/predicate.ts:128
getResourcesToSpend
▸ getResourcesToSpend(quantities
, excludedIds?
): Promise
<Resource
[]>
Retrieves resources satisfying the spend query for the account.
Parameters
Name | Type | Description |
---|---|---|
quantities | CoinQuantityLike [] | IDs of coins to exclude. |
excludedIds? | ExcludeResourcesOption | IDs of resources to be excluded from the query. |
Returns
Promise
<Resource
[]>
A promise that resolves to an array of Resources.
Overrides
Defined in
packages/account/src/predicate/predicate.ts:184
getTransactionCost
▸ getTransactionCost(transactionRequestLike
, transactionCostParams?
): Promise
<TransactionCost
>
Returns a transaction cost to enable user to set gasLimit and also reserve balance amounts on the transaction.
Parameters
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request object. |
transactionCostParams | TransactionCostParams | The transaction cost parameters (optional). |
Returns
Promise
<TransactionCost
>
A promise that resolves to the transaction cost object.
Inherited from
Defined in
packages/account/src/account.ts:514
populateTransactionPredicateData
▸ populateTransactionPredicateData<T
>(transactionRequestLike
): T
Populates the transaction data with predicate data.
Type parameters
Name | Type |
---|---|
T | extends TransactionRequest |
Parameters
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request-like object. |
Returns
T
The transaction request with predicate data.
Defined in
packages/account/src/predicate/predicate.ts:81
sendTransaction
▸ sendTransaction(transactionRequestLike
): Promise
<TransactionResponse
>
Sends a transaction with the populated predicate data.
Parameters
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request-like object. |
Returns
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
Overrides
Defined in
packages/account/src/predicate/predicate.ts:112
signTransaction
▸ signTransaction(transactionRequestLike
): Promise
<string
>
Signs a transaction from the account via the connector..
Parameters
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request to sign. |
Returns
Promise
<string
>
A promise that resolves to the signature of the transaction.
Inherited from
Defined in
packages/account/src/account.ts:564
simulateTransaction
▸ simulateTransaction(transactionRequestLike
): Promise
<CallResult
>
Simulates a transaction with the populated predicate data.
Parameters
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request-like object. |
Returns
Promise
<CallResult
>
A promise that resolves to the call result.
Overrides
Defined in
packages/account/src/predicate/predicate.ts:123
transfer
▸ transfer(destination
, amount
, assetId?
, txParams?
): Promise
<TransactionResponse
>
Transfers coins to a destination address.
Parameters
Name | Type | Description |
---|---|---|
destination | string | AbstractAddress | The address of the destination. |
amount | BigNumberish | The amount of coins to transfer. |
assetId? | BytesLike | The asset ID of the coins to transfer (optional). |
txParams | TxParamsType | The transaction parameters (optional). |
Returns
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
Inherited from
Defined in
packages/account/src/account.ts:339
transferToContract
▸ transferToContract(contractId
, amount
, assetId?
, txParams?
): Promise
<TransactionResponse
>
Transfers coins to a contract address.
Parameters
Name | Type | Description |
---|---|---|
contractId | string | AbstractAddress | The address of the contract. |
amount | BigNumberish | The amount of coins to transfer. |
assetId? | BytesLike | The asset ID of the coins to transfer (optional). |
txParams | TxParamsType | The transaction parameters (optional). |
Returns
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
Inherited from
Defined in
packages/account/src/account.ts:412
withdrawToBaseLayer
▸ withdrawToBaseLayer(recipient
, amount
, txParams?
): Promise
<TransactionResponse
>
Withdraws an amount of the base asset to the base chain.
Parameters
Name | Type | Description |
---|---|---|
recipient | string | AbstractAddress | Address of the recipient on the base chain. |
amount | BigNumberish | Amount of base asset. |
txParams | TxParamsType | The transaction parameters (optional). |
Returns
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
Inherited from
Defined in
packages/account/src/account.ts:465
processPredicateData
▸ processPredicateData(bytes
, jsonAbi?
, configurableConstants?
): Object
Processes the predicate data and returns the altered bytecode and interface.
Parameters
Name | Type | Description |
---|---|---|
bytes | BytesLike | The bytes of the predicate. |
jsonAbi? | JsonAbi | The JSON ABI of the predicate. |
configurableConstants? | Object | Optional configurable constants for the predicate. |
Returns
Object
An object containing the new predicate bytes and interface.
Name | Type |
---|---|
predicateBytes | Uint8Array |
predicateInterface | undefined | Interface <JsonAbi > |
Defined in
packages/account/src/predicate/predicate.ts:145
setConfigurableConstants
▸ setConfigurableConstants(bytes
, configurableConstants
, abiInterface?
): Uint8Array
Sets the configurable constants for the predicate.
Parameters
Name | Type | Description |
---|---|---|
bytes | Uint8Array | The bytes of the predicate. |
configurableConstants | Object | Configurable constants to be set. |
abiInterface? | Interface <JsonAbi > | The ABI interface of the predicate. |
Returns
Uint8Array
The mutated bytes with the configurable constants set.
Defined in
packages/account/src/predicate/predicate.ts:222