UNPKG

@metamask/delegation-toolkit

Version:

The Delegation Toolkit built on top of Viem - a library for interacting with DeleGator Smart Accounts

43 lines (39 loc) 1.82 kB
import { WalletClient, PublicClient, Chain, Hex, Transport, Account, Address, TypedData } from 'viem'; import { D as DeleGatorEnvironment } from './types-DvZXSma6.js'; type SupportedVersion = '1.0.0' | '1.1.0' | '1.2.0' | '1.3.0'; declare const PREFERRED_VERSION: SupportedVersion; declare function overrideDeployedEnvironment(chainId: number, version: SupportedVersion, environment: DeleGatorEnvironment): void; declare function getDeleGatorEnvironment(chainId: number, version?: SupportedVersion): DeleGatorEnvironment; declare function deployDeleGatorEnvironment(walletClient: WalletClient, publicClient: PublicClient, chain: Chain, deployedContracts?: { [contract: string]: Hex; }): Promise<DeleGatorEnvironment>; type UserOperationV07 = { sender: Hex; nonce: bigint; factory?: Hex; factoryData?: Hex; callData: Hex; callGasLimit: bigint; verificationGasLimit: bigint; preVerificationGas: bigint; maxFeePerGas: bigint; maxPriorityFeePerGas: bigint; paymaster?: Hex; paymasterVerificationGasLimit?: bigint; paymasterPostOpGasLimit?: bigint; paymasterData?: Hex; signature: Hex; }; declare const SIGNABLE_USER_OP_TYPED_DATA: TypedData; declare const signUserOperation: ({ signer, userOperation, entryPoint, chainId, name, address, version, }: { signer: WalletClient<Transport, Chain, Account>; userOperation: Omit<UserOperationV07, 'signature'>; entryPoint: { address: Address; }; chainId: number; address: Address; name: 'HybridDeleGator' | 'MultiSigDeleGator'; version?: string | undefined; }) => Promise<`0x${string}`>; export { PREFERRED_VERSION as P, SIGNABLE_USER_OP_TYPED_DATA as S, deployDeleGatorEnvironment as d, getDeleGatorEnvironment as g, overrideDeployedEnvironment as o, signUserOperation as s };