@abstraxn/account
Version:
@abstraxn/account: Empower ERC-4337 smart accounts with seamless APIs for enhanced decentralized finance experiences.
40 lines (39 loc) • 1.28 kB
TypeScript
import { IBundler } from "@abstraxn/bundler";
import { BaseValidationModule } from "@abstraxn/modules";
import { IPaymaster } from "@abstraxn/paymaster";
import { JsonRpcProvider } from "@ethersproject/providers";
import { Signer } from "ethers";
export interface AbstraxnSmartAccountConfig {
signer?: Signer;
chainId: number;
provider?: JsonRpcProvider;
defaultValidationModule: BaseValidationModule;
bundler?: IBundler;
paymaster?: IPaymaster;
index?: number;
entryPointAddress?: string;
implementationAddress?: string;
smartFactoryAddress?: string;
proxyCreationCode?: string;
fallbackHandlerAddress?: string;
}
export interface VerificationGasLimits {
/**
* per userOp gasLimit for validateUserOp()
* called from entrypoint to the account
* should consider max execution
*/
validateUserOpGas: number;
/**
* per userOp gasLimit for validatePaymasterUserOp()
* called from entrypoint to the paymaster
* should consider max execution
*/
validatePaymasterUserOpGas: number;
/**
* per userOp gasLimit for postOp()
* called from entrypoint to the paymaster
* should consider max execution for paymaster/s this account may use
*/
postOpGas: number;
}