import type * as ox__TypedData from "ox/TypedData"; import type { Chain } from "../../../chains/types.js"; import type { ThirdwebClient } from "../../../client/client.js"; import type { ThirdwebContract } from "../../../contract/contract.js"; import type { SignableMessage } from "../../../utils/types.js"; import type { Account } from "../../../wallets/interfaces/wallet.js"; import type { SmartAccountOptions } from "../types.js"; /** * If the account is already deployed, generate an ERC-1271 signature. * If the account is not deployed, generate an ERC-6492 signature unless otherwise specified. * * @internal */ export declare function smartAccountSignMessage({ accountContract, factoryContract, options, message, }: { accountContract: ThirdwebContract; factoryContract: ThirdwebContract; options: SmartAccountOptions; message: SignableMessage; }): Promise<`0x${string}`>; export declare function smartAccountSignTypedData, primaryType extends keyof typedData | "EIP712Domain" = keyof typedData>({ accountContract, factoryContract, options, typedData, }: { accountContract: ThirdwebContract; factoryContract: ThirdwebContract; options: SmartAccountOptions; typedData: ox__TypedData.Definition; }): Promise<`0x${string}`>; export declare function confirmContractDeployment(args: { accountContract: ThirdwebContract; }): Promise; /** * Deployes a smart account via a dummy transaction. If the account is already deployed, this will do nothing. * * @param args - Arguments for the deployment. * @param args.smartAccount - The smart account to deploy. * @param args.chain - The chain to deploy on. * @param args.client - The client to use for the deployment. * @param args.accountContract - The account contract to deploy. * * @example * ```ts * import { deploySmartAccount } from "thirdweb"; * * const account = await deploySmartAccount({ * smartAccount, * chain, * client, * accountContract, * }); * ``` * * @wallet */ export declare function deploySmartAccount(args: { smartAccount: Account; chain: Chain; client: ThirdwebClient; accountContract: ThirdwebContract; }): Promise<{ readonly transactionHash: import("../../../exports/thirdweb.js").Hex; client: ThirdwebClient; chain: Chain; maxBlocksWaitTime?: number | undefined; } | undefined>; //# sourceMappingURL=signing.d.ts.map