import type { Abi } from "abitype"; import type { Chain } from "../../chains/types.js"; import type { ThirdwebClient } from "../../client/client.js"; import type { DeployContractfromDeployMetadataOptions } from "./deploy-published.js"; /** * @internal */ type DeployTransactionType = "infra" | "implementation" | "module" | "extension" | "proxy"; /** * @internal */ type DynamicContractExtension = { extensionName: string; extensionVersion: string; publisherAddress: string; }; /** * @internal */ type DeployTransactionResult = { type: DeployTransactionType; contractId: string; }; /** * @internal */ export declare function getRequiredTransactions(options: Omit): Promise; /** * Gets the default constructor parameters required for contract implementation deployment * @param args - The arguments object * @param args.chain - The blockchain network configuration * @param args.client - The ThirdwebClient instance * @returns An object containing default constructor parameters: * - On zkSync chains: returns an empty object since no parameters are needed * - On other chains: returns `trustedForwarder` and `nativeTokenWrapper` addresses * * @internal */ export declare function getAllDefaultConstructorParamsForImplementation(args: { chain: Chain; client: ThirdwebClient; contractId: string; defaultExtensions?: DynamicContractExtension[]; }): Promise<{ nativeTokenWrapper: string | undefined; extensions?: undefined; trustedForwarder?: undefined; } | { extensions: { functions: { functionSelector: `0x${string}`; functionSignature: string; }[]; metadata: { implementation: `0x${string}` | undefined; metadataURI: string; name: string; }; }[]; nativeTokenWrapper: string; trustedForwarder: string; }>; export declare function generateExtensionFunctionsFromAbi(abi: Abi): Array<{ functionSelector: `0x${string}`; functionSignature: string; }>; export {}; //# sourceMappingURL=get-required-transactions.d.ts.map