type UserOperationStruct = {
callData: PromiseOrValue<BytesLike>;
callGasLimit: PromiseOrValue<BigNumberish>;
initCode: PromiseOrValue<BytesLike>;
maxFeePerGas: PromiseOrValue<BigNumberish>;
maxPriorityFeePerGas: PromiseOrValue<BigNumberish>;
nonce: PromiseOrValue<BigNumberish>;
paymasterAndData: PromiseOrValue<BytesLike>;
preVerificationGas: PromiseOrValue<BigNumberish>;
sender: PromiseOrValue<string>;
signature: PromiseOrValue<BytesLike>;
verificationGasLimit: PromiseOrValue<BigNumberish>;
};