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