@fuel-ts/account .Predicate
Predicate
provides methods to populate transaction data with predicate information and sending transactions with them.
Name | Type |
---|---|
TInputData | extends InputValue [] |
↳ Predicate
• new Predicate<TInputData
>(«destructured»
): Predicate
<TInputData
>
Creates an instance of the Predicate class.
Name | Type |
---|---|
TInputData | extends InputValue [] |
Name | Type |
---|---|
«destructured» | PredicateParams <TInputData > |
Predicate
<TInputData
>
packages/account/src/predicate/predicate.ts:57
• Protected
Optional
_connector: FuelConnector
packages/account/src/account.ts:54
• Protected
Optional
_provider: Provider
The provider used to interact with the network.
packages/account/src/account.ts:52
• Readonly
address: AbstractAddress
The address associated with the account.
packages/account/src/account.ts:47
• bytes: Uint8Array
packages/account/src/predicate/predicate.ts:43
• Optional
interface: Interface
<JsonAbi
>
packages/account/src/predicate/predicate.ts:46
• predicateData: TInputData
packages/account/src/predicate/predicate.ts:45
• predicateDataBytes: Uint8Array
packages/account/src/predicate/predicate.ts:44
• get
provider(): Provider
The provider used to interact with the network.
Throws
FuelError
if the provider is not set.
A Provider instance.
Account.provider
packages/account/src/account.ts:76
• set
provider(provider
): void
Sets the provider for the account.
Name | Type | Description |
---|---|---|
provider | Provider | A Provider instance. |
void
Account.provider
packages/account/src/account.ts:89
▸ connect(provider
): Provider
Changes the provider connection for the account.
Name | Type | Description |
---|---|---|
provider | Provider | A Provider instance. |
The updated Provider instance.
packages/account/src/account.ts:99
▸ createTransfer(destination
, amount
, assetId?
, txParams?
): Promise
<TransactionRequest
>
A helper that creates a transfer transaction request and returns it.
Name | Type | Default value | Description |
---|---|---|---|
destination | AbstractAddress | undefined | The address of the destination. |
amount | BigNumberish | undefined | The amount of coins to transfer. |
assetId | BytesLike | BaseAssetId | The asset ID of the coins to transfer. |
txParams | TxParamsType | {} | The transaction parameters (gasLimit, gasPrice, maturity). |
Promise
<TransactionRequest
>
A promise that resolves to the prepared transaction request.
packages/account/src/predicate/predicate.ts:111
▸ fund<T
>(request
, coinQuantities
, fee
): Promise
<void
>
Adds resources to the transaction enough to fund it.
Name | Type |
---|---|
T | extends TransactionRequest |
Name | Type | Description |
---|---|---|
request | T | The transaction request. |
coinQuantities | CoinQuantity [] | The coin quantities required to execute the transaction. |
fee | BN | The estimated transaction fee. |
Promise
<void
>
A promise that resolves when the resources are added to the transaction.
packages/account/src/account.ts:240
▸ getBalance(assetId?
): Promise
<BN
>
Retrieves the balance of the account for the given asset.
Name | Type | Default value | Description |
---|---|---|---|
assetId | BytesLike | BaseAssetId | The asset ID to check the balance for. |
Promise
<BN
>
A promise that resolves to the balance amount.
packages/account/src/account.ts:193
▸ getBalances(): Promise
<CoinQuantity
[]>
Retrieves all the balances for the account.
Promise
<CoinQuantity
[]>
A promise that resolves to an array of Coins and their quantities.
packages/account/src/account.ts:203
▸ getCoins(assetId?
): Promise
<Coin
[]>
Retrieves coins owned by the account.
Name | Type | Description |
---|---|---|
assetId? | BytesLike | The asset ID of the coins to retrieve. |
Promise
<Coin
[]>
A promise that resolves to an array of Coins.
packages/account/src/account.ts:124
▸ getMessages(): Promise
<Message
[]>
Retrieves messages owned by the account.
Promise
<Message
[]>
A promise that resolves to an array of Messages.
packages/account/src/account.ts:158
▸ getPredicateData(policiesLength
): Uint8Array
Name | Type |
---|---|
policiesLength | number |
Uint8Array
packages/account/src/predicate/predicate.ts:150
▸ getResourcesToSpend(quantities
, excludedIds?
): Promise
<Resource
[]>
Retrieves resources satisfying the spend query for the account.
Name | Type | Description |
---|---|---|
quantities | CoinQuantityLike [] | IDs of coins to exclude. |
excludedIds? | ExcludeResourcesOption | IDs of resources to be excluded from the query. |
Promise
<Resource
[]>
A promise that resolves to an array of Resources.
packages/account/src/account.ts:111
▸ populateTransactionPredicateData(transactionRequestLike
): TransactionRequest
Populates the transaction data with predicate data.
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request-like object. |
The transaction request with predicate data.
packages/account/src/predicate/predicate.ts:85
▸ sendTransaction(transactionRequestLike
, options?
): Promise
<TransactionResponse
>
Sends a transaction with the populated predicate data.
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request-like object. |
options? | Pick <ProviderSendTxParams , "awaitExecution" > | - |
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
packages/account/src/predicate/predicate.ts:131
▸ signMessage(message
): Promise
<string
>
Name | Type |
---|---|
message | string |
Promise
<string
>
packages/account/src/account.ts:504
▸ signTransaction(transactionRequestLike
): Promise
<string
>
Signs a transaction with the wallet's private key.
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request to sign. |
Promise
<string
>
A promise that resolves to the signature of the transaction.
packages/account/src/account.ts:517
▸ simulateTransaction(transactionRequestLike
): Promise
<CallResult
>
Simulates a transaction with the populated predicate data.
Name | Type | Description |
---|---|---|
transactionRequestLike | TransactionRequestLike | The transaction request-like object. |
Promise
<CallResult
>
A promise that resolves to the call result.
packages/account/src/predicate/predicate.ts:145
▸ transfer(destination
, amount
, assetId?
, txParams?
): Promise
<TransactionResponse
>
Transfers coins to a destination address.
Name | Type | Default value | Description |
---|---|---|---|
destination | string | AbstractAddress | undefined | The address of the destination. |
amount | BigNumberish | undefined | The amount of coins to transfer. |
assetId | BytesLike | BaseAssetId | The asset ID of the coins to transfer. |
txParams | TxParamsType | {} | The transaction parameters (gasLimit, gasPrice, maturity). |
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
packages/account/src/account.ts:365
▸ transferToContract(contractId
, amount
, assetId?
, txParams?
): Promise
<TransactionResponse
>
Transfers coins to a contract address.
Name | Type | Default value | Description |
---|---|---|---|
contractId | string | AbstractAddress | undefined | The address of the contract. |
amount | BigNumberish | undefined | The amount of coins to transfer. |
assetId | BytesLike | BaseAssetId | The asset ID of the coins to transfer. |
txParams | TxParamsType | {} | The optional transaction parameters. |
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
packages/account/src/account.ts:394
▸ withdrawToBaseLayer(recipient
, amount
, txParams?
): Promise
<TransactionResponse
>
Withdraws an amount of the base asset to the base chain.
Name | Type | Description |
---|---|---|
recipient | string | AbstractAddress | Address of the recipient on the base chain. |
amount | BigNumberish | Amount of base asset. |
txParams | TxParamsType | The optional transaction parameters. |
Promise
<TransactionResponse
>
A promise that resolves to the transaction response.
packages/account/src/account.ts:456
▸ processPredicateData(bytes
, jsonAbi?
, configurableConstants?
): Object
Processes the predicate data and returns the altered bytecode and interface.
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. |
Object
An object containing the new predicate bytes and interface.
Name | Type |
---|---|
predicateBytes | Uint8Array |
predicateInterface | undefined | Interface <JsonAbi > |
packages/account/src/predicate/predicate.ts:180
▸ setConfigurableConstants(bytes
, configurableConstants
, abiInterface?
): Uint8Array
Sets the configurable constants for the predicate.
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. |
Uint8Array
The mutated bytes with the configurable constants set.