@metamask/smart-accounts-kit 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/LICENSE.APACHE2 +201 -0
  3. package/LICENSE.MIT0 +16 -0
  4. package/README.md +77 -0
  5. package/dist/actions/index.cjs +39 -0
  6. package/dist/actions/index.cjs.map +1 -0
  7. package/dist/actions/index.d.cts +8 -0
  8. package/dist/actions/index.d.ts +8 -0
  9. package/dist/actions/index.mjs +39 -0
  10. package/dist/actions/index.mjs.map +1 -0
  11. package/dist/chunk-2EIX7ZYT.cjs +1325 -0
  12. package/dist/chunk-2EIX7ZYT.cjs.map +1 -0
  13. package/dist/chunk-662KDAAG.cjs +831 -0
  14. package/dist/chunk-662KDAAG.cjs.map +1 -0
  15. package/dist/chunk-6RN5RBOR.mjs +1325 -0
  16. package/dist/chunk-6RN5RBOR.mjs.map +1 -0
  17. package/dist/chunk-7MRTROLV.mjs +274 -0
  18. package/dist/chunk-7MRTROLV.mjs.map +1 -0
  19. package/dist/chunk-BFDBNFIP.cjs +336 -0
  20. package/dist/chunk-BFDBNFIP.cjs.map +1 -0
  21. package/dist/chunk-CPLIK3VF.mjs +77 -0
  22. package/dist/chunk-CPLIK3VF.mjs.map +1 -0
  23. package/dist/chunk-D4ILRL6Z.cjs +299 -0
  24. package/dist/chunk-D4ILRL6Z.cjs.map +1 -0
  25. package/dist/chunk-HD4O6IVC.cjs +274 -0
  26. package/dist/chunk-HD4O6IVC.cjs.map +1 -0
  27. package/dist/chunk-HLCOMYYU.cjs +1472 -0
  28. package/dist/chunk-HLCOMYYU.cjs.map +1 -0
  29. package/dist/chunk-KUEXI4ME.mjs +299 -0
  30. package/dist/chunk-KUEXI4ME.mjs.map +1 -0
  31. package/dist/chunk-MVKT5CLQ.mjs +336 -0
  32. package/dist/chunk-MVKT5CLQ.mjs.map +1 -0
  33. package/dist/chunk-RB4SOJM3.mjs +729 -0
  34. package/dist/chunk-RB4SOJM3.mjs.map +1 -0
  35. package/dist/chunk-T6PSFUOZ.cjs +77 -0
  36. package/dist/chunk-T6PSFUOZ.cjs.map +1 -0
  37. package/dist/chunk-TEI2NRPU.mjs +831 -0
  38. package/dist/chunk-TEI2NRPU.mjs.map +1 -0
  39. package/dist/chunk-UUDQWENY.mjs +1472 -0
  40. package/dist/chunk-UUDQWENY.mjs.map +1 -0
  41. package/dist/chunk-WA2O2K3K.cjs +729 -0
  42. package/dist/chunk-WA2O2K3K.cjs.map +1 -0
  43. package/dist/contracts/index.cjs +57 -0
  44. package/dist/contracts/index.cjs.map +1 -0
  45. package/dist/contracts/index.d.cts +8 -0
  46. package/dist/contracts/index.d.ts +8 -0
  47. package/dist/contracts/index.mjs +57 -0
  48. package/dist/contracts/index.mjs.map +1 -0
  49. package/dist/delegation-7PtFix8Y.d.ts +376 -0
  50. package/dist/delegation-d52Owevd.d.cts +376 -0
  51. package/dist/experimental/index.cjs +143 -0
  52. package/dist/experimental/index.cjs.map +1 -0
  53. package/dist/experimental/index.d.cts +29 -0
  54. package/dist/experimental/index.d.ts +29 -0
  55. package/dist/experimental/index.mjs +143 -0
  56. package/dist/experimental/index.mjs.map +1 -0
  57. package/dist/index-0-B0YlEP.d.cts +21935 -0
  58. package/dist/index-18Alar1P.d.ts +1174 -0
  59. package/dist/index-CLkk7zr4.d.cts +1174 -0
  60. package/dist/index-D1WbhKCc.d.ts +21935 -0
  61. package/dist/index.cjs +424 -0
  62. package/dist/index.cjs.map +1 -0
  63. package/dist/index.d.cts +56 -0
  64. package/dist/index.d.ts +56 -0
  65. package/dist/index.mjs +424 -0
  66. package/dist/index.mjs.map +1 -0
  67. package/dist/smartAccountsEnvironment-BOhrxEnt.d.ts +12 -0
  68. package/dist/smartAccountsEnvironment-SVknZ_3f.d.cts +12 -0
  69. package/dist/types-Bwksz_U6.d.cts +136 -0
  70. package/dist/types-Bwksz_U6.d.ts +136 -0
  71. package/dist/userOp-CFv4wNkl.d.cts +33 -0
  72. package/dist/userOp-CFv4wNkl.d.ts +33 -0
  73. package/dist/utils/index.cjs +60 -0
  74. package/dist/utils/index.cjs.map +1 -0
  75. package/dist/utils/index.d.cts +47 -0
  76. package/dist/utils/index.d.ts +47 -0
  77. package/dist/utils/index.mjs +60 -0
  78. package/dist/utils/index.mjs.map +1 -0
  79. package/package.json +151 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../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"],"sourcesContent":["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 ExecuteCreate2DeployParameters = {\n client: InitializedClient;\n factoryAddress: Address;\n creationCode: Hex;\n salt: Hex;\n};\n\nexport const simulate = async ({\n client,\n factoryAddress,\n creationCode,\n salt,\n}: SimulateCreate2DeployParameters) => {\n return simulateContract(client, {\n address: factoryAddress,\n abi: SimpleFactory.abi,\n functionName: 'deploy',\n args: [creationCode, salt],\n });\n};\n\nexport const encode = (creationCode: Hex, salt: Hex) => {\n return encodeFunctionData({\n abi: SimpleFactory.abi,\n functionName: 'deploy',\n args: [creationCode, salt],\n });\n};\n\nexport const execute = async ({\n client,\n factoryAddress,\n creationCode,\n salt,\n}: ExecuteCreate2DeployParameters) => {\n const { request } = await simulate({\n client,\n factoryAddress,\n creationCode,\n salt,\n });\n return writeContract(client, request);\n};\n","import { encode as create2Deploy } from './methods/create2Deploy';\n\nexport { create2Deploy };\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport type { Address, Client } from 'viem';\nimport { encodeFunctionData } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport type { ExecutionStruct } from '../../../executions';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateExecuteParameters = {\n client: Client;\n contractAddress: Address;\n execution: ExecutionStruct;\n};\n\nexport type EncodeExecuteParameters = {\n execution: ExecutionStruct;\n};\n\nexport type ExecuteExecuteParameters = {\n client: InitializedClient;\n contractAddress: Address;\n execution: ExecutionStruct;\n};\n\nexport const simulate = async ({\n client,\n contractAddress,\n execution,\n}: SimulateExecuteParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'execute',\n args: [execution],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n execution,\n}: ExecuteExecuteParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n execution,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ execution }: EncodeExecuteParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore.abi,\n functionName: 'execute',\n args: [execution],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { encodeExecutionCalldata } from '../../../executions';\nimport type { ExecutionStruct, ExecutionMode } from '../../../executions';\nimport type { InitializedClient } from '../../types';\n\nexport type SimulateExecuteWithModeParameters = {\n client: Client;\n contractAddress: Address;\n} & EncodeExecuteWithModeParameters;\nexport type EncodeExecuteWithModeParameters = {\n mode: ExecutionMode;\n executions: ExecutionStruct[];\n};\n\nexport type ExecuteExecuteWithModeParameters = {\n client: InitializedClient;\n contractAddress: Address;\n} & EncodeExecuteWithModeParameters;\n\nexport const simulate = async ({\n client,\n contractAddress,\n mode,\n executions,\n}: SimulateExecuteWithModeParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'execute',\n args: [mode, encodeExecutionCalldata(executions)],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n mode,\n executions,\n}: ExecuteExecuteWithModeParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n mode,\n executions,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n mode,\n executions,\n}: EncodeExecuteWithModeParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore.abi,\n functionName: 'execute',\n args: [mode, encodeExecutionCalldata(executions)],\n });\n};\n","import { encode as disableDelegation } from './methods/disableDelegation';\nimport { encode as enableDelegation } from './methods/enableDelegation';\nimport { encode as execute } from './methods/execute';\nimport { encode as executeWithMode } from './methods/executeWithMode';\nimport { encode as isValidSignature } from './methods/isValidSignature';\nimport { encode as upgradeToAndCall } from './methods/upgradeToAndCall';\n\nexport {\n disableDelegation,\n enableDelegation,\n execute,\n executeWithMode,\n upgradeToAndCall,\n isValidSignature,\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { toDelegationStruct } from '../../../delegation';\nimport type { Delegation } from '../../../types';\nimport type { InitializedClient } from '../../types';\nimport type { NarrowAbiToFunction } from '../../utils';\n\nexport type SimulateDisableDelegationParameters = {\n client: Client;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport type EncodeDisableDelegationParameters = {\n delegation: Delegation;\n};\n\nexport type ExecuteDisableDelegationParameters = {\n client: InitializedClient;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport const simulate = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: SimulateDisableDelegationParameters) => {\n const abi = DeleGatorCore.abi as any as NarrowAbiToFunction<\n typeof DeleGatorCore.abi,\n 'disableDelegation'\n >;\n\n const delegationStruct = toDelegationStruct(delegation);\n\n return simulateContract(client, {\n address: delegationManagerAddress,\n abi,\n functionName: 'disableDelegation',\n args: [delegationStruct],\n });\n};\n\nexport const execute = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: ExecuteDisableDelegationParameters) => {\n const { request } = await simulate({\n client,\n delegationManagerAddress,\n delegation,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ delegation }: EncodeDisableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return encodeFunctionData({\n abi: DeleGatorCore.abi,\n functionName: 'disableDelegation',\n args: [delegationStruct],\n });\n};\n","import { DeleGatorCore } from '@metamask/delegation-abis';\nimport { encodeFunctionData } from 'viem';\nimport type { Address, Client } from 'viem';\nimport { simulateContract, writeContract } from 'viem/actions';\n\nimport { toDelegationStruct } from '../../../delegation';\nimport type { Delegation } from '../../../types';\nimport type { InitializedClient } from '../../types';\nimport type { NarrowAbiToFunction } from '../../utils';\n\nexport type SimulateEnableDelegationParameters = {\n client: Client;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport type EncodeEnableDelegationParameters = {\n delegation: Delegation;\n};\n\nexport type ExecuteEnableDelegationParameters = {\n client: InitializedClient;\n delegationManagerAddress: Address;\n delegation: Delegation;\n};\n\nexport const simulate = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: SimulateEnableDelegationParameters) => {\n const abi = DeleGatorCore.abi as any as NarrowAbiToFunction<\n typeof DeleGatorCore.abi,\n 'enableDelegation'\n >;\n\n const delegationStruct = toDelegationStruct(delegation);\n\n return simulateContract(client, {\n address: delegationManagerAddress,\n abi,\n functionName: 'enableDelegation',\n args: [delegationStruct],\n });\n};\n\nexport const execute = async ({\n client,\n delegationManagerAddress,\n delegation,\n}: ExecuteEnableDelegationParameters) => {\n const { request } = await simulate({\n client,\n delegationManagerAddress,\n delegation,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({ delegation }: EncodeEnableDelegationParameters) => {\n const delegationStruct = toDelegationStruct(delegation);\n\n return encodeFunctionData({\n abi: DeleGatorCore.abi,\n functionName: 'enableDelegation',\n args: [delegationStruct],\n });\n};\n","import { DeleGatorCore } 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 SimulateUpgradeToAndCallParameters = {\n client: Client;\n contractAddress: Address;\n} & EncodeUpgradeToAndCallParameters;\n\nexport type EncodeUpgradeToAndCallParameters = {\n implementation: Address;\n data: Hex;\n};\n\nexport type ExecuteUpgradeToAndCallParameters = {\n client: InitializedClient;\n contractAddress: Address;\n} & EncodeUpgradeToAndCallParameters;\n\nexport const simulate = async ({\n client,\n contractAddress,\n implementation,\n data,\n}: SimulateUpgradeToAndCallParameters) => {\n return simulateContract(client, {\n address: contractAddress,\n abi: DeleGatorCore.abi,\n functionName: 'upgradeToAndCall',\n args: [implementation, data],\n });\n};\n\nexport const execute = async ({\n client,\n contractAddress,\n implementation,\n data,\n}: ExecuteUpgradeToAndCallParameters) => {\n const { request } = await simulate({\n client,\n contractAddress,\n implementation,\n data,\n });\n\n return writeContract(client, request);\n};\n\nexport const encode = ({\n implementation,\n data,\n}: EncodeUpgradeToAndCallParameters) => {\n return encodeFunctionData({\n abi: DeleGatorCore.abi,\n functionName: 'upgradeToAndCall',\n args: [implementation, data],\n });\n};\n"],"mappings":"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","names":["read","DeleGatorCore","readContract","read","DeleGatorCore","readContract","read","DeleGatorCore","readContract","read","DeleGatorCore","readContract","read","DeleGatorCore","readContract","read","DeleGatorCore","readContract","read","read","encodeFunctionData","encode","encodeFunctionData","encode","HybridDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","HybridDeleGator","HybridDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","HybridDeleGator","HybridDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","HybridDeleGator","HybridDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","HybridDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","encode_exports","encode","MultiSigDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","MultiSigDeleGator","MultiSigDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","MultiSigDeleGator","MultiSigDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","MultiSigDeleGator","MultiSigDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","MultiSigDeleGator","MultiSigDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","MultiSigDeleGator","MultiSigDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encodeFunctionData","MultiSigDeleGator","encodeFunctionData","simulateContract","writeContract","simulate","encode","encode_exports","encode","DeleGatorCore","encodeFunctionData","simulateContract","writeContract","simulate","execute","encode","DeleGatorCore","encodeFunctionData","simulateContract","writeContract","simulate","simulateContract","DeleGatorCore","execute","writeContract","encode","encodeFunctionData","encode_exports","encode","DeleGatorCore","encodeFunctionData","simulateContract","writeContract","simulate","DeleGatorCore","simulateContract","execute","writeContract","encode","encodeFunctionData","DeleGatorCore","encodeFunctionData","simulateContract","writeContract","simulate","DeleGatorCore","simulateContract","execute","writeContract","encode","encodeFunctionData","DeleGatorCore","encodeFunctionData","simulateContract","writeContract","simulate","execute","encode"]}