Skip to content

@fuel-ts/contract v0.94.1Docs


Class: ContractFactory

ContractFactory provides utilities for deploying and configuring contracts.

Constructors

new ContractFactory()

new ContractFactory(bytecode, abi, accountOrProvider): ContractFactory

Create a ContractFactory instance.

Parameters

ParameterTypeDefault valueDescription
bytecodeBytesLikeundefinedThe bytecode of the contract.
abiInterface | JsonAbiundefinedThe contract's ABI (Application Binary Interface).
accountOrProvidernull | Provider | AccountnullAn account or provider to be associated with the factory.

Returns

ContractFactory

Defined in

packages/contract/src/contract-factory.ts:68

Properties

PropertyTypeDefined in
accountnull | Accountpackages/contract/src/contract-factory.ts:59
bytecodeBytesLikepackages/contract/src/contract-factory.ts:56
interfaceInterfacepackages/contract/src/contract-factory.ts:57
providernull | Providerpackages/contract/src/contract-factory.ts:58

Methods

connect()

connect(provider): ContractFactory

Connect the factory to a provider.

Parameters

ParameterTypeDescription
providerProviderThe provider to be associated with the factory.

Returns

ContractFactory

A new ContractFactory instance.

Defined in

packages/contract/src/contract-factory.ts:110


createTransactionRequest()

createTransactionRequest(deployOptions?): object

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

Parameters

ParameterTypeDescription
deployOptions?object & CreateTransactionRequestLike & objectOptions for deploying the contract.

Returns

object

The CreateTransactionRequest object for deploying the contract.

NameTypeDefined in
contractIdstringpackages/contract/src/contract-factory.ts:152
transactionRequestCreateTransactionRequestpackages/contract/src/contract-factory.ts:153

Defined in

packages/contract/src/contract-factory.ts:120


deploy()

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

Deploy a contract of any length with the specified options.

Type Parameters

Type ParameterDefault type
TContract extends ContractContract

Parameters

ParameterTypeDescription
deployOptionsDeployContractOptionsOptions for deploying the contract.

Returns

Promise<DeployContractResult<TContract>>

A promise that resolves to the deployed contract instance.

Defined in

packages/contract/src/contract-factory.ts:195


deployAsBlobTx()

deployAsBlobTx<TContract>(deployOptions): Promise<DeployContractResult<TContract>>

Chunks and deploys a contract via a loader contract. Suitable for deploying contracts larger than the max contract size.

Type Parameters

Type ParameterDefault type
TContract extends ContractContract

Parameters

ParameterTypeDescription
deployOptionsDeployContractOptionsOptions for deploying the contract.

Returns

Promise<DeployContractResult<TContract>>

A promise that resolves to the deployed contract instance.

Defined in

packages/contract/src/contract-factory.ts:251


deployAsCreateTx()

deployAsCreateTx<TContract>(deployOptions): Promise<DeployContractResult<TContract>>

Deploy a contract with the specified options.

Type Parameters

Type ParameterDefault type
TContract extends ContractContract

Parameters

ParameterTypeDescription
deployOptionsDeployContractOptionsOptions for deploying the contract.

Returns

Promise<DeployContractResult<TContract>>

A promise that resolves to the deployed contract instance.

Defined in

packages/contract/src/contract-factory.ts:213


setConfigurableConstants()

setConfigurableConstants(configurableConstants): void

Set configurable constants of the contract with the specified values.

Parameters

ParameterTypeDescription
configurableConstantsobjectAn object containing configurable names and their values.

Returns

void

Defined in

packages/contract/src/contract-factory.ts:377