@metamask/delegation-toolkit
Version:
The Delegation Toolkit built on top of Viem - a library for interacting with DeleGator Smart Accounts
1 lines • 60 kB
Source Map (JSON)
{"version":3,"sources":["/home/runner/work/delegation-toolkit/delegation-toolkit/packages/delegation-toolkit/dist/chunk-HOWFH4O7.cjs","../src/DelegationFramework/utils.ts","../src/DelegationFramework/DeleGatorCore/read.ts","../src/DelegationFramework/DeleGatorCore/methods/getDelegationManager.ts","../src/DelegationFramework/DeleGatorCore/methods/getDeposit.ts","../src/DelegationFramework/DeleGatorCore/methods/getEntryPoint.ts","../src/DelegationFramework/DeleGatorCore/methods/getNonce.ts","../src/DelegationFramework/DeleGatorCore/methods/getProxyImplementation.ts","../src/DelegationFramework/DeleGatorCore/methods/getProxyVersion.ts","../src/DelegationFramework/DeleGatorCore/methods/isValidSignature.ts","../src/DelegationFramework/HybridDeleGator/methods/initialize.ts","../src/DelegationFramework/HybridDeleGator/encode.ts","../src/DelegationFramework/HybridDeleGator/methods/addKey.ts","../src/DelegationFramework/HybridDeleGator/methods/reinitialize.ts","../src/DelegationFramework/HybridDeleGator/methods/removeKey.ts","../src/DelegationFramework/HybridDeleGator/methods/updateSigners.ts","../src/DelegationFramework/MultiSigDeleGator/methods/initialize.ts","../src/DelegationFramework/MultiSigDeleGator/encode.ts","../src/DelegationFramework/MultiSigDeleGator/methods/addSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/reinitialize.ts","../src/DelegationFramework/MultiSigDeleGator/methods/removeSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/replaceSigner.ts","../src/DelegationFramework/MultiSigDeleGator/methods/updateMultiSigParameters.ts","../src/DelegationFramework/MultiSigDeleGator/methods/updateThreshold.ts","../src/DelegationFramework/SimpleFactory/methods/create2Deploy.ts","../src/DelegationFramework/SimpleFactory/encode.ts","../src/DelegationFramework/DeleGatorCore/methods/execute.ts","../src/DelegationFramework/DeleGatorCore/methods/executeWithMode.ts","../src/DelegationFramework/DeleGatorCore/encode.ts","../src/DelegationFramework/DeleGatorCore/methods/disableDelegation.ts","../src/DelegationFramework/DeleGatorCore/methods/enableDelegation.ts","../src/DelegationFramework/DeleGatorCore/methods/upgradeToAndCall.ts"],"names":["read","readContract","DeleGatorCore","encode","encodeFunctionData","simulate","simulateContract","HybridDeleGator","encode_exports","MultiSigDeleGator","writeContract","execute"],"mappings":"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","file":"/home/runner/work/delegation-toolkit/delegation-toolkit/packages/delegation-toolkit/dist/chunk-HOWFH4O7.cjs","sourcesContent":[null,"import { ERC1967Proxy } from '@metamask/delegation-abis';\nimport type { Abi, Address, Client, Hex } from 'viem';\nimport { encodeDeployData } from 'viem';\nimport { getCode } from 'viem/actions';\n\nimport { getProxyImplementation } from './DeleGatorCore/read';\n\n// Where a function signature is duplicated across contracts, we need to narrow\n// the ABI type passed as the `simulateContract` generic argument. Without this,\n// the `simulate()` return type would not match, despite being functionally\n// identical.\nexport type NarrowAbiToFunction<\n TAbi extends Abi,\n FunctionName extends string,\n> = [\n Extract<\n TAbi[number],\n {\n type: 'function';\n name: FunctionName;\n }\n >[],\n];\n\n/**\n * Checks if a contract is deployed at the given address.\n *\n * @param options - The options for checking contract deployment.\n * @param options.client - The client to use for the query.\n * @param options.contractAddress - The address to check for contract deployment.\n * @returns A boolean indicating whether a contract is deployed at the address.\n * @description This function checks if there is actual bytecode at the provided contract address.\n */\nexport async function isContractDeployed({\n client,\n contractAddress,\n}: {\n client: Client;\n contractAddress: Address;\n}): Promise<boolean> {\n const code = await getCode(client, {\n address: contractAddress,\n });\n return Boolean(code) && code !== '0x';\n}\n\n/**\n * Checks if a proxy contract at the given address points to the expected implementation.\n *\n * @param options - The options for checking the implementation.\n * @param options.client - The client to use for the query.\n * @param options.contractAddress - The address of the proxy contract.\n * @param options.expectedImplementationAddress - The address that the implementation should match.\n * @returns A boolean indicating whether the implementation matches the expected one.\n * @description This function verifies both that the contract exists and that its implementation address matches.\n */\nexport async function isImplementationExpected({\n client,\n contractAddress,\n expectedImplementationAddress,\n}: {\n client: Client;\n contractAddress: Address;\n expectedImplementationAddress: Address;\n}): Promise<boolean> {\n if (!(await isContractDeployed({ client, contractAddress }))) {\n return false;\n }\n\n const implementationAddress = await getProxyImplementation({\n client,\n contractAddress,\n });\n\n return implementationAddress === expectedImplementationAddress;\n}\n\n/**\n * Encodes the \"creation code\" for an ERC1967Proxy contract that will be deployed via CREATE2 with the given implementation and initialization code.\n *\n * @param options - The options for encoding the proxy creation code.\n * @param options.implementationAddress - The address of the implementation contract for the proxy to use.\n * @param options.initcode - The calldata for the initialization function of the implementation contract.\n * @returns The encoded creation code for the proxy.\n * @description This function prepares the deployment bytecode for an ERC1967 proxy pointing to the given implementation.\n */\nexport const encodeProxyCreationCode = ({\n implementationAddress,\n initcode,\n}: {\n implementationAddress: Address;\n initcode: Hex;\n}): Hex =>\n encodeDeployData({\n abi: ERC1967Proxy.abi,\n args: [implementationAddress, initcode],\n bytecode: ERC1967Proxy.bytecode,\n });\n","import { read as getDelegationManager } from './methods/getDelegationManager';\nimport { read as getDeposit } from './methods/getDeposit';\nimport { read as getEntryPoint } from './methods/getEntryPoint';\nimport { read as getNonce } from './methods/getNonce';\nimport { read as getProxyImplementation } from './methods/getProxyImplementation';\nimport { read as getProxyVersion } from './methods/getProxyVersion';\nimport { read as isValidSignature } from './methods/isValidSignature';\n\nexport {\n getDelegationManager,\n getDeposit,\n getEntryPoint,\n getNonce,\n getProxyImplementation,\n getProxyVersion,\n isValidSignature,\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetDelegationManagerParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetDelegationManagerParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'delegationManager',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetDepositParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetDepositParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'getDeposit',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetEntryPointParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetEntryPointParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'entryPoint',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetNonceParameters = {\n client: Client;\n contractAddress: Address;\n key?: bigint;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n key,\n}: ReadGetNonceParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'getNonce',\n args: key ? [key] : undefined,\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetProxyImplementationParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetProxyImplementationParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'getImplementation',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type ReadGetProxyVersionParameters = {\n client: Client;\n contractAddress: Address;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n}: ReadGetProxyVersionParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'getInitializedVersion',\n });\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { readContract } from 'viem/actions';\n\nexport type IsValidSignatureParameters = {\n client: Client;\n contractAddress: Address;\n hash: Hex;\n signature: Hex;\n};\n\nexport type EncodeIsValidSignatureParameters = {\n hash: Hex;\n signature: Hex;\n};\n\nexport const read = async ({\n client,\n contractAddress,\n hash,\n signature,\n}: IsValidSignatureParameters) =>\n await readContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'isValidSignature',\n args: [hash, signature],\n });\n\nexport const encode = ({\n hash,\n signature,\n}: EncodeIsValidSignatureParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore.abi,\n functionName: 'isValidSignature',\n args: [hash, signature],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeInitializeParameters = {\n eoaOwner: Address;\n p256Owners: P256Owner[];\n};\n\nexport type SimulateInitializeParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport type ExecuteInitializeParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: SimulateInitializeParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator.abi,\n functionName: 'initialize',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: ExecuteInitializeParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n eoaOwner,\n p256Owners,\n}: EncodeInitializeParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator.abi,\n functionName: 'initialize',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n","import { encode as addKey } from './methods/addKey';\nimport { encode as initializeHybridDeleGator } from './methods/initialize';\nimport { encode as reinitializeHybridDeleGator } from './methods/reinitialize';\nimport { encode as removeKey } from './methods/removeKey';\nimport { encode as updateSigners } from './methods/updateSigners';\n\nexport {\n addKey,\n initializeHybridDeleGator,\n reinitializeHybridDeleGator,\n removeKey,\n updateSigners,\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeAddKeyParameters = {\n p256Owner: P256Owner;\n};\n\nexport type SimulateAddKeyParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeAddKeyParameters;\n\nexport type ExecuteAddKeyParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeAddKeyParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n}: SimulateAddKeyParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator.abi,\n functionName: 'addKey',\n args: [p256Owner.keyId, p256Owner.x, p256Owner.y],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n}: ExecuteAddKeyParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n p256Owner,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ p256Owner }: EncodeAddKeyParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator.abi,\n functionName: 'addKey',\n args: [p256Owner.keyId, p256Owner.x, p256Owner.y],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeReinitializeParameters = {\n version: number;\n eoaOwner: Address;\n p256Owners: P256Owner[];\n removeExistingP256Owners: boolean;\n};\n\nexport type SimulateReinitializeParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport type ExecuteReinitializeParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: SimulateReinitializeParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator.abi,\n functionName: 'reinitialize',\n args: [\n version,\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n removeExistingP256Owners,\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: ExecuteReinitializeParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n version,\n eoaOwner,\n p256Owners,\n removeExistingP256Owners,\n}: EncodeReinitializeParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator.abi,\n functionName: 'reinitialize',\n args: [\n version,\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n removeExistingP256Owners,\n ],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeRemoveKeyParameters = {\n keyId: string;\n};\n\nexport type SimulateRemoveKeyParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeRemoveKeyParameters;\n\nexport type ExecuteRemoveKeyParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeRemoveKeyParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n keyId,\n}: SimulateRemoveKeyParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator.abi,\n functionName: 'removeKey',\n args: [keyId],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n keyId,\n}: ExecuteRemoveKeyParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n keyId,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ keyId }: EncodeRemoveKeyParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator.abi,\n functionName: 'removeKey',\n args: [keyId],\n });\n};\n","import { HybridDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { P256Owner, InitializedClient } from '../../types';\n\nexport type EncodeUpdateSignersParameters = {\n eoaOwner: Address;\n p256Owners: P256Owner[];\n};\n\nexport type SimulateUpdateSignersParameters = {\n client: Client;\n hybridDeleGatorAddress: Address;\n} & EncodeUpdateSignersParameters;\n\nexport type ExecuteUpdateSignersParameters = {\n client: InitializedClient;\n hybridDeleGatorAddress: Address;\n} & EncodeUpdateSignersParameters;\n\nexport const simulate = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: SimulateUpdateSignersParameters) => {\n return simulateContract(client, {\n address: hybridDeleGatorAddress,\n abi: HybridDeleGator.abi,\n functionName: 'updateSigners',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n\nexport const execute = async ({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n}: ExecuteUpdateSignersParameters) => {\n const { request } = await simulate({\n client,\n hybridDeleGatorAddress,\n eoaOwner,\n p256Owners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n eoaOwner,\n p256Owners,\n}: EncodeUpdateSignersParameters) => {\n return encodeFunctionData({\n abi: HybridDeleGator.abi,\n functionName: 'updateSigners',\n args: [\n eoaOwner,\n p256Owners.map((p256Owner) => p256Owner.keyId),\n p256Owners.map((p256Owner) => p256Owner.x),\n p256Owners.map((p256Owner) => p256Owner.y),\n ],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeInitializeParameters = {\n owners: Address[];\n threshold: bigint;\n};\n\nexport type SimulateInitializeParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport type ExecuteInitializeParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeInitializeParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n}: SimulateInitializeParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator.abi,\n functionName: 'initialize',\n args: [owners, threshold],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n}: ExecuteInitializeParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ owners, threshold }: EncodeInitializeParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator.abi,\n functionName: 'initialize',\n args: [owners, threshold],\n });\n};\n","import { encode as addSigner } from './methods/addSigner';\nimport { encode as initializeMultiSigDeleGator } from './methods/initialize';\nimport { encode as reinitializeMultiSigDeleGator } from './methods/reinitialize';\nimport { encode as removeSigner } from './methods/removeSigner';\nimport { encode as replaceSigner } from './methods/replaceSigner';\nimport { encode as updateMultiSigParameters } from './methods/updateMultiSigParameters';\nimport { encode as updateThreshold } from './methods/updateThreshold';\n\nexport {\n addSigner,\n initializeMultiSigDeleGator,\n reinitializeMultiSigDeleGator,\n removeSigner,\n replaceSigner,\n updateThreshold,\n updateMultiSigParameters,\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeAddSignerParameters = {\n signer: Address;\n};\n\nexport type SimulateAddSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeAddSignerParameters;\n\nexport type ExecuteAddSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeAddSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: SimulateAddSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator.abi,\n functionName: 'addSigner',\n args: [signer],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: ExecuteAddSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n signer,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ signer }: EncodeAddSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator.abi,\n functionName: 'addSigner',\n args: [signer],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeReinitializeParameters = {\n version: bigint;\n owners: Address[];\n threshold: bigint;\n removeExistingOwners: boolean;\n};\n\nexport type SimulateReinitializeParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport type ExecuteReinitializeParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeReinitializeParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: SimulateReinitializeParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator.abi,\n functionName: 'reinitialize',\n args: [version, owners, threshold, removeExistingOwners],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: ExecuteReinitializeParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n version,\n owners,\n threshold,\n removeExistingOwners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n version,\n owners,\n threshold,\n removeExistingOwners,\n}: EncodeReinitializeParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator.abi,\n functionName: 'reinitialize',\n args: [version, owners, threshold, removeExistingOwners],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeRemoveSignerParameters = {\n signer: Address;\n};\n\nexport type SimulateRemoveSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeRemoveSignerParameters;\n\nexport type ExecuteRemoveSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeRemoveSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: SimulateRemoveSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator.abi,\n functionName: 'removeSigner',\n args: [signer],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n signer,\n}: ExecuteRemoveSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n signer,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ signer }: EncodeRemoveSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator.abi,\n functionName: 'removeSigner',\n args: [signer],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeReplaceSignerParameters = {\n oldSigner: Address;\n newSigner: Address;\n};\n\nexport type SimulateReplaceSignerParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeReplaceSignerParameters;\n\nexport type ExecuteReplaceSignerParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeReplaceSignerParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n}: SimulateReplaceSignerParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator.abi,\n functionName: 'replaceSigner',\n args: [oldSigner, newSigner],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n}: ExecuteReplaceSignerParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n oldSigner,\n newSigner,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n oldSigner,\n newSigner,\n}: EncodeReplaceSignerParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator.abi,\n functionName: 'replaceSigner',\n args: [oldSigner, newSigner],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeUpdateMultiSigParametersParameters = {\n owners: Address[];\n threshold: bigint;\n removeExistingOwners: boolean;\n};\n\nexport type SimulateUpdateMultiSigParametersParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateMultiSigParametersParameters;\n\nexport type ExecuteUpdateMultiSigParametersParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateMultiSigParametersParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n}: SimulateUpdateMultiSigParametersParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator.abi,\n functionName: 'updateMultiSigParameters',\n args: [owners, threshold, removeExistingOwners],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n}: ExecuteUpdateMultiSigParametersParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n owners,\n threshold,\n removeExistingOwners,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n owners,\n threshold,\n removeExistingOwners,\n}: EncodeUpdateMultiSigParametersParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator.abi,\n functionName: 'updateMultiSigParameters',\n args: [owners, threshold, removeExistingOwners],\n });\n};\n","import { MultiSigDeleGator } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type EncodeUpdateThresholdParameters = {\n threshold: bigint;\n};\n\nexport type SimulateUpdateThresholdParameters = {\n client: Client;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateThresholdParameters;\n\nexport type ExecuteUpdateThresholdParameters = {\n client: InitializedClient;\n multiSigDeleGatorAddress: Address;\n} & EncodeUpdateThresholdParameters;\n\nexport const simulate = async ({\n client,\n multiSigDeleGatorAddress,\n threshold,\n}: SimulateUpdateThresholdParameters) => {\n return simulateContract(client, {\n address: multiSigDeleGatorAddress,\n abi: MultiSigDeleGator.abi,\n functionName: 'updateThreshold',\n args: [threshold],\n });\n};\n\nexport const execute = async ({\n client,\n multiSigDeleGatorAddress,\n threshold,\n}: ExecuteUpdateThresholdParameters) => {\n const { request } = await simulate({\n client,\n multiSigDeleGatorAddress,\n threshold,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ threshold }: EncodeUpdateThresholdParameters) => {\n return encodeFunctionData({\n abi: MultiSigDeleGator.abi,\n functionName: 'updateThreshold',\n args: [threshold],\n });\n};\n","import { SimpleFactory } from '@metamask/delegation-abis';\nimport type { Address, Hex, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateCreate2DeployParameters = {\n client: Client;\n factoryAddress: Address;\n creationCode: Hex;\n salt: Hex;\n};\n\nexport type ExecuteCreate2Deploy