Skip to content

Class: ContractFactory ​

@fuel-ts/contract.ContractFactory

ContractFactory provides utilities for deploying and configuring contracts.

Constructors ​

constructor ​

• new ContractFactory(bytecode, abi, accountOrProvider?): ContractFactory

Create a ContractFactory instance.

Parameters ​

NameTypeDefault valueDescription
bytecodeBytesLikeundefinedThe bytecode of the contract.
abiJsonAbi | Interface<JsonAbi>undefinedThe contract's ABI (Application Binary Interface).
accountOrProvidernull | Provider | AccountnullAn account or provider to be associated with the factory.

Returns ​

ContractFactory

Defined in ​

contract-factory.ts:55

Properties ​

account ​

• account: null | Account

Defined in ​

contract-factory.ts:46


bytecode ​

• bytecode: BytesLike

Defined in ​

contract-factory.ts:43


interface ​

• interface: Interface<JsonAbi>

Defined in ​

contract-factory.ts:44


provider ​

• provider: null | Provider

Defined in ​

contract-factory.ts:45

Methods ​

connect ​

▸ connect(provider): ContractFactory

Connect the factory to a provider.

Parameters ​

NameTypeDescription
providerProviderThe provider to be associated with the factory.

Returns ​

ContractFactory

A new ContractFactory instance.

Defined in ​

contract-factory.ts:97


createTransactionRequest ​

▸ createTransactionRequest(deployContractOptions?): Object

Create a transaction request to deploy a contract with the specified options.

Parameters ​

NameTypeDescription
deployContractOptions?DeployContractOptionsOptions for deploying the contract.

Returns ​

Object

The CreateTransactionRequest object for deploying the contract.

NameType
contractIdstring
transactionRequestCreateTransactionRequest

Defined in ​

contract-factory.ts:107


deployContract ​

▸ deployContract<TContract>(deployContractOptions?): Promise<DeployContractResult<TContract>>

Deploy a contract with the specified options.

Type parameters ​

NameType
TContractextends Contract = Contract

Parameters ​

NameTypeDescription
deployContractOptionsDeployContractOptionsOptions for deploying the contract.

Returns ​

Promise<DeployContractResult<TContract>>

A promise that resolves to the deployed contract instance.

Defined in ​

contract-factory.ts:149


getAccount ​

▸ getAccount(): Account

Returns ​

Account

Defined in ​

contract-factory.ts:205


prepareDeploy ​

▸ prepareDeploy(deployContractOptions): Promise<{ contractId: string ; transactionRequest: CreateTransactionRequest }>

Parameters ​

NameType
deployContractOptionsDeployContractOptions

Returns ​

Promise<{ contractId: string ; transactionRequest: CreateTransactionRequest }>

Defined in ​

contract-factory.ts:212


setConfigurableConstants ​

▸ setConfigurableConstants(configurableConstants): void

Set configurable constants of the contract with the specified values.

Parameters ​

NameTypeDescription
configurableConstantsObjectAn object containing configurable names and their values.

Returns ​

void

Defined in ​

contract-factory.ts:174