ContractDeployer
Handles deploying new contracts
class ContractDeployer extends RPCConnectionHandler {}
function constructor( options: | undefined | { clientId?: string; gasless?: | { experimentalChainlessSupport?: boolean; openzeppelin: { domainName?: string; domainSeparatorVersion?: string; domainVersion?: string; relayerForwarderAddress?: string; relayerUrl: string; useEOAForwarder?: boolean; }; } | { biconomy: { apiId: string; apiKey: string; deadlineSeconds?: number; }; } | { engine: { domainName?: string; domainSeparatorVersion?: string; domainVersion?: string; relayerForwarderAddress?: string; relayerUrl: string; }; experimentalChainlessSupport?: boolean; }; gasSettings?: { maxPriceInGwei?: number; speed?: "standard" | "fast" | "fastest"; }; gatewayUrls?: Array<string>; readonlySettings?: { chainId?: number; rpcUrl: string }; rpcBatchSettings?: { sizeLimit?: number; timeLimit?: number }; secretKey?: string; supportedChains?: Array<{ chainId: number; nativeCurrency: { decimals: number; name: string; symbol: string; }; rpc: Array<string>; slug: string; }>; },
let options: | undefined | { clientId?: string; gasless?: | { experimentalChainlessSupport?: boolean; openzeppelin: { domainName?: string; domainSeparatorVersion?: string; domainVersion?: string; relayerForwarderAddress?: string; relayerUrl: string; useEOAForwarder?: boolean; }; } | { biconomy: { apiId: string; apiKey: string; deadlineSeconds?: number; }; } | { engine: { domainName?: string; domainSeparatorVersion?: string; domainVersion?: string; relayerForwarderAddress?: string; relayerUrl: string; }; experimentalChainlessSupport?: boolean; }; gasSettings?: { maxPriceInGwei?: number; speed?: "standard" | "fast" | "fastest"; }; gatewayUrls?: Array<string>; readonlySettings?: { chainId?: number; rpcUrl: string }; rpcBatchSettings?: { sizeLimit?: number; timeLimit?: number }; secretKey?: string; supportedChains?: Array<{ chainId: number; nativeCurrency: { decimals: number; name: string; symbol: string; }; rpc: Array<string>; slug: string; }>; };
Listen to all deploy transactions from this deployer
function addDeployListener(): void;
Deploy any published contract by its name
function deployPublishedContractDeterministic( contractName: string, constructorParams: Array<any>, publisherAddress: string, contractVersion: string, saltForCreate2?: string,): Promise<string>;
function getTransactionsForDeploy( publishMetadataUri: string,
Predict Create2 address of a contract
function predictAddressDeterministic( contractName: string, constructorParams: Array<any>, publisherAddress: string, contractVersion: string, saltForCreate2?: string,): Promise<string>;
Remove all deploy listeners
function removeAllDeployListeners(): void;
Remove a deploy listener
function removeDeployListener(): void;
function deployAirdropERC1155(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployAirdropERC1155.prepare()
with same arguments.Learn more
function deployAirdropERC20(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployAirdropERC20.prepare()
with same arguments.Learn more
function deployAirdropERC721(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployAirdropERC721.prepare()
with same arguments.Learn more
function deployBuiltInContract( contractType: any, contractMetadata: any, version: string,): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployBuiltInContract.prepare()
with same arguments.Learn more
function deployContractWithAbi( abi: ContractInterface, bytecode: BytesLike | { object: string }, constructorParams: Array<any>,): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployContractWithAbi.prepare()
with same arguments.Learn more
function deployEdition(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployEdition.prepare()
with same arguments.Learn more
function deployEditionDrop(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployEditionDrop.prepare()
with same arguments.Learn more
function deployLoyaltyCard(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployLoyaltyCard.prepare()
with same arguments.Learn more
function deployMarketplace(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployMarketplace.prepare()
with same arguments.Learn more
function deployMarketplaceV3(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployMarketplaceV3.prepare()
with same arguments.Learn more
function deployMultiwrap(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployMultiwrap.prepare()
with same arguments.Learn more
function deployNFTCollection(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployNFTCollection.prepare()
with same arguments.Learn more
function deployNFTDrop(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployNFTDrop.prepare()
with same arguments.Learn more
function deployOpenEdition(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployOpenEdition.prepare()
with same arguments.Learn more
function deployPack(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployPack.prepare()
with same arguments.Learn more
function deployProxy( implementationAddress: string, implementationAbi: ContractInterface, initializerFunction: string, initializerArgs: Array<any>,): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployProxy.prepare()
with same arguments.Learn more
function deployPublishedContract( publisherAddress: string, contractName: string, constructorParams: Array<any>, version: any,): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployPublishedContract.prepare()
with same arguments.Learn more
function deploySignatureDrop(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deploySignatureDrop.prepare()
with same arguments.Learn more
function deploySplit(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deploySplit.prepare()
with same arguments.Learn more
function deployToken(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployToken.prepare()
with same arguments.Learn more
function deployTokenDrop(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployTokenDrop.prepare()
with same arguments.Learn more
function deployViaFactory( factoryAddress: string, implementationAddress: string, implementationAbi: ContractInterface, initializerFunction: string, initializerArgs: Array<any>, saltForProxyDeploy: string,): Promise<TResult>;
Preparable
You can also prepare the transaction without executing it by calling deployViaFactory.prepare()
with same arguments.Learn more
function deployVote(): Promise<string>;
Preparable
You can also prepare the transaction without executing it by calling deployVote.prepare()
with same arguments.Learn more
RPCConnectionHandler.getProvider
Explicitly get the active provider.
function getProvider(): Provider;
RPCConnectionHandler.getSigner
Explicitly get the active signer.
function getSigner(): undefined | Signer;
RPCConnectionHandler.getSignerOrProvider
function getSignerOrProvider(): Signer | Provider;
RPCConnectionHandler.isReadOnly
function isReadOnly(): boolean;
RPCConnectionHandler.removeListener
Remove the listeners of a given event.
function removeListener( event: T, fn?: (...args: Array<any>) => void, context?: any, once?: boolean,): this;
let options: { clientId?: string; gasless?: | { experimentalChainlessSupport: boolean; openzeppelin: { domainName: string; domainSeparatorVersion: string; domainVersion: string; relayerForwarderAddress?: string; relayerUrl: string; useEOAForwarder: boolean; }; } | { biconomy: { apiId: string; apiKey: string; deadlineSeconds: number; }; } | { engine: { domainName: string; domainSeparatorVersion: string; domainVersion: string; relayerForwarderAddress?: string; relayerUrl: string; }; experimentalChainlessSupport: boolean; }; gasSettings: { maxPriceInGwei: number; speed: "standard" | "fast" | "fastest"; }; gatewayUrls?: Array<string>; readonlySettings?: { chainId?: number; rpcUrl: string }; rpcBatchSettings?: { sizeLimit: number; timeLimit: number }; secretKey?: string; supportedChains: Array<{ chainId: number; nativeCurrency: { decimals: number; name: string; symbol: string; }; rpc: Array<string>; slug: string; }>;};
type clientId = string;
type gasless = | { experimentalChainlessSupport: boolean; openzeppelin: { domainName: string; domainSeparatorVersion: string; domainVersion: string; relayerForwarderAddress?: string; relayerUrl: string; useEOAForwarder: boolean; }; } | { biconomy: { apiId: string; apiKey: string; deadlineSeconds: number; }; } | { engine: { domainName: string; domainSeparatorVersion: string; domainVersion: string; relayerForwarderAddress?: string; relayerUrl: string; }; experimentalChainlessSupport: boolean; };
type gasSettings = { maxPriceInGwei: number; speed: "standard" | "fast" | "fastest";};
type gatewayUrls = Array<string>;
type readonlySettings = { chainId?: number; rpcUrl: string };
type rpcBatchSettings = { sizeLimit: number; timeLimit: number };
type secretKey = string;
type supportedChains = Array<{ chainId: number; nativeCurrency: { decimals: number; name: string; symbol: string }; rpc: Array<string>; slug: string;}>;
let prefixed: string | boolean;