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:60

Properties

account

account: null | Account

Defined in

contract-factory.ts:51


bytecode

bytecode: BytesLike

Defined in

contract-factory.ts:48


interface

interface: Interface<JsonAbi>

Defined in

contract-factory.ts:49


provider

provider: null | Provider

Defined in

contract-factory.ts:50

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:102


createTransactionRequest

createTransactionRequest(deployOptions?): Object

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

Parameters

NameTypeDescription
deployOptions?DeployContractOptionsOptions for deploying the contract.

Returns

Object

The CreateTransactionRequest object for deploying the contract.

NameType
contractIdstring
transactionRequestCreateTransactionRequest

Defined in

contract-factory.ts:112


deploy

deploy<TContract>(deployOptions?): Promise<DeployContractResult<TContract>>

Deploy a contract with the specified options.

Type parameters

NameType
TContractextends Contract = Contract

Parameters

NameTypeDescription
deployOptionsDeployContractOptionsOptions for deploying the contract.

Returns

Promise<DeployContractResult<TContract>>

A promise that resolves to the deployed contract instance.

Defined in

contract-factory.ts:154


getAccount

getAccount(): Account

Returns

Account

Defined in

contract-factory.ts:222


prepareDeploy

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

Parameters

NameType
deployOptionsDeployContractOptions

Returns

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

Defined in

contract-factory.ts:229


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:185