import { type Chain, type Transport } from "viem"; import { type GetEntryPointFromAccount, type SmartContractAccount } from "../../../account/smartContractAccount.js"; import type { BaseSmartAccountClient } from "../../../client/smartAccountClient.js"; import type { UserOperationStruct } from "../../../types.js"; import { type Deferrable } from "../../../utils/index.js"; import type { BuildUserOperationParameters, SendUserOperationParameters, UserOperationContext } from "../types.js"; /** * Description internal action function of SmartAccountClient for initializing * a user operation for the sender account * * @template {Transport} TTransport * @template {Chain | undefined} TChain * @template {SmartContractAccount | undefined} TAccount * @template {UserOperationContext | undefined} TContext * @template {GetEntryPointFromAccount} TEntryPointVersion * @param {BaseSmartAccountClient} client smart account client * @param {SendUserOperationParameters | BuildUserOperationParameters} args send user operation parameters * @returns {Promise>>} initialized user operation struct */ export declare function _initUserOperation = GetEntryPointFromAccount>(client: BaseSmartAccountClient, args: SendUserOperationParameters | BuildUserOperationParameters): Promise>>;