@owlprotocol/contracts-account-abstraction
Version:
ERC4337 Account Abstraction support for deploying relevant smart contracts and interacting with UserOps.
23 lines (22 loc) • 1.3 kB
TypeScript
import { Account, BundlerRpcSchema, Chain, Client, EIP1193RequestFn, Transport } from "viem";
import { createRequestGetUserOperationByHash } from "./bundler/requestGetUserOperationByHash.js";
import { createRequestGetUserOperationReceipt } from "./bundler/requestGetUserOperationReceipt.js";
export type BundlerRpcMethod = (typeof bundlerRpcMethods)[number];
export declare const bundlerRpcMethods: readonly ["eth_chainId", "eth_supportedEntryPoints", "eth_getUserOperationByHash", "eth_getUserOperationReceipt", "eth_sendUserOperation", "eth_estimateUserOperationGas"];
/**
* Check if RPC method is for bundler.
* @param method
* @returns true if bundler rpc method
*/
export declare function isBundlerRpcMethod(method: string): method is BundlerRpcMethod;
/**
* Create bundler EIP1193 function
* @param client
* @param requestOverride custom override to bypass viem middleware (for getLogs)
* @returns request function
*/
export declare function createBackendBundlerEIP1193(client: Client<Transport, Chain | undefined, Account>, config?: {
requestOverride?: EIP1193RequestFn;
createRequestGetUserOperationByHash?: typeof createRequestGetUserOperationByHash;
createRequestGetUserOperationReceipt?: typeof createRequestGetUserOperationReceipt;
}): EIP1193RequestFn<BundlerRpcSchema>;