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:83
_provider
• Protected Optional _provider: Provider
The provider used to interact with the network.
Inherited from
Defined in
packages/account/src/account.ts:78
address
• Readonly address: AbstractAddress
The address associated with the account.
Inherited from
Defined in
packages/account/src/account.ts:73
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:106
• 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:119
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:389
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:371
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:354
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:129
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:316
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:199
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:176
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:187
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:154
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:267
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:166
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
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:524
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:337
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:410
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:464
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.
