createUnsignedUserOp
Creates an unsigned user operation from a prepared transaction.
import { createUnsignedUserOp } from "thirdweb/wallets/smart"; const transaction = prepareContractCall(...); const userOp = await createUnsignedUserOp({ transaction, factoryContract, accountContract, adminAddress, sponsorGas, overrides,});
function createUnsignedUserOp(args: {  adminAddress: string;  overrides?: {    accountAddress?: string;    accountSalt?: string;    bundlerUrl?: string;    createAccount?: (      admin: string,    entrypointAddress?: string;    execute?: (      transaction: SendTransactionOption,    executeBatch?: (      transactions: Array<SendTransactionOption>,    getAccountNonce?: (    ) => Promise<bigint>;    paymaster?: (      userOp: UserOperationV06 | UserOperationV07,    predictAddress?: (      admin: string,    ) => Promise<string>;    signMessage?: (options: {      message: SignableMessage;    }) => Promise<`0x${string}`>;    signTypedData?: (options: {      typedData: Definition<        typedData,        primaryType,        typedData extends {          address?: undefined;          bool?: undefined;          bytes?: undefined;          bytes1?: undefined;          bytes10?: undefined;          bytes11?: undefined;          bytes12?: undefined;          bytes13?: undefined;          bytes14?: undefined;          bytes15?: undefined;          bytes16?: undefined;          bytes17?: undefined;          bytes18?: undefined;          bytes19?: undefined;          bytes2?: undefined;          bytes20?: undefined;          bytes21?: undefined;          bytes22?: undefined;          bytes23?: undefined;          bytes24?: undefined;          bytes25?: undefined;          bytes26?: undefined;          bytes27?: undefined;          bytes28?: undefined;          bytes29?: undefined;          bytes3?: undefined;          bytes30?: undefined;          bytes31?: undefined;          bytes32?: undefined;          bytes4?: undefined;          bytes5?: undefined;          bytes6?: undefined;          bytes7?: undefined;          bytes8?: undefined;          bytes9?: undefined;          int104?: undefined;          int112?: undefined;          int120?: undefined;          int128?: undefined;          int136?: undefined;          int144?: undefined;          int152?: undefined;          int16?: undefined;          int160?: undefined;          int168?: undefined;          int176?: undefined;          int184?: undefined;          int192?: undefined;          int200?: undefined;          int208?: undefined;          int216?: undefined;          int224?: undefined;          int232?: undefined;          int24?: undefined;          int240?: undefined;          int248?: undefined;          int256?: undefined;          int32?: undefined;          int40?: undefined;          int48?: undefined;          int56?: undefined;          int64?: undefined;          int72?: undefined;          int8?: undefined;          int80?: undefined;          int88?: undefined;          int96?: undefined;          string?: undefined;          uint104?: undefined;          uint112?: undefined;          uint120?: undefined;          uint128?: undefined;          uint136?: undefined;          uint144?: undefined;          uint152?: undefined;          uint16?: undefined;          uint160?: undefined;          uint168?: undefined;          uint176?: undefined;          uint184?: undefined;          uint192?: undefined;          uint200?: undefined;          uint208?: undefined;          uint216?: undefined;          uint224?: undefined;          uint232?: undefined;          uint24?: undefined;          uint240?: undefined;          uint248?: undefined;          uint256?: undefined;          uint32?: undefined;          uint40?: undefined;          uint48?: undefined;          uint56?: undefined;          uint64?: undefined;          uint72?: undefined;          uint8?: undefined;          uint80?: undefined;          uint88?: undefined;          uint96?: undefined;        }          ? keyof typedData<typedData>          : string      >;    }) => Promise<`0x${string}`>;    tokenPaymaster?: TokenPaymasterConfig;  };  sponsorGas: boolean;  waitForDeployment?: boolean;}): Promise<UserOperationV06 | UserOperationV07>;
The prepared transaction and options
let args: {  adminAddress: string;  overrides?: {    accountAddress?: string;    accountSalt?: string;    bundlerUrl?: string;    createAccount?: (      admin: string,    entrypointAddress?: string;    execute?: (      transaction: SendTransactionOption,    executeBatch?: (      transactions: Array<SendTransactionOption>,    getAccountNonce?: (    ) => Promise<bigint>;    paymaster?: (      userOp: UserOperationV06 | UserOperationV07,    predictAddress?: (      admin: string,    ) => Promise<string>;    signMessage?: (options: {      message: SignableMessage;    }) => Promise<`0x${string}`>;    signTypedData?: (options: {      typedData: Definition<        typedData,        primaryType,        typedData extends {          address?: undefined;          bool?: undefined;          bytes?: undefined;          bytes1?: undefined;          bytes10?: undefined;          bytes11?: undefined;          bytes12?: undefined;          bytes13?: undefined;          bytes14?: undefined;          bytes15?: undefined;          bytes16?: undefined;          bytes17?: undefined;          bytes18?: undefined;          bytes19?: undefined;          bytes2?: undefined;          bytes20?: undefined;          bytes21?: undefined;          bytes22?: undefined;          bytes23?: undefined;          bytes24?: undefined;          bytes25?: undefined;          bytes26?: undefined;          bytes27?: undefined;          bytes28?: undefined;          bytes29?: undefined;          bytes3?: undefined;          bytes30?: undefined;          bytes31?: undefined;          bytes32?: undefined;          bytes4?: undefined;          bytes5?: undefined;          bytes6?: undefined;          bytes7?: undefined;          bytes8?: undefined;          bytes9?: undefined;          int104?: undefined;          int112?: undefined;          int120?: undefined;          int128?: undefined;          int136?: undefined;          int144?: undefined;          int152?: undefined;          int16?: undefined;          int160?: undefined;          int168?: undefined;          int176?: undefined;          int184?: undefined;          int192?: undefined;          int200?: undefined;          int208?: undefined;          int216?: undefined;          int224?: undefined;          int232?: undefined;          int24?: undefined;          int240?: undefined;          int248?: undefined;          int256?: undefined;          int32?: undefined;          int40?: undefined;          int48?: undefined;          int56?: undefined;          int64?: undefined;          int72?: undefined;          int8?: undefined;          int80?: undefined;          int88?: undefined;          int96?: undefined;          string?: undefined;          uint104?: undefined;          uint112?: undefined;          uint120?: undefined;          uint128?: undefined;          uint136?: undefined;          uint144?: undefined;          uint152?: undefined;          uint16?: undefined;          uint160?: undefined;          uint168?: undefined;          uint176?: undefined;          uint184?: undefined;          uint192?: undefined;          uint200?: undefined;          uint208?: undefined;          uint216?: undefined;          uint224?: undefined;          uint232?: undefined;          uint24?: undefined;          uint240?: undefined;          uint248?: undefined;          uint256?: undefined;          uint32?: undefined;          uint40?: undefined;          uint48?: undefined;          uint56?: undefined;          uint64?: undefined;          uint72?: undefined;          uint8?: undefined;          uint80?: undefined;          uint88?: undefined;          uint96?: undefined;        }          ? keyof typedData<typedData>          : string      >;    }) => Promise<`0x${string}`>;    tokenPaymaster?: TokenPaymasterConfig;  };  sponsorGas: boolean;  waitForDeployment?: boolean;};