@account-kit/smart-contracts 4.0.0-alpha.9 → 4.0.0-beta.1
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.
- package/dist/esm/plugindefs/multi-owner/config.js +2 -2
- package/dist/esm/plugindefs/multi-owner/config.js.map +1 -1
- package/dist/esm/plugindefs/multisig/config.js +2 -2
- package/dist/esm/plugindefs/multisig/config.js.map +1 -1
- package/dist/esm/plugindefs/session-key/config.js +2 -3
- package/dist/esm/plugindefs/session-key/config.js.map +1 -1
- package/dist/esm/src/index.d.ts +1 -1
- package/dist/esm/src/index.js +4 -1
- package/dist/esm/src/index.js.map +1 -1
- package/dist/esm/src/light-account/accounts/account.js +20 -0
- package/dist/esm/src/light-account/accounts/account.js.map +1 -1
- package/dist/esm/src/light-account/accounts/base.js +8 -0
- package/dist/esm/src/light-account/accounts/base.js.map +1 -1
- package/dist/esm/src/light-account/accounts/multiOwner.js +22 -0
- package/dist/esm/src/light-account/accounts/multiOwner.js.map +1 -1
- package/dist/esm/src/light-account/actions/transferOwnership.d.ts +25 -0
- package/dist/esm/src/light-account/actions/transferOwnership.js +25 -0
- package/dist/esm/src/light-account/actions/transferOwnership.js.map +1 -1
- package/dist/esm/src/light-account/actions/updateOwners.d.ts +24 -0
- package/dist/esm/src/light-account/actions/updateOwners.js +24 -0
- package/dist/esm/src/light-account/actions/updateOwners.js.map +1 -1
- package/dist/esm/src/light-account/clients/alchemyClient.js +20 -0
- package/dist/esm/src/light-account/clients/alchemyClient.js.map +1 -1
- package/dist/esm/src/light-account/clients/client.d.ts +1 -2
- package/dist/esm/src/light-account/clients/client.js +23 -3
- package/dist/esm/src/light-account/clients/client.js.map +1 -1
- package/dist/esm/src/light-account/clients/multiOwnerAlchemyClient.js +20 -0
- package/dist/esm/src/light-account/clients/multiOwnerAlchemyClient.js.map +1 -1
- package/dist/esm/src/light-account/clients/multiOwnerLightAccount.d.ts +1 -2
- package/dist/esm/src/light-account/clients/multiOwnerLightAccount.js +23 -3
- package/dist/esm/src/light-account/clients/multiOwnerLightAccount.js.map +1 -1
- package/dist/esm/src/light-account/decorators/lightAccount.d.ts +19 -0
- package/dist/esm/src/light-account/decorators/lightAccount.js +19 -0
- package/dist/esm/src/light-account/decorators/lightAccount.js.map +1 -1
- package/dist/esm/src/light-account/decorators/multiOwnerLightAccount.d.ts +19 -0
- package/dist/esm/src/light-account/decorators/multiOwnerLightAccount.js +19 -0
- package/dist/esm/src/light-account/decorators/multiOwnerLightAccount.js.map +1 -1
- package/dist/esm/src/light-account/types.d.ts +4 -0
- package/dist/esm/src/light-account/utils.d.ts +46 -0
- package/dist/esm/src/light-account/utils.js +46 -0
- package/dist/esm/src/light-account/utils.js.map +1 -1
- package/dist/esm/src/msca/account/multiOwnerAccount.js +23 -0
- package/dist/esm/src/msca/account/multiOwnerAccount.js.map +1 -1
- package/dist/esm/src/msca/account/multisigAccount.js +24 -0
- package/dist/esm/src/msca/account/multisigAccount.js.map +1 -1
- package/dist/esm/src/msca/account-loupe/decorator.d.ts +15 -0
- package/dist/esm/src/msca/account-loupe/decorator.js +15 -0
- package/dist/esm/src/msca/account-loupe/decorator.js.map +1 -1
- package/dist/esm/src/msca/client/alchemyClient.js +20 -0
- package/dist/esm/src/msca/client/alchemyClient.js.map +1 -1
- package/dist/esm/src/msca/client/client.d.ts +2 -6
- package/dist/esm/src/msca/client/client.js +50 -6
- package/dist/esm/src/msca/client/client.js.map +1 -1
- package/dist/esm/src/msca/client/multiSigAlchemyClient.js +22 -0
- package/dist/esm/src/msca/client/multiSigAlchemyClient.js.map +1 -1
- package/dist/esm/src/msca/errors.d.ts +12 -0
- package/dist/esm/src/msca/errors.js +12 -0
- package/dist/esm/src/msca/errors.js.map +1 -1
- package/dist/esm/src/msca/plugin-manager/decorator.d.ts +15 -0
- package/dist/esm/src/msca/plugin-manager/decorator.js +15 -0
- package/dist/esm/src/msca/plugin-manager/decorator.js.map +1 -1
- package/dist/esm/src/msca/plugin-manager/installPlugin.d.ts +21 -0
- package/dist/esm/src/msca/plugin-manager/installPlugin.js +22 -0
- package/dist/esm/src/msca/plugin-manager/installPlugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/multi-owner/extension.d.ts +15 -0
- package/dist/esm/src/msca/plugins/multi-owner/extension.js +19 -0
- package/dist/esm/src/msca/plugins/multi-owner/extension.js.map +1 -1
- package/dist/esm/src/msca/plugins/multi-owner/plugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/isOwnerOf.js +2 -0
- package/dist/esm/src/msca/plugins/multisig/actions/isOwnerOf.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/proposeUserOperation.js +2 -0
- package/dist/esm/src/msca/plugins/multisig/actions/proposeUserOperation.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/readOwners.js +2 -0
- package/dist/esm/src/msca/plugins/multisig/actions/readOwners.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/actions/signMultisigUserOperation.js +3 -0
- package/dist/esm/src/msca/plugins/multisig/actions/signMultisigUserOperation.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/extension.d.ts +13 -0
- package/dist/esm/src/msca/plugins/multisig/extension.js +13 -0
- package/dist/esm/src/msca/plugins/multisig/extension.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/middleware.d.ts +12 -0
- package/dist/esm/src/msca/plugins/multisig/middleware.js +15 -0
- package/dist/esm/src/msca/plugins/multisig/middleware.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/plugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/signer.js +2 -0
- package/dist/esm/src/msca/plugins/multisig/signer.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/combineSignatures.d.ts +25 -0
- package/dist/esm/src/msca/plugins/multisig/utils/combineSignatures.js +25 -0
- package/dist/esm/src/msca/plugins/multisig/utils/combineSignatures.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/formatSignatures.d.ts +10 -0
- package/dist/esm/src/msca/plugins/multisig/utils/formatSignatures.js +11 -0
- package/dist/esm/src/msca/plugins/multisig/utils/formatSignatures.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/getSignerType.d.ts +19 -0
- package/dist/esm/src/msca/plugins/multisig/utils/getSignerType.js +19 -0
- package/dist/esm/src/msca/plugins/multisig/utils/getSignerType.js.map +1 -1
- package/dist/esm/src/msca/plugins/multisig/utils/splitAggregatedSignature.d.ts +10 -0
- package/dist/esm/src/msca/plugins/multisig/utils/splitAggregatedSignature.js +20 -0
- package/dist/esm/src/msca/plugins/multisig/utils/splitAggregatedSignature.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/debug-session-key-bytecode.d.ts +7 -0
- package/dist/esm/src/msca/plugins/session-key/debug-session-key-bytecode.js +7 -0
- package/dist/esm/src/msca/plugins/session-key/debug-session-key-bytecode.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/extension.d.ts +13 -0
- package/dist/esm/src/msca/plugins/session-key/extension.js +23 -0
- package/dist/esm/src/msca/plugins/session-key/extension.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/permissions.d.ts +150 -1
- package/dist/esm/src/msca/plugins/session-key/permissions.js +150 -1
- package/dist/esm/src/msca/plugins/session-key/permissions.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/plugin.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/signer.d.ts +81 -1
- package/dist/esm/src/msca/plugins/session-key/signer.js +80 -0
- package/dist/esm/src/msca/plugins/session-key/signer.js.map +1 -1
- package/dist/esm/src/msca/plugins/session-key/utils.d.ts +18 -0
- package/dist/esm/src/msca/plugins/session-key/utils.js +18 -0
- package/dist/esm/src/msca/plugins/session-key/utils.js.map +1 -1
- package/dist/esm/src/msca/utils.d.ts +50 -0
- package/dist/esm/src/msca/utils.js +50 -0
- package/dist/esm/src/msca/utils.js.map +1 -1
- package/dist/types/plugindefs/multi-owner/config.d.ts.map +1 -1
- package/dist/types/plugindefs/multisig/config.d.ts.map +1 -1
- package/dist/types/plugindefs/session-key/config.d.ts.map +1 -1
- package/dist/types/src/index.d.ts +1 -1
- package/dist/types/src/index.d.ts.map +1 -1
- package/dist/types/src/light-account/clients/client.d.ts +1 -2
- package/dist/types/src/light-account/clients/client.d.ts.map +1 -1
- package/dist/types/src/light-account/clients/multiOwnerLightAccount.d.ts +1 -2
- package/dist/types/src/light-account/clients/multiOwnerLightAccount.d.ts.map +1 -1
- package/dist/types/src/msca/client/client.d.ts +2 -6
- package/dist/types/src/msca/client/client.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multi-owner/plugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/multisig/plugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/session-key/plugin.d.ts.map +1 -1
- package/dist/types/src/msca/plugins/session-key/signer.d.ts +1 -1
- package/dist/types/src/msca/plugins/session-key/signer.d.ts.map +1 -1
- package/package.json +12 -15
- package/plugindefs/multi-owner/config.ts +4 -5
- package/plugindefs/multisig/config.ts +4 -5
- package/plugindefs/session-key/config.ts +4 -6
- package/src/index.ts +1 -0
- package/src/light-account/clients/client.ts +8 -13
- package/src/light-account/clients/multiOwnerLightAccount.ts +11 -13
- package/src/msca/client/client.ts +24 -36
- package/src/msca/plugins/multi-owner/plugin.ts +5 -1
- package/src/msca/plugins/multisig/plugin.ts +5 -1
- package/src/msca/plugins/session-key/plugin.ts +5 -1
- package/src/msca/plugins/session-key/signer.ts +1 -1
- package/dist/cjs/package.json +0 -1
- package/dist/cjs/plugindefs/index.d.ts +0 -3
- package/dist/cjs/plugindefs/index.js +0 -10
- package/dist/cjs/plugindefs/index.js.map +0 -1
- package/dist/cjs/plugindefs/multi-owner/abi.d.ts +0 -698
- package/dist/cjs/plugindefs/multi-owner/abi.js +0 -612
- package/dist/cjs/plugindefs/multi-owner/abi.js.map +0 -1
- package/dist/cjs/plugindefs/multi-owner/config.d.ts +0 -2
- package/dist/cjs/plugindefs/multi-owner/config.js +0 -31
- package/dist/cjs/plugindefs/multi-owner/config.js.map +0 -1
- package/dist/cjs/plugindefs/multisig/abi.d.ts +0 -791
- package/dist/cjs/plugindefs/multisig/abi.js +0 -1031
- package/dist/cjs/plugindefs/multisig/abi.js.map +0 -1
- package/dist/cjs/plugindefs/multisig/config.d.ts +0 -2
- package/dist/cjs/plugindefs/multisig/config.js +0 -30
- package/dist/cjs/plugindefs/multisig/config.js.map +0 -1
- package/dist/cjs/plugindefs/session-key/abi.d.ts +0 -1061
- package/dist/cjs/plugindefs/session-key/abi.js +0 -916
- package/dist/cjs/plugindefs/session-key/abi.js.map +0 -1
- package/dist/cjs/plugindefs/session-key/config.d.ts +0 -2
- package/dist/cjs/plugindefs/session-key/config.js +0 -43
- package/dist/cjs/plugindefs/session-key/config.js.map +0 -1
- package/dist/cjs/plugindefs/types.d.ts +0 -15
- package/dist/cjs/plugindefs/types.js +0 -3
- package/dist/cjs/plugindefs/types.js.map +0 -1
- package/dist/cjs/src/index.d.ts +0 -53
- package/dist/cjs/src/index.js +0 -105
- package/dist/cjs/src/index.js.map +0 -1
- package/dist/cjs/src/light-account/abis/LightAccountAbi_v1.d.ts +0 -532
- package/dist/cjs/src/light-account/abis/LightAccountAbi_v1.js +0 -382
- package/dist/cjs/src/light-account/abis/LightAccountAbi_v1.js.map +0 -1
- package/dist/cjs/src/light-account/abis/LightAccountAbi_v2.d.ts +0 -491
- package/dist/cjs/src/light-account/abis/LightAccountAbi_v2.js +0 -358
- package/dist/cjs/src/light-account/abis/LightAccountAbi_v2.js.map +0 -1
- package/dist/cjs/src/light-account/abis/LightAccountFactoryAbi_v1.d.ts +0 -55
- package/dist/cjs/src/light-account/abis/LightAccountFactoryAbi_v1.js +0 -78
- package/dist/cjs/src/light-account/abis/LightAccountFactoryAbi_v1.js.map +0 -1
- package/dist/cjs/src/light-account/abis/LightAccountFactoryAbi_v2.d.ts +0 -256
- package/dist/cjs/src/light-account/abis/LightAccountFactoryAbi_v2.js +0 -213
- package/dist/cjs/src/light-account/abis/LightAccountFactoryAbi_v2.js.map +0 -1
- package/dist/cjs/src/light-account/abis/MultiOwnerLightAccountAbi.d.ts +0 -507
- package/dist/cjs/src/light-account/abis/MultiOwnerLightAccountAbi.js +0 -375
- package/dist/cjs/src/light-account/abis/MultiOwnerLightAccountAbi.js.map +0 -1
- package/dist/cjs/src/light-account/abis/MultiOwnerLightAccountFactoryAbi.d.ts +0 -286
- package/dist/cjs/src/light-account/abis/MultiOwnerLightAccountFactoryAbi.js +0 -232
- package/dist/cjs/src/light-account/abis/MultiOwnerLightAccountFactoryAbi.js.map +0 -1
- package/dist/cjs/src/light-account/accounts/account.d.ts +0 -17
- package/dist/cjs/src/light-account/accounts/account.js +0 -79
- package/dist/cjs/src/light-account/accounts/account.js.map +0 -1
- package/dist/cjs/src/light-account/accounts/base.d.ts +0 -15
- package/dist/cjs/src/light-account/accounts/base.js +0 -143
- package/dist/cjs/src/light-account/accounts/base.js.map +0 -1
- package/dist/cjs/src/light-account/accounts/multiOwner.d.ts +0 -18
- package/dist/cjs/src/light-account/accounts/multiOwner.js +0 -80
- package/dist/cjs/src/light-account/accounts/multiOwner.js.map +0 -1
- package/dist/cjs/src/light-account/actions/transferOwnership.d.ts +0 -8
- package/dist/cjs/src/light-account/actions/transferOwnership.js +0 -28
- package/dist/cjs/src/light-account/actions/transferOwnership.js.map +0 -1
- package/dist/cjs/src/light-account/actions/updateOwners.d.ts +0 -9
- package/dist/cjs/src/light-account/actions/updateOwners.js +0 -27
- package/dist/cjs/src/light-account/actions/updateOwners.js.map +0 -1
- package/dist/cjs/src/light-account/clients/alchemyClient.d.ts +0 -6
- package/dist/cjs/src/light-account/clients/alchemyClient.js +0 -25
- package/dist/cjs/src/light-account/clients/alchemyClient.js.map +0 -1
- package/dist/cjs/src/light-account/clients/client.d.ts +0 -10
- package/dist/cjs/src/light-account/clients/client.js +0 -22
- package/dist/cjs/src/light-account/clients/client.js.map +0 -1
- package/dist/cjs/src/light-account/clients/multiOwnerAlchemyClient.d.ts +0 -6
- package/dist/cjs/src/light-account/clients/multiOwnerAlchemyClient.js +0 -25
- package/dist/cjs/src/light-account/clients/multiOwnerAlchemyClient.js.map +0 -1
- package/dist/cjs/src/light-account/clients/multiOwnerLightAccount.d.ts +0 -10
- package/dist/cjs/src/light-account/clients/multiOwnerLightAccount.js +0 -22
- package/dist/cjs/src/light-account/clients/multiOwnerLightAccount.js.map +0 -1
- package/dist/cjs/src/light-account/decorators/lightAccount.d.ts +0 -8
- package/dist/cjs/src/light-account/decorators/lightAccount.js +0 -9
- package/dist/cjs/src/light-account/decorators/lightAccount.js.map +0 -1
- package/dist/cjs/src/light-account/decorators/multiOwnerLightAccount.d.ts +0 -8
- package/dist/cjs/src/light-account/decorators/multiOwnerLightAccount.js +0 -9
- package/dist/cjs/src/light-account/decorators/multiOwnerLightAccount.js.map +0 -1
- package/dist/cjs/src/light-account/e2e-tests/constants.d.ts +0 -6
- package/dist/cjs/src/light-account/e2e-tests/constants.js +0 -10
- package/dist/cjs/src/light-account/e2e-tests/constants.js.map +0 -1
- package/dist/cjs/src/light-account/types.d.ts +0 -31
- package/dist/cjs/src/light-account/types.js +0 -3
- package/dist/cjs/src/light-account/types.js.map +0 -1
- package/dist/cjs/src/light-account/utils.d.ts +0 -10
- package/dist/cjs/src/light-account/utils.js +0 -108
- package/dist/cjs/src/light-account/utils.js.map +0 -1
- package/dist/cjs/src/msca/abis/IAccountLoupe.d.ts +0 -79
- package/dist/cjs/src/msca/abis/IAccountLoupe.js +0 -82
- package/dist/cjs/src/msca/abis/IAccountLoupe.js.map +0 -1
- package/dist/cjs/src/msca/abis/IPlugin.d.ts +0 -474
- package/dist/cjs/src/msca/abis/IPlugin.js +0 -400
- package/dist/cjs/src/msca/abis/IPlugin.js.map +0 -1
- package/dist/cjs/src/msca/abis/IPluginManager.d.ts +0 -101
- package/dist/cjs/src/msca/abis/IPluginManager.js +0 -109
- package/dist/cjs/src/msca/abis/IPluginManager.js.map +0 -1
- package/dist/cjs/src/msca/abis/IStandardExecutor.d.ts +0 -50
- package/dist/cjs/src/msca/abis/IStandardExecutor.js +0 -35
- package/dist/cjs/src/msca/abis/IStandardExecutor.js.map +0 -1
- package/dist/cjs/src/msca/abis/MultiOwnerModularAccountFactory.d.ts +0 -234
- package/dist/cjs/src/msca/abis/MultiOwnerModularAccountFactory.js +0 -194
- package/dist/cjs/src/msca/abis/MultiOwnerModularAccountFactory.js.map +0 -1
- package/dist/cjs/src/msca/abis/MultisigModularAccountFactory.d.ts +0 -246
- package/dist/cjs/src/msca/abis/MultisigModularAccountFactory.js +0 -320
- package/dist/cjs/src/msca/abis/MultisigModularAccountFactory.js.map +0 -1
- package/dist/cjs/src/msca/abis/UpgradeableModularAccount.d.ts +0 -880
- package/dist/cjs/src/msca/abis/UpgradeableModularAccount.js +0 -649
- package/dist/cjs/src/msca/abis/UpgradeableModularAccount.js.map +0 -1
- package/dist/cjs/src/msca/account/multiOwnerAccount.d.ts +0 -12
- package/dist/cjs/src/msca/account/multiOwnerAccount.js +0 -60
- package/dist/cjs/src/msca/account/multiOwnerAccount.js.map +0 -1
- package/dist/cjs/src/msca/account/multisigAccount.d.ts +0 -17
- package/dist/cjs/src/msca/account/multisigAccount.js +0 -71
- package/dist/cjs/src/msca/account/multisigAccount.js.map +0 -1
- package/dist/cjs/src/msca/account/standardExecutor.d.ts +0 -2
- package/dist/cjs/src/msca/account/standardExecutor.js +0 -28
- package/dist/cjs/src/msca/account/standardExecutor.js.map +0 -1
- package/dist/cjs/src/msca/account-loupe/decorator.d.ts +0 -16
- package/dist/cjs/src/msca/account-loupe/decorator.js +0 -66
- package/dist/cjs/src/msca/account-loupe/decorator.js.map +0 -1
- package/dist/cjs/src/msca/account-loupe/types.d.ts +0 -16
- package/dist/cjs/src/msca/account-loupe/types.js +0 -3
- package/dist/cjs/src/msca/account-loupe/types.js.map +0 -1
- package/dist/cjs/src/msca/client/alchemyClient.d.ts +0 -6
- package/dist/cjs/src/msca/client/alchemyClient.js +0 -28
- package/dist/cjs/src/msca/client/alchemyClient.js.map +0 -1
- package/dist/cjs/src/msca/client/client.d.ts +0 -17
- package/dist/cjs/src/msca/client/client.js +0 -49
- package/dist/cjs/src/msca/client/client.js.map +0 -1
- package/dist/cjs/src/msca/client/multiSigAlchemyClient.d.ts +0 -6
- package/dist/cjs/src/msca/client/multiSigAlchemyClient.js +0 -31
- package/dist/cjs/src/msca/client/multiSigAlchemyClient.js.map +0 -1
- package/dist/cjs/src/msca/e2e-tests/constants.d.ts +0 -3
- package/dist/cjs/src/msca/e2e-tests/constants.js +0 -7
- package/dist/cjs/src/msca/e2e-tests/constants.js.map +0 -1
- package/dist/cjs/src/msca/errors.d.ts +0 -17
- package/dist/cjs/src/msca/errors.js +0 -53
- package/dist/cjs/src/msca/errors.js.map +0 -1
- package/dist/cjs/src/msca/plugin-manager/decorator.d.ts +0 -11
- package/dist/cjs/src/msca/plugin-manager/decorator.js +0 -13
- package/dist/cjs/src/msca/plugin-manager/decorator.js.map +0 -1
- package/dist/cjs/src/msca/plugin-manager/installPlugin.d.ts +0 -11
- package/dist/cjs/src/msca/plugin-manager/installPlugin.js +0 -48
- package/dist/cjs/src/msca/plugin-manager/installPlugin.js.map +0 -1
- package/dist/cjs/src/msca/plugin-manager/uninstallPlugin.d.ts +0 -9
- package/dist/cjs/src/msca/plugin-manager/uninstallPlugin.js +0 -35
- package/dist/cjs/src/msca/plugin-manager/uninstallPlugin.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multi-owner/extension.d.ts +0 -13
- package/dist/cjs/src/msca/plugins/multi-owner/extension.js +0 -26
- package/dist/cjs/src/msca/plugins/multi-owner/extension.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multi-owner/index.d.ts +0 -3
- package/dist/cjs/src/msca/plugins/multi-owner/index.js +0 -10
- package/dist/cjs/src/msca/plugins/multi-owner/index.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multi-owner/plugin.d.ts +0 -793
- package/dist/cjs/src/msca/plugins/multi-owner/plugin.js +0 -695
- package/dist/cjs/src/msca/plugins/multi-owner/plugin.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multi-owner/signer.d.ts +0 -215
- package/dist/cjs/src/msca/plugins/multi-owner/signer.js +0 -47
- package/dist/cjs/src/msca/plugins/multi-owner/signer.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/actions/getThreshold.d.ts +0 -4
- package/dist/cjs/src/msca/plugins/multisig/actions/getThreshold.js +0 -20
- package/dist/cjs/src/msca/plugins/multisig/actions/getThreshold.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/actions/isOwnerOf.d.ts +0 -6
- package/dist/cjs/src/msca/plugins/multisig/actions/isOwnerOf.js +0 -15
- package/dist/cjs/src/msca/plugins/multisig/actions/isOwnerOf.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/actions/proposeUserOperation.d.ts +0 -4
- package/dist/cjs/src/msca/plugins/multisig/actions/proposeUserOperation.js +0 -47
- package/dist/cjs/src/msca/plugins/multisig/actions/proposeUserOperation.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/actions/readOwners.d.ts +0 -4
- package/dist/cjs/src/msca/plugins/multisig/actions/readOwners.js +0 -15
- package/dist/cjs/src/msca/plugins/multisig/actions/readOwners.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/actions/signMultisigUserOperation.d.ts +0 -4
- package/dist/cjs/src/msca/plugins/multisig/actions/signMultisigUserOperation.js +0 -54
- package/dist/cjs/src/msca/plugins/multisig/actions/signMultisigUserOperation.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/extension.d.ts +0 -17
- package/dist/cjs/src/msca/plugins/multisig/extension.js +0 -19
- package/dist/cjs/src/msca/plugins/multisig/extension.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/index.d.ts +0 -5
- package/dist/cjs/src/msca/plugins/multisig/index.js +0 -12
- package/dist/cjs/src/msca/plugins/multisig/index.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/middleware.d.ts +0 -3
- package/dist/cjs/src/msca/plugins/multisig/middleware.js +0 -97
- package/dist/cjs/src/msca/plugins/multisig/middleware.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/plugin.d.ts +0 -892
- package/dist/cjs/src/msca/plugins/multisig/plugin.js +0 -740
- package/dist/cjs/src/msca/plugins/multisig/plugin.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/signer.d.ts +0 -223
- package/dist/cjs/src/msca/plugins/multisig/signer.js +0 -57
- package/dist/cjs/src/msca/plugins/multisig/signer.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/types.d.ts +0 -34
- package/dist/cjs/src/msca/plugins/multisig/types.js +0 -3
- package/dist/cjs/src/msca/plugins/multisig/types.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/utils/combineSignatures.d.ts +0 -10
- package/dist/cjs/src/msca/plugins/multisig/utils/combineSignatures.js +0 -15
- package/dist/cjs/src/msca/plugins/multisig/utils/combineSignatures.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/utils/formatSignatures.d.ts +0 -2
- package/dist/cjs/src/msca/plugins/multisig/utils/formatSignatures.js +0 -42
- package/dist/cjs/src/msca/plugins/multisig/utils/formatSignatures.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/utils/getSignerType.d.ts +0 -10
- package/dist/cjs/src/msca/plugins/multisig/utils/getSignerType.js +0 -13
- package/dist/cjs/src/msca/plugins/multisig/utils/getSignerType.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/utils/index.d.ts +0 -8
- package/dist/cjs/src/msca/plugins/multisig/utils/index.js +0 -12
- package/dist/cjs/src/msca/plugins/multisig/utils/index.js.map +0 -1
- package/dist/cjs/src/msca/plugins/multisig/utils/splitAggregatedSignature.d.ts +0 -16
- package/dist/cjs/src/msca/plugins/multisig/utils/splitAggregatedSignature.js +0 -74
- package/dist/cjs/src/msca/plugins/multisig/utils/splitAggregatedSignature.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/SessionKeyPermissionsUpdatesAbi.d.ts +0 -117
- package/dist/cjs/src/msca/plugins/session-key/SessionKeyPermissionsUpdatesAbi.js +0 -115
- package/dist/cjs/src/msca/plugins/session-key/SessionKeyPermissionsUpdatesAbi.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/debug-session-key-bytecode.d.ts +0 -1
- package/dist/cjs/src/msca/plugins/session-key/debug-session-key-bytecode.js +0 -5
- package/dist/cjs/src/msca/plugins/session-key/debug-session-key-bytecode.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/extension.d.ts +0 -30
- package/dist/cjs/src/msca/plugins/session-key/extension.js +0 -156
- package/dist/cjs/src/msca/plugins/session-key/extension.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/index.d.ts +0 -3
- package/dist/cjs/src/msca/plugins/session-key/index.js +0 -10
- package/dist/cjs/src/msca/plugins/session-key/index.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/permissions.d.ts +0 -53
- package/dist/cjs/src/msca/plugins/session-key/permissions.js +0 -153
- package/dist/cjs/src/msca/plugins/session-key/permissions.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/plugin.d.ts +0 -1200
- package/dist/cjs/src/msca/plugins/session-key/plugin.js +0 -1044
- package/dist/cjs/src/msca/plugins/session-key/plugin.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/signer.d.ts +0 -233
- package/dist/cjs/src/msca/plugins/session-key/signer.js +0 -101
- package/dist/cjs/src/msca/plugins/session-key/signer.js.map +0 -1
- package/dist/cjs/src/msca/plugins/session-key/utils.d.ts +0 -11
- package/dist/cjs/src/msca/plugins/session-key/utils.js +0 -22
- package/dist/cjs/src/msca/plugins/session-key/utils.js.map +0 -1
- package/dist/cjs/src/msca/plugins/types.d.ts +0 -12
- package/dist/cjs/src/msca/plugins/types.js +0 -3
- package/dist/cjs/src/msca/plugins/types.js.map +0 -1
- package/dist/cjs/src/msca/utils.d.ts +0 -17
- package/dist/cjs/src/msca/utils.js +0 -99
- package/dist/cjs/src/msca/utils.js.map +0 -1
- package/dist/esm/package.json +0 -1
- package/dist/esm/src/light-account/e2e-tests/constants.d.ts +0 -6
- package/dist/esm/src/light-account/e2e-tests/constants.js +0 -7
- package/dist/esm/src/light-account/e2e-tests/constants.js.map +0 -1
- package/dist/types/src/light-account/e2e-tests/constants.d.ts +0 -7
- package/dist/types/src/light-account/e2e-tests/constants.d.ts.map +0 -1
- package/src/light-account/e2e-tests/constants.ts +0 -8
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/plugin.ts"],"names":[],"mappings":";;;AAAA,+BAac;AACd,uCAYsB;AACtB,kEAIsC;AACtC,wDAA4D;AA2K5D,MAAM,SAAS,GAAG;IAChB,CAAC,EAAE,4CAAuD;IAC1D,EAAE,EAAE,4CAAuD;IAC3D,GAAG,EAAE,4CAAuD;IAC5D,GAAG,EAAE,4CAAuD;IAC5D,IAAI,EAAE,4CAAuD;IAC7D,IAAI,EAAE,4CAAuD;IAC7D,KAAK,EAAE,4CAAuD;IAC9D,KAAK,EAAE,4CAAuD;IAC9D,KAAK,EAAE,4CAAuD;IAC9D,KAAK,EAAE,4CAAuD;IAC9D,MAAM,EAAE,4CAAuD;IAC/D,OAAO,EAAE,4CAAuD;IAChE,QAAQ,EAAE,4CAAuD;IACjE,QAAQ,EAAE,4CAAuD;IACjE,SAAS,EAAE,4CAAuD;CACxC,CAAC;AAEhB,QAAA,gBAAgB,GAAuC;IAClE,IAAI,EAAE;QACJ,IAAI,EAAE,oBAAoB;QAC1B,OAAO,EAAE,OAAO;QAChB,SAAS;KACV;IACD,WAAW,EAAE,CACX,MAAS,EACT,OAAiB,EAKjB,EAAE;QACF,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,MAAM,IAAI,yBAAkB,EAAE,CAAC;QAElD,OAAO,IAAA,kBAAW,EAAC;YACjB,OAAO,EAAE,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9C,GAAG,EAAE,2BAAmB;YACxB,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEK,MAAM,uBAAuB,GAWe,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC9D,qBAAqB,CAAC,EACpB,IAAI,EACJ,SAAS,EACT,OAAO,EACP,OAAO,GAAG,MAAM,CAAC,OAAO,GACzB;QACC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,8BAAuB,CAC/B,oBAAoB,EACpB,uBAAuB,EACvB,MAAM,CACP,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,IAAA,yBAAkB,EAAC;YAC5B,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,uBAAuB;YACrC,IAAI;SACL,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,aAAa,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE;QAClE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,8BAAuB,CAC/B,oBAAoB,EACpB,eAAe,EACf,MAAM,CACP,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,IAAA,yBAAkB,EAAC;YAC5B,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,eAAe;YAC7B,IAAI;SACL,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,gBAAgB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE;QACrE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,8BAAuB,CAC/B,oBAAoB,EACpB,kBAAkB,EAClB,MAAM,CACP,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,IAAA,yBAAkB,EAAC;YAC5B,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,kBAAkB;YAChC,IAAI;SACL,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,gBAAgB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE;QACrE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,8BAAuB,CAC/B,oBAAoB,EACpB,kBAAkB,EAClB,MAAM,CACP,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,IAAA,yBAAkB,EAAC;YAC5B,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,kBAAkB;YAChC,IAAI;SACL,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,oBAAoB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE;QACzE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;QACnC,CAAC;QACD,IAAI,CAAC,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,8BAAuB,CAC/B,oBAAoB,EACpB,sBAAsB,EACtB,MAAM,CACP,CAAC;QACJ,CAAC;QAED,MAAM,EAAE,GAAG,IAAA,yBAAkB,EAAC;YAC5B,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,sBAAsB;YACpC,IAAI;SACL,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,iBAAiB,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IACD,uBAAuB,CAAC,EACtB,OAAO,GAAG,MAAM,CAAC,OAAO,EACxB,SAAS,EACT,OAAO,EACP,GAAG,MAAM,EACV;QACC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,2BAAoB,EAAE,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,IAAA,2BAAoB,EAAC,MAAM,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,8BAAuB,CAC/B,oBAAoB,EACpB,yBAAyB,EACzB,MAAM,CACP,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,yBAAkB,EAAE,CAAC;QACjC,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,CAAC,mBAAmB,IAAI;YACjD,CAAC,GAAG,EAAE;gBACJ,MAAM,aAAa,GAAG,4BAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChE,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,KAAK,CACb,6CAA6C,GAAG,KAAK,CAAC,IAAI,CAC3D,CAAC;gBACJ,CAAC;gBAED,OAAO,IAAA,mBAAY,EAAC,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC;YAClE,CAAC,CAAC,EAAE;YAEJ,CAAC,GAAG,EAAE;gBACJ,MAAM,aAAa,GAAG,4BAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChE,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,IAAI,KAAK,CACb,6CAA6C,GAAG,KAAK,CAAC,IAAI,CAC3D,CAAC;gBACJ,CAAC;gBAED,OAAO,IAAA,mBAAY,EAAC,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC;YAClE,CAAC,CAAC,EAAE;SACL,CAAC;QACF,MAAM,aAAa,GACjB,MAAM,CAAC,aAAa;YACnB,wBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAyB,CAAC;QAErE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,6CAA6C,GAAG,KAAK,CAAC,IAAI,CAC3D,CAAC;QACJ,CAAC;QAED,OAAO,IAAA,+BAAc,EAAC,MAAM,EAAE;YAC5B,aAAa;YACb,cAAc,EAAE,IAAA,0BAAmB,EACjC;gBACE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,EAAE;gBAC1C,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE;gBACnC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,oBAAoB,EAAE;aAClD,EACD,MAAM,CAAC,IAAI,CACZ;YACD,YAAY;YACZ,SAAS;YACT,OAAO;YACP,OAAO;SACR,CAAC,CAAC;IACL,CAAC;IACD,2BAA2B,CAAC,EAAE,IAAI,EAAE;QAClC,OAAO,IAAA,yBAAkB,EAAC;YACxB,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,uBAAuB;YACrC,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IACD,mBAAmB,CAAC,EAAE,IAAI,EAAE;QAC1B,OAAO,IAAA,yBAAkB,EAAC;YACxB,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,eAAe;YAC7B,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IACD,sBAAsB,CAAC,EAAE,IAAI,EAAE;QAC7B,OAAO,IAAA,yBAAkB,EAAC;YACxB,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,kBAAkB;YAChC,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IACD,sBAAsB,CAAC,EAAE,IAAI,EAAE;QAC7B,OAAO,IAAA,yBAAkB,EAAC;YACxB,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,kBAAkB;YAChC,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IACD,0BAA0B,CAAC,EAAE,IAAI,EAAE;QACjC,OAAO,IAAA,yBAAkB,EAAC;YACxB,GAAG,EAAE,4CAAoC;YACzC,YAAY,EAAE,sBAAsB;YACpC,IAAI;SACL,CAAC,CAAC;IACL,CAAC;CACF,CAAC,CAAC;AAhOU,QAAA,uBAAuB,2BAgOjC;AAEU,QAAA,oCAAoC,GAAG;IAClD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,eAAe;gBAC7B,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC5D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;iBACvD;aACF;YACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACzD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACxE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SAClE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACnE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACjE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACpE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SAC9D;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;CACO,CAAC;AAEE,QAAA,mBAAmB,GAAG;IACjC;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACzD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACxE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,SAAS;gBACf,YAAY,EAAE,eAAe;gBAC7B,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC5D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;iBACvD;aACF;YACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,uBAAuB;QAC7B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACtE;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;YACxD,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;SAC/D;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,kDAAkD;aACjE;SACF;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,wBAAwB;QAC9B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SAC5D;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,yCAAyC;gBACvD,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;oBACxD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC/D,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;oBACnE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;iBACjE;aACF;SACF;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,yCAAyC;gBACvD,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;oBACxD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC/D,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;oBACnE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;iBACjE;aACF;YACD,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;SAC5D;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;YAC9D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;SAC/D;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,8BAA8B;QACpC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,yCAAyC;gBACvD,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;oBACxD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC/D,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;oBACnE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;iBACjE;aACF;SACF;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,+BAA+B;QACrC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACrE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;SAC7D;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QACnE,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QAC3D,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAChE,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAC5D,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,uBAAuB;gBACrC,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE;oBACpE;wBACE,IAAI,EAAE,wBAAwB;wBAC9B,IAAI,EAAE,UAAU;wBAChB,YAAY,EAAE,UAAU;qBACzB;oBACD;wBACE,IAAI,EAAE,oBAAoB;wBAC1B,IAAI,EAAE,UAAU;wBAChB,YAAY,EAAE,UAAU;qBACzB;oBACD;wBACE,IAAI,EAAE,6BAA6B;wBACnC,IAAI,EAAE,UAAU;wBAChB,YAAY,EAAE,UAAU;qBACzB;oBACD;wBACE,IAAI,EAAE,0BAA0B;wBAChC,IAAI,EAAE,MAAM;wBACZ,YAAY,EAAE,MAAM;qBACrB;oBACD,EAAE,IAAI,EAAE,qBAAqB,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;oBACnE;wBACE,IAAI,EAAE,wBAAwB;wBAC9B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,yCAAyC;wBACvD,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,iBAAiB;gCACvB,IAAI,EAAE,SAAS;gCACf,YAAY,EAAE,SAAS;6BACxB;4BACD,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE;4BACjE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE;yBAClE;qBACF;oBACD;wBACE,IAAI,EAAE,2BAA2B;wBACjC,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,qCAAqC;wBACnD,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,mBAAmB;gCACzB,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,QAAQ;6BACvB;4BACD;gCACE,IAAI,EAAE,oBAAoB;gCAC1B,IAAI,EAAE,OAAO;gCACb,YAAY,EAAE,yBAAyB;gCACvC,UAAU,EAAE;oCACV;wCACE,IAAI,EAAE,cAAc;wCACpB,IAAI,EAAE,OAAO;wCACb,YAAY,EAAE,qCAAqC;qCACpD;oCACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oCAC5D;wCACE,IAAI,EAAE,iBAAiB;wCACvB,IAAI,EAAE,SAAS;wCACf,YAAY,EAAE,SAAS;qCACxB;iCACF;6BACF;yBACF;qBACF;oBACD;wBACE,IAAI,EAAE,4BAA4B;wBAClC,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,qCAAqC;wBACnD,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,mBAAmB;gCACzB,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,QAAQ;6BACvB;4BACD;gCACE,IAAI,EAAE,oBAAoB;gCAC1B,IAAI,EAAE,OAAO;gCACb,YAAY,EAAE,yBAAyB;gCACvC,UAAU,EAAE;oCACV;wCACE,IAAI,EAAE,cAAc;wCACpB,IAAI,EAAE,OAAO;wCACb,YAAY,EAAE,qCAAqC;qCACpD;oCACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oCAC5D;wCACE,IAAI,EAAE,iBAAiB;wCACvB,IAAI,EAAE,SAAS;wCACf,YAAY,EAAE,SAAS;qCACxB;iCACF;6BACF;yBACF;qBACF;oBACD;wBACE,IAAI,EAAE,0BAA0B;wBAChC,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,qCAAqC;wBACnD,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,mBAAmB;gCACzB,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,QAAQ;6BACvB;4BACD;gCACE,IAAI,EAAE,oBAAoB;gCAC1B,IAAI,EAAE,OAAO;gCACb,YAAY,EAAE,yBAAyB;gCACvC,UAAU,EAAE;oCACV;wCACE,IAAI,EAAE,cAAc;wCACpB,IAAI,EAAE,OAAO;wCACb,YAAY,EAAE,qCAAqC;qCACpD;oCACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oCAC5D;wCACE,IAAI,EAAE,iBAAiB;wCACvB,IAAI,EAAE,SAAS;wCACf,YAAY,EAAE,SAAS;qCACxB;iCACF;6BACF;yBACF;qBACF;oBACD;wBACE,IAAI,EAAE,2BAA2B;wBACjC,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,qCAAqC;wBACnD,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,mBAAmB;gCACzB,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,QAAQ;6BACvB;4BACD;gCACE,IAAI,EAAE,oBAAoB;gCAC1B,IAAI,EAAE,OAAO;gCACb,YAAY,EAAE,yBAAyB;gCACvC,UAAU,EAAE;oCACV;wCACE,IAAI,EAAE,cAAc;wCACpB,IAAI,EAAE,OAAO;wCACb,YAAY,EAAE,qCAAqC;qCACpD;oCACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oCAC5D;wCACE,IAAI,EAAE,iBAAiB;wCACvB,IAAI,EAAE,SAAS;wCACf,YAAY,EAAE,SAAS;qCACxB;iCACF;6BACF;yBACF;qBACF;oBACD;wBACE,IAAI,EAAE,gBAAgB;wBACtB,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,gCAAgC;wBAC9C,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,mBAAmB;gCACzB,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,QAAQ;6BACvB;4BACD;gCACE,IAAI,EAAE,aAAa;gCACnB,IAAI,EAAE,OAAO;gCACb,YAAY,EAAE,yBAAyB;gCACvC,UAAU,EAAE;oCACV;wCACE,IAAI,EAAE,cAAc;wCACpB,IAAI,EAAE,OAAO;wCACb,YAAY,EAAE,qCAAqC;qCACpD;oCACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oCAC5D;wCACE,IAAI,EAAE,iBAAiB;wCACvB,IAAI,EAAE,SAAS;wCACf,YAAY,EAAE,SAAS;qCACxB;iCACF;6BACF;4BACD;gCACE,IAAI,EAAE,cAAc;gCACpB,IAAI,EAAE,OAAO;gCACb,YAAY,EAAE,yBAAyB;gCACvC,UAAU,EAAE;oCACV;wCACE,IAAI,EAAE,cAAc;wCACpB,IAAI,EAAE,OAAO;wCACb,YAAY,EAAE,qCAAqC;qCACpD;oCACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oCAC5D;wCACE,IAAI,EAAE,iBAAiB;wCACvB,IAAI,EAAE,SAAS;wCACf,YAAY,EAAE,SAAS;qCACxB;iCACF;6BACF;yBACF;qBACF;iBACF;aACF;SACF;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE,EAAE;QACV,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,uBAAuB;gBACrC,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;oBACxD,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;oBAC3D,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;oBAC1D;wBACE,IAAI,EAAE,uBAAuB;wBAC7B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,6BAA6B;wBAC3C,UAAU,EAAE;4BACV;gCACE,IAAI,EAAE,kBAAkB;gCACxB,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,QAAQ;6BACvB;4BACD;gCACE,IAAI,EAAE,uBAAuB;gCAC7B,IAAI,EAAE,QAAQ;gCACd,YAAY,EAAE,QAAQ;6BACvB;yBACF;qBACF;iBACF;aACF;SACF;QACD,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;YAC5D,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;SAClE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;YAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC5D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC3D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;SACvD;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC;QAC7D,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,0BAA0B;QAChC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;YAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC5D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC3D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;SACvD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;YAC5D;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,sBAAsB;gBACpC,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC5D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oBAC1D,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oBAC1D,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAClE;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACxB;oBACD;wBACE,IAAI,EAAE,oBAAoB;wBAC1B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACxB;oBACD,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAClE;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACxB;oBACD,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oBAClE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;iBAC5D;aACF;YACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SAClE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kCAAkC;QACxC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACnE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YACjE,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACpE;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,2BAA2B;QACjC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;YAC5D,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC5D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC3D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;SACvD;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACvE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;QACrE,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;QACzE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QAC3D,eAAe,EAAE,MAAM;KACxB;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SAC9D;QACD,OAAO,EAAE,EAAE;QACX,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,0BAA0B;QAChC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;YAC5D;gBACE,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,YAAY,EAAE,sBAAsB;gBACpC,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC5D,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAC3D,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oBAC1D,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oBAC1D,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAClE;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACxB;oBACD;wBACE,IAAI,EAAE,oBAAoB;wBAC1B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACxB;oBACD,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;oBAClE;wBACE,IAAI,EAAE,sBAAsB;wBAC5B,IAAI,EAAE,SAAS;wBACf,YAAY,EAAE,SAAS;qBACxB;oBACD,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;oBAClE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;iBAC5D;aACF;YACD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;QACD,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACjE,eAAe,EAAE,YAAY;KAC9B;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;YACD;gBACE,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,SAAS;aACxB;SACF;QACD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;YACD;gBACE,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;YACD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE;SACzE;QACD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;YACD;gBACE,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;SACF;QACD,SAAS,EAAE,KAAK;KACjB;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE;YACN;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;YACD;gBACE,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;YACD;gBACE,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,IAAI;gBACb,YAAY,EAAE,SAAS;aACxB;SACF;QACD,SAAS,EAAE,KAAK;KACjB;IACD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAAE;IACzD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,yBAAyB;QAC/B,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAChE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SAC5D;KACF;IACD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE;IACpD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,0BAA0B;QAChC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;SACnE;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KAC3E;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,kBAAkB;QACxB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KAC3E;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KACtE;IACD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,+BAA+B;QACrC,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;YAC7D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE;SACjE;KACF;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KACvE;IACD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,gBAAgB;QACtB,MAAM,EAAE;YACN,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE;YAC5D,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE;SAC7D;KACF;IACD,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD;QACE,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;KAC3E;CACO,CAAC","sourcesContent":["import {\n getContract,\n encodePacked,\n encodeAbiParameters,\n encodeFunctionData,\n type Address,\n type GetContractReturnType,\n type Transport,\n type PublicClient,\n type Client,\n type EncodeFunctionDataParameters,\n type Chain,\n type Hex,\n} from \"viem\";\nimport {\n ChainNotFoundError,\n AccountNotFoundError,\n isSmartAccountClient,\n IncompatibleClientError,\n type SmartContractAccount,\n type GetAccountParameter,\n type SendUserOperationResult,\n type GetEntryPointFromAccount,\n type UserOperationOverridesParameter,\n type UserOperationContext,\n type GetContextParameter,\n} from \"@aa-sdk/core\";\nimport {\n installPlugin as installPlugin_,\n type Plugin,\n type FunctionReference,\n} from \"@account-kit/smart-contracts\";\nimport { MultiOwnerPlugin } from \"../multi-owner/plugin.js\";\n\ntype ExecutionActions<\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined,\n TContext extends UserOperationContext | undefined =\n | UserOperationContext\n | undefined,\n TEntryPointVersion extends\n GetEntryPointFromAccount<TAccount> = GetEntryPointFromAccount<TAccount>,\n> = {\n executeWithSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"executeWithSessionKey\"\n >,\n \"args\"\n > &\n UserOperationOverridesParameter<TEntryPointVersion> &\n GetAccountParameter<TAccount> &\n GetContextParameter<TContext>,\n ) => Promise<SendUserOperationResult<TEntryPointVersion>>;\n\n addSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"addSessionKey\"\n >,\n \"args\"\n > &\n UserOperationOverridesParameter<TEntryPointVersion> &\n GetAccountParameter<TAccount> &\n GetContextParameter<TContext>,\n ) => Promise<SendUserOperationResult<TEntryPointVersion>>;\n\n removeSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"removeSessionKey\"\n >,\n \"args\"\n > &\n UserOperationOverridesParameter<TEntryPointVersion> &\n GetAccountParameter<TAccount> &\n GetContextParameter<TContext>,\n ) => Promise<SendUserOperationResult<TEntryPointVersion>>;\n\n rotateSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"rotateSessionKey\"\n >,\n \"args\"\n > &\n UserOperationOverridesParameter<TEntryPointVersion> &\n GetAccountParameter<TAccount> &\n GetContextParameter<TContext>,\n ) => Promise<SendUserOperationResult<TEntryPointVersion>>;\n\n updateKeyPermissions: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"updateKeyPermissions\"\n >,\n \"args\"\n > &\n UserOperationOverridesParameter<TEntryPointVersion> &\n GetAccountParameter<TAccount> &\n GetContextParameter<TContext>,\n ) => Promise<SendUserOperationResult<TEntryPointVersion>>;\n};\n\ntype InstallArgs = [\n { type: \"address[]\"; name: \"initialKeys\" },\n { type: \"bytes32[]\"; name: \"tags\" },\n { type: \"bytes[][]\"; name: \"initialPermissions\" },\n];\n\nexport type InstallSessionKeyPluginParams = {\n args: Parameters<typeof encodeAbiParameters<InstallArgs>>[1];\n pluginAddress?: Address;\n dependencyOverrides?: FunctionReference[];\n};\n\ntype ManagementActions<\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined,\n TContext extends UserOperationContext | undefined =\n | Record<string, any>\n | undefined,\n TEntryPointVersion extends\n GetEntryPointFromAccount<TAccount> = GetEntryPointFromAccount<TAccount>,\n> = {\n installSessionKeyPlugin: (\n args: UserOperationOverridesParameter<TEntryPointVersion> &\n InstallSessionKeyPluginParams &\n GetAccountParameter<TAccount> &\n GetContextParameter<TContext>,\n ) => Promise<SendUserOperationResult<TEntryPointVersion>>;\n};\n\ntype ReadAndEncodeActions = {\n encodeExecuteWithSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"executeWithSessionKey\"\n >,\n \"args\"\n >,\n ) => Hex;\n\n encodeAddSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"addSessionKey\"\n >,\n \"args\"\n >,\n ) => Hex;\n\n encodeRemoveSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"removeSessionKey\"\n >,\n \"args\"\n >,\n ) => Hex;\n\n encodeRotateSessionKey: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"rotateSessionKey\"\n >,\n \"args\"\n >,\n ) => Hex;\n\n encodeUpdateKeyPermissions: (\n args: Pick<\n EncodeFunctionDataParameters<\n typeof SessionKeyPluginExecutionFunctionAbi,\n \"updateKeyPermissions\"\n >,\n \"args\"\n >,\n ) => Hex;\n};\n\nexport type SessionKeyPluginActions<\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined,\n TContext extends UserOperationContext | undefined =\n | UserOperationContext\n | undefined,\n> = ExecutionActions<TAccount, TContext> &\n ManagementActions<TAccount, TContext> &\n ReadAndEncodeActions;\n\nconst addresses = {\n 1: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 10: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 137: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 252: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 2523: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 8453: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 42161: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 80001: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 80002: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 84532: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 421614: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 7777777: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 11155111: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 11155420: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n 999999999: \"0x0000003E0000a96de4058e1E02a62FaaeCf23d8d\" as Address,\n} as Record<number, Address>;\n\nexport const SessionKeyPlugin: Plugin<typeof SessionKeyPluginAbi> = {\n meta: {\n name: \"Session Key Plugin\",\n version: \"1.0.1\",\n addresses,\n },\n getContract: <C extends Client>(\n client: C,\n address?: Address,\n ): GetContractReturnType<\n typeof SessionKeyPluginAbi,\n PublicClient,\n Address\n > => {\n if (!client.chain) throw new ChainNotFoundError();\n\n return getContract({\n address: address || addresses[client.chain.id],\n abi: SessionKeyPluginAbi,\n client: client,\n });\n },\n};\n\nexport const sessionKeyPluginActions: <\n TTransport extends Transport = Transport,\n TChain extends Chain | undefined = Chain | undefined,\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined,\n TContext extends UserOperationContext | undefined =\n | UserOperationContext\n | undefined,\n>(\n client: Client<TTransport, TChain, TAccount>,\n) => SessionKeyPluginActions<TAccount, TContext> = (client) => ({\n executeWithSessionKey({\n args,\n overrides,\n context,\n account = client.account,\n }) {\n if (!account) {\n throw new AccountNotFoundError();\n }\n if (!isSmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"SmartAccountClient\",\n \"executeWithSessionKey\",\n client,\n );\n }\n\n const uo = encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"executeWithSessionKey\",\n args,\n });\n\n return client.sendUserOperation({ uo, overrides, account, context });\n },\n addSessionKey({ args, overrides, context, account = client.account }) {\n if (!account) {\n throw new AccountNotFoundError();\n }\n if (!isSmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"SmartAccountClient\",\n \"addSessionKey\",\n client,\n );\n }\n\n const uo = encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"addSessionKey\",\n args,\n });\n\n return client.sendUserOperation({ uo, overrides, account, context });\n },\n removeSessionKey({ args, overrides, context, account = client.account }) {\n if (!account) {\n throw new AccountNotFoundError();\n }\n if (!isSmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"SmartAccountClient\",\n \"removeSessionKey\",\n client,\n );\n }\n\n const uo = encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"removeSessionKey\",\n args,\n });\n\n return client.sendUserOperation({ uo, overrides, account, context });\n },\n rotateSessionKey({ args, overrides, context, account = client.account }) {\n if (!account) {\n throw new AccountNotFoundError();\n }\n if (!isSmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"SmartAccountClient\",\n \"rotateSessionKey\",\n client,\n );\n }\n\n const uo = encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"rotateSessionKey\",\n args,\n });\n\n return client.sendUserOperation({ uo, overrides, account, context });\n },\n updateKeyPermissions({ args, overrides, context, account = client.account }) {\n if (!account) {\n throw new AccountNotFoundError();\n }\n if (!isSmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"SmartAccountClient\",\n \"updateKeyPermissions\",\n client,\n );\n }\n\n const uo = encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"updateKeyPermissions\",\n args,\n });\n\n return client.sendUserOperation({ uo, overrides, account, context });\n },\n installSessionKeyPlugin({\n account = client.account,\n overrides,\n context,\n ...params\n }) {\n if (!account) {\n throw new AccountNotFoundError();\n }\n\n if (!isSmartAccountClient(client)) {\n throw new IncompatibleClientError(\n \"SmartAccountClient\",\n \"installSessionKeyPlugin\",\n client,\n );\n }\n\n const chain = client.chain;\n if (!chain) {\n throw new ChainNotFoundError();\n }\n\n const dependencies = params.dependencyOverrides ?? [\n (() => {\n const pluginAddress = MultiOwnerPlugin.meta.addresses[chain.id];\n if (!pluginAddress) {\n throw new Error(\n \"missing MultiOwnerPlugin address for chain \" + chain.name,\n );\n }\n\n return encodePacked([\"address\", \"uint8\"], [pluginAddress, 0x0]);\n })(),\n\n (() => {\n const pluginAddress = MultiOwnerPlugin.meta.addresses[chain.id];\n if (!pluginAddress) {\n throw new Error(\n \"missing MultiOwnerPlugin address for chain \" + chain.name,\n );\n }\n\n return encodePacked([\"address\", \"uint8\"], [pluginAddress, 0x1]);\n })(),\n ];\n const pluginAddress =\n params.pluginAddress ??\n (SessionKeyPlugin.meta.addresses[chain.id] as Address | undefined);\n\n if (!pluginAddress) {\n throw new Error(\n \"missing SessionKeyPlugin address for chain \" + chain.name,\n );\n }\n\n return installPlugin_(client, {\n pluginAddress,\n pluginInitData: encodeAbiParameters(\n [\n { type: \"address[]\", name: \"initialKeys\" },\n { type: \"bytes32[]\", name: \"tags\" },\n { type: \"bytes[][]\", name: \"initialPermissions\" },\n ],\n params.args,\n ),\n dependencies,\n overrides,\n account,\n context,\n });\n },\n encodeExecuteWithSessionKey({ args }) {\n return encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"executeWithSessionKey\",\n args,\n });\n },\n encodeAddSessionKey({ args }) {\n return encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"addSessionKey\",\n args,\n });\n },\n encodeRemoveSessionKey({ args }) {\n return encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"removeSessionKey\",\n args,\n });\n },\n encodeRotateSessionKey({ args }) {\n return encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"rotateSessionKey\",\n args,\n });\n },\n encodeUpdateKeyPermissions({ args }) {\n return encodeFunctionData({\n abi: SessionKeyPluginExecutionFunctionAbi,\n functionName: \"updateKeyPermissions\",\n args,\n });\n },\n});\n\nexport const SessionKeyPluginExecutionFunctionAbi = [\n {\n type: \"function\",\n name: \"executeWithSessionKey\",\n inputs: [\n {\n name: \"calls\",\n type: \"tuple[]\",\n internalType: \"struct Call[]\",\n components: [\n { name: \"target\", type: \"address\", internalType: \"address\" },\n { name: \"value\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"data\", type: \"bytes\", internalType: \"bytes\" },\n ],\n },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [{ name: \"\", type: \"bytes[]\", internalType: \"bytes[]\" }],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"addSessionKey\",\n inputs: [\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"tag\", type: \"bytes32\", internalType: \"bytes32\" },\n { name: \"permissionUpdates\", type: \"bytes[]\", internalType: \"bytes[]\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"removeSessionKey\",\n inputs: [\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"predecessor\", type: \"bytes32\", internalType: \"bytes32\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"rotateSessionKey\",\n inputs: [\n { name: \"oldSessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"predecessor\", type: \"bytes32\", internalType: \"bytes32\" },\n { name: \"newSessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"updateKeyPermissions\",\n inputs: [\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"updates\", type: \"bytes[]\", internalType: \"bytes[]\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n] as const;\n\nexport const SessionKeyPluginAbi = [\n {\n type: \"function\",\n name: \"addSessionKey\",\n inputs: [\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"tag\", type: \"bytes32\", internalType: \"bytes32\" },\n { name: \"permissionUpdates\", type: \"bytes[]\", internalType: \"bytes[]\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"executeWithSessionKey\",\n inputs: [\n {\n name: \"calls\",\n type: \"tuple[]\",\n internalType: \"struct Call[]\",\n components: [\n { name: \"target\", type: \"address\", internalType: \"address\" },\n { name: \"value\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"data\", type: \"bytes\", internalType: \"bytes\" },\n ],\n },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [{ name: \"\", type: \"bytes[]\", internalType: \"bytes[]\" }],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"findPredecessor\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [{ name: \"\", type: \"bytes32\", internalType: \"bytes32\" }],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"getAccessControlEntry\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"contractAddress\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [\n { name: \"isOnList\", type: \"bool\", internalType: \"bool\" },\n { name: \"checkSelectors\", type: \"bool\", internalType: \"bool\" },\n ],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"getAccessControlType\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [\n {\n name: \"\",\n type: \"uint8\",\n internalType: \"enum ISessionKeyPlugin.ContractAccessControlType\",\n },\n ],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"getERC20SpendLimitInfo\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"token\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [\n {\n name: \"\",\n type: \"tuple\",\n internalType: \"struct ISessionKeyPlugin.SpendLimitInfo\",\n components: [\n { name: \"hasLimit\", type: \"bool\", internalType: \"bool\" },\n { name: \"limit\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"limitUsed\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"refreshInterval\", type: \"uint48\", internalType: \"uint48\" },\n { name: \"lastUsedTime\", type: \"uint48\", internalType: \"uint48\" },\n ],\n },\n ],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"getGasSpendLimit\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [\n {\n name: \"info\",\n type: \"tuple\",\n internalType: \"struct ISessionKeyPlugin.SpendLimitInfo\",\n components: [\n { name: \"hasLimit\", type: \"bool\", internalType: \"bool\" },\n { name: \"limit\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"limitUsed\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"refreshInterval\", type: \"uint48\", internalType: \"uint48\" },\n { name: \"lastUsedTime\", type: \"uint48\", internalType: \"uint48\" },\n ],\n },\n { name: \"shouldReset\", type: \"bool\", internalType: \"bool\" },\n ],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"getKeyTimeRange\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [\n { name: \"validAfter\", type: \"uint48\", internalType: \"uint48\" },\n { name: \"validUntil\", type: \"uint48\", internalType: \"uint48\" },\n ],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"getNativeTokenSpendLimitInfo\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [\n {\n name: \"info\",\n type: \"tuple\",\n internalType: \"struct ISessionKeyPlugin.SpendLimitInfo\",\n components: [\n { name: \"hasLimit\", type: \"bool\", internalType: \"bool\" },\n { name: \"limit\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"limitUsed\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"refreshInterval\", type: \"uint48\", internalType: \"uint48\" },\n { name: \"lastUsedTime\", type: \"uint48\", internalType: \"uint48\" },\n ],\n },\n ],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"getRequiredPaymaster\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [{ name: \"\", type: \"address\", internalType: \"address\" }],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"isSelectorOnAccessControlList\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"contractAddress\", type: \"address\", internalType: \"address\" },\n { name: \"selector\", type: \"bytes4\", internalType: \"bytes4\" },\n ],\n outputs: [{ name: \"isOnList\", type: \"bool\", internalType: \"bool\" }],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"isSessionKeyOf\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [{ name: \"\", type: \"bool\", internalType: \"bool\" }],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"onInstall\",\n inputs: [{ name: \"data\", type: \"bytes\", internalType: \"bytes\" }],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"onUninstall\",\n inputs: [{ name: \"\", type: \"bytes\", internalType: \"bytes\" }],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"pluginManifest\",\n inputs: [],\n outputs: [\n {\n name: \"\",\n type: \"tuple\",\n internalType: \"struct PluginManifest\",\n components: [\n { name: \"interfaceIds\", type: \"bytes4[]\", internalType: \"bytes4[]\" },\n {\n name: \"dependencyInterfaceIds\",\n type: \"bytes4[]\",\n internalType: \"bytes4[]\",\n },\n {\n name: \"executionFunctions\",\n type: \"bytes4[]\",\n internalType: \"bytes4[]\",\n },\n {\n name: \"permittedExecutionSelectors\",\n type: \"bytes4[]\",\n internalType: \"bytes4[]\",\n },\n {\n name: \"permitAnyExternalAddress\",\n type: \"bool\",\n internalType: \"bool\",\n },\n { name: \"canSpendNativeToken\", type: \"bool\", internalType: \"bool\" },\n {\n name: \"permittedExternalCalls\",\n type: \"tuple[]\",\n internalType: \"struct ManifestExternalCallPermission[]\",\n components: [\n {\n name: \"externalAddress\",\n type: \"address\",\n internalType: \"address\",\n },\n { name: \"permitAnySelector\", type: \"bool\", internalType: \"bool\" },\n { name: \"selectors\", type: \"bytes4[]\", internalType: \"bytes4[]\" },\n ],\n },\n {\n name: \"userOpValidationFunctions\",\n type: \"tuple[]\",\n internalType: \"struct ManifestAssociatedFunction[]\",\n components: [\n {\n name: \"executionSelector\",\n type: \"bytes4\",\n internalType: \"bytes4\",\n },\n {\n name: \"associatedFunction\",\n type: \"tuple\",\n internalType: \"struct ManifestFunction\",\n components: [\n {\n name: \"functionType\",\n type: \"uint8\",\n internalType: \"enum ManifestAssociatedFunctionType\",\n },\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"dependencyIndex\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n ],\n },\n ],\n },\n {\n name: \"runtimeValidationFunctions\",\n type: \"tuple[]\",\n internalType: \"struct ManifestAssociatedFunction[]\",\n components: [\n {\n name: \"executionSelector\",\n type: \"bytes4\",\n internalType: \"bytes4\",\n },\n {\n name: \"associatedFunction\",\n type: \"tuple\",\n internalType: \"struct ManifestFunction\",\n components: [\n {\n name: \"functionType\",\n type: \"uint8\",\n internalType: \"enum ManifestAssociatedFunctionType\",\n },\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"dependencyIndex\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n ],\n },\n ],\n },\n {\n name: \"preUserOpValidationHooks\",\n type: \"tuple[]\",\n internalType: \"struct ManifestAssociatedFunction[]\",\n components: [\n {\n name: \"executionSelector\",\n type: \"bytes4\",\n internalType: \"bytes4\",\n },\n {\n name: \"associatedFunction\",\n type: \"tuple\",\n internalType: \"struct ManifestFunction\",\n components: [\n {\n name: \"functionType\",\n type: \"uint8\",\n internalType: \"enum ManifestAssociatedFunctionType\",\n },\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"dependencyIndex\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n ],\n },\n ],\n },\n {\n name: \"preRuntimeValidationHooks\",\n type: \"tuple[]\",\n internalType: \"struct ManifestAssociatedFunction[]\",\n components: [\n {\n name: \"executionSelector\",\n type: \"bytes4\",\n internalType: \"bytes4\",\n },\n {\n name: \"associatedFunction\",\n type: \"tuple\",\n internalType: \"struct ManifestFunction\",\n components: [\n {\n name: \"functionType\",\n type: \"uint8\",\n internalType: \"enum ManifestAssociatedFunctionType\",\n },\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"dependencyIndex\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n ],\n },\n ],\n },\n {\n name: \"executionHooks\",\n type: \"tuple[]\",\n internalType: \"struct ManifestExecutionHook[]\",\n components: [\n {\n name: \"executionSelector\",\n type: \"bytes4\",\n internalType: \"bytes4\",\n },\n {\n name: \"preExecHook\",\n type: \"tuple\",\n internalType: \"struct ManifestFunction\",\n components: [\n {\n name: \"functionType\",\n type: \"uint8\",\n internalType: \"enum ManifestAssociatedFunctionType\",\n },\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"dependencyIndex\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n ],\n },\n {\n name: \"postExecHook\",\n type: \"tuple\",\n internalType: \"struct ManifestFunction\",\n components: [\n {\n name: \"functionType\",\n type: \"uint8\",\n internalType: \"enum ManifestAssociatedFunctionType\",\n },\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"dependencyIndex\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n ],\n },\n ],\n },\n ],\n },\n ],\n stateMutability: \"pure\",\n },\n {\n type: \"function\",\n name: \"pluginMetadata\",\n inputs: [],\n outputs: [\n {\n name: \"\",\n type: \"tuple\",\n internalType: \"struct PluginMetadata\",\n components: [\n { name: \"name\", type: \"string\", internalType: \"string\" },\n { name: \"version\", type: \"string\", internalType: \"string\" },\n { name: \"author\", type: \"string\", internalType: \"string\" },\n {\n name: \"permissionDescriptors\",\n type: \"tuple[]\",\n internalType: \"struct SelectorPermission[]\",\n components: [\n {\n name: \"functionSelector\",\n type: \"bytes4\",\n internalType: \"bytes4\",\n },\n {\n name: \"permissionDescription\",\n type: \"string\",\n internalType: \"string\",\n },\n ],\n },\n ],\n },\n ],\n stateMutability: \"pure\",\n },\n {\n type: \"function\",\n name: \"postExecutionHook\",\n inputs: [\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n { name: \"preExecHookData\", type: \"bytes\", internalType: \"bytes\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"preExecutionHook\",\n inputs: [\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n { name: \"sender\", type: \"address\", internalType: \"address\" },\n { name: \"value\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"data\", type: \"bytes\", internalType: \"bytes\" },\n ],\n outputs: [{ name: \"\", type: \"bytes\", internalType: \"bytes\" }],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"preRuntimeValidationHook\",\n inputs: [\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n { name: \"sender\", type: \"address\", internalType: \"address\" },\n { name: \"value\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"data\", type: \"bytes\", internalType: \"bytes\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"preUserOpValidationHook\",\n inputs: [\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"userOp\",\n type: \"tuple\",\n internalType: \"struct UserOperation\",\n components: [\n { name: \"sender\", type: \"address\", internalType: \"address\" },\n { name: \"nonce\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"initCode\", type: \"bytes\", internalType: \"bytes\" },\n { name: \"callData\", type: \"bytes\", internalType: \"bytes\" },\n { name: \"callGasLimit\", type: \"uint256\", internalType: \"uint256\" },\n {\n name: \"verificationGasLimit\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n {\n name: \"preVerificationGas\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n { name: \"maxFeePerGas\", type: \"uint256\", internalType: \"uint256\" },\n {\n name: \"maxPriorityFeePerGas\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n { name: \"paymasterAndData\", type: \"bytes\", internalType: \"bytes\" },\n { name: \"signature\", type: \"bytes\", internalType: \"bytes\" },\n ],\n },\n { name: \"userOpHash\", type: \"bytes32\", internalType: \"bytes32\" },\n ],\n outputs: [{ name: \"\", type: \"uint256\", internalType: \"uint256\" }],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"removeSessionKey\",\n inputs: [\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"predecessor\", type: \"bytes32\", internalType: \"bytes32\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"resetSessionKeyGasLimitTimestamp\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"rotateSessionKey\",\n inputs: [\n { name: \"oldSessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"predecessor\", type: \"bytes32\", internalType: \"bytes32\" },\n { name: \"newSessionKey\", type: \"address\", internalType: \"address\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"runtimeValidationFunction\",\n inputs: [\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n { name: \"sender\", type: \"address\", internalType: \"address\" },\n { name: \"value\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"data\", type: \"bytes\", internalType: \"bytes\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"sessionKeysOf\",\n inputs: [{ name: \"account\", type: \"address\", internalType: \"address\" }],\n outputs: [{ name: \"\", type: \"address[]\", internalType: \"address[]\" }],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"supportsInterface\",\n inputs: [{ name: \"interfaceId\", type: \"bytes4\", internalType: \"bytes4\" }],\n outputs: [{ name: \"\", type: \"bool\", internalType: \"bool\" }],\n stateMutability: \"view\",\n },\n {\n type: \"function\",\n name: \"updateKeyPermissions\",\n inputs: [\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"updates\", type: \"bytes[]\", internalType: \"bytes[]\" },\n ],\n outputs: [],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"function\",\n name: \"userOpValidationFunction\",\n inputs: [\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n {\n name: \"userOp\",\n type: \"tuple\",\n internalType: \"struct UserOperation\",\n components: [\n { name: \"sender\", type: \"address\", internalType: \"address\" },\n { name: \"nonce\", type: \"uint256\", internalType: \"uint256\" },\n { name: \"initCode\", type: \"bytes\", internalType: \"bytes\" },\n { name: \"callData\", type: \"bytes\", internalType: \"bytes\" },\n { name: \"callGasLimit\", type: \"uint256\", internalType: \"uint256\" },\n {\n name: \"verificationGasLimit\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n {\n name: \"preVerificationGas\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n { name: \"maxFeePerGas\", type: \"uint256\", internalType: \"uint256\" },\n {\n name: \"maxPriorityFeePerGas\",\n type: \"uint256\",\n internalType: \"uint256\",\n },\n { name: \"paymasterAndData\", type: \"bytes\", internalType: \"bytes\" },\n { name: \"signature\", type: \"bytes\", internalType: \"bytes\" },\n ],\n },\n { name: \"userOpHash\", type: \"bytes32\", internalType: \"bytes32\" },\n ],\n outputs: [{ name: \"\", type: \"uint256\", internalType: \"uint256\" }],\n stateMutability: \"nonpayable\",\n },\n {\n type: \"event\",\n name: \"PermissionsUpdated\",\n inputs: [\n {\n name: \"account\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n {\n name: \"sessionKey\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n {\n name: \"updates\",\n type: \"bytes[]\",\n indexed: false,\n internalType: \"bytes[]\",\n },\n ],\n anonymous: false,\n },\n {\n type: \"event\",\n name: \"SessionKeyAdded\",\n inputs: [\n {\n name: \"account\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n {\n name: \"sessionKey\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n { name: \"tag\", type: \"bytes32\", indexed: true, internalType: \"bytes32\" },\n ],\n anonymous: false,\n },\n {\n type: \"event\",\n name: \"SessionKeyRemoved\",\n inputs: [\n {\n name: \"account\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n {\n name: \"sessionKey\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n ],\n anonymous: false,\n },\n {\n type: \"event\",\n name: \"SessionKeyRotated\",\n inputs: [\n {\n name: \"account\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n {\n name: \"oldSessionKey\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n {\n name: \"newSessionKey\",\n type: \"address\",\n indexed: true,\n internalType: \"address\",\n },\n ],\n anonymous: false,\n },\n { type: \"error\", name: \"AlreadyInitialized\", inputs: [] },\n {\n type: \"error\",\n name: \"ERC20SpendLimitExceeded\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n { name: \"token\", type: \"address\", internalType: \"address\" },\n ],\n },\n { type: \"error\", name: \"InvalidAction\", inputs: [] },\n {\n type: \"error\",\n name: \"InvalidPermissionsUpdate\",\n inputs: [\n { name: \"updateSelector\", type: \"bytes4\", internalType: \"bytes4\" },\n ],\n },\n {\n type: \"error\",\n name: \"InvalidSessionKey\",\n inputs: [{ name: \"sessionKey\", type: \"address\", internalType: \"address\" }],\n },\n {\n type: \"error\",\n name: \"InvalidSignature\",\n inputs: [{ name: \"sessionKey\", type: \"address\", internalType: \"address\" }],\n },\n {\n type: \"error\",\n name: \"InvalidToken\",\n inputs: [{ name: \"token\", type: \"address\", internalType: \"address\" }],\n },\n { type: \"error\", name: \"LengthMismatch\", inputs: [] },\n {\n type: \"error\",\n name: \"NativeTokenSpendLimitExceeded\",\n inputs: [\n { name: \"account\", type: \"address\", internalType: \"address\" },\n { name: \"sessionKey\", type: \"address\", internalType: \"address\" },\n ],\n },\n {\n type: \"error\",\n name: \"NotContractCaller\",\n inputs: [{ name: \"caller\", type: \"address\", internalType: \"address\" }],\n },\n {\n type: \"error\",\n name: \"NotImplemented\",\n inputs: [\n { name: \"selector\", type: \"bytes4\", internalType: \"bytes4\" },\n { name: \"functionId\", type: \"uint8\", internalType: \"uint8\" },\n ],\n },\n { type: \"error\", name: \"NotInitialized\", inputs: [] },\n {\n type: \"error\",\n name: \"SessionKeyNotFound\",\n inputs: [{ name: \"sessionKey\", type: \"address\", internalType: \"address\" }],\n },\n] as const;\n"]}
|
|
@@ -1,233 +0,0 @@
|
|
|
1
|
-
import { LocalAccountSigner, type SmartAccountSigner } from "@aa-sdk/core";
|
|
2
|
-
import type { PrivateKeyAccount, SignableMessage, TypedDataDefinition } from "viem";
|
|
3
|
-
import { z } from "zod";
|
|
4
|
-
export declare const SessionKeySignerSchema: z.ZodObject<{
|
|
5
|
-
storageType: z.ZodDefault<z.ZodUnion<[z.ZodUnion<[z.ZodLiteral<"local-storage">, z.ZodLiteral<"session-storage">]>, z.ZodType<Storage, z.ZodTypeDef, Storage>]>>;
|
|
6
|
-
storageKey: z.ZodDefault<z.ZodString>;
|
|
7
|
-
}, "strip", z.ZodTypeAny, {
|
|
8
|
-
storageType: ("local-storage" | "session-storage" | Storage) & ("local-storage" | "session-storage" | Storage | undefined);
|
|
9
|
-
storageKey: string;
|
|
10
|
-
}, {
|
|
11
|
-
storageType?: "local-storage" | "session-storage" | Storage | undefined;
|
|
12
|
-
storageKey?: string | undefined;
|
|
13
|
-
}>;
|
|
14
|
-
export type SessionKeySignerConfig = z.input<typeof SessionKeySignerSchema>;
|
|
15
|
-
export declare const SESSION_KEY_SIGNER_TYPE_PFX = "alchemy:session-key";
|
|
16
|
-
export declare class SessionKeySigner implements SmartAccountSigner<LocalAccountSigner<PrivateKeyAccount>> {
|
|
17
|
-
signerType: string;
|
|
18
|
-
inner: LocalAccountSigner<PrivateKeyAccount>;
|
|
19
|
-
private storageType;
|
|
20
|
-
private storageKey;
|
|
21
|
-
constructor(config_?: SessionKeySignerConfig);
|
|
22
|
-
getAddress: () => Promise<`0x${string}`>;
|
|
23
|
-
signMessage: (msg: SignableMessage) => Promise<`0x${string}`>;
|
|
24
|
-
signTypedData: <const TTypedData extends {
|
|
25
|
-
[x: string]: readonly import("viem").TypedDataParameter[];
|
|
26
|
-
[x: `string[${string}]`]: undefined;
|
|
27
|
-
[x: `function[${string}]`]: undefined;
|
|
28
|
-
[x: `address[${string}]`]: undefined;
|
|
29
|
-
[x: `uint64[${string}]`]: undefined;
|
|
30
|
-
[x: `bytes32[${string}]`]: undefined;
|
|
31
|
-
[x: `bytes[${string}]`]: undefined;
|
|
32
|
-
[x: `uint256[${string}]`]: undefined;
|
|
33
|
-
[x: `bytes4[${string}]`]: undefined;
|
|
34
|
-
[x: `bool[${string}]`]: undefined;
|
|
35
|
-
[x: `bytes1[${string}]`]: undefined;
|
|
36
|
-
[x: `uint32[${string}]`]: undefined;
|
|
37
|
-
[x: `bytes2[${string}]`]: undefined;
|
|
38
|
-
[x: `bytes3[${string}]`]: undefined;
|
|
39
|
-
[x: `bytes5[${string}]`]: undefined;
|
|
40
|
-
[x: `bytes6[${string}]`]: undefined;
|
|
41
|
-
[x: `bytes11[${string}]`]: undefined;
|
|
42
|
-
[x: `bytes7[${string}]`]: undefined;
|
|
43
|
-
[x: `bytes9[${string}]`]: undefined;
|
|
44
|
-
[x: `bytes27[${string}]`]: undefined;
|
|
45
|
-
[x: `bytes22[${string}]`]: undefined;
|
|
46
|
-
[x: `bytes8[${string}]`]: undefined;
|
|
47
|
-
[x: `bytes10[${string}]`]: undefined;
|
|
48
|
-
[x: `bytes12[${string}]`]: undefined;
|
|
49
|
-
[x: `bytes13[${string}]`]: undefined;
|
|
50
|
-
[x: `bytes14[${string}]`]: undefined;
|
|
51
|
-
[x: `bytes15[${string}]`]: undefined;
|
|
52
|
-
[x: `bytes16[${string}]`]: undefined;
|
|
53
|
-
[x: `bytes17[${string}]`]: undefined;
|
|
54
|
-
[x: `bytes18[${string}]`]: undefined;
|
|
55
|
-
[x: `bytes19[${string}]`]: undefined;
|
|
56
|
-
[x: `bytes20[${string}]`]: undefined;
|
|
57
|
-
[x: `bytes21[${string}]`]: undefined;
|
|
58
|
-
[x: `bytes23[${string}]`]: undefined;
|
|
59
|
-
[x: `bytes24[${string}]`]: undefined;
|
|
60
|
-
[x: `bytes25[${string}]`]: undefined;
|
|
61
|
-
[x: `bytes26[${string}]`]: undefined;
|
|
62
|
-
[x: `bytes28[${string}]`]: undefined;
|
|
63
|
-
[x: `bytes29[${string}]`]: undefined;
|
|
64
|
-
[x: `bytes30[${string}]`]: undefined;
|
|
65
|
-
[x: `bytes31[${string}]`]: undefined;
|
|
66
|
-
[x: `int[${string}]`]: undefined;
|
|
67
|
-
[x: `int8[${string}]`]: undefined;
|
|
68
|
-
[x: `int16[${string}]`]: undefined;
|
|
69
|
-
[x: `int24[${string}]`]: undefined;
|
|
70
|
-
[x: `int32[${string}]`]: undefined;
|
|
71
|
-
[x: `int40[${string}]`]: undefined;
|
|
72
|
-
[x: `int48[${string}]`]: undefined;
|
|
73
|
-
[x: `int56[${string}]`]: undefined;
|
|
74
|
-
[x: `int64[${string}]`]: undefined;
|
|
75
|
-
[x: `int72[${string}]`]: undefined;
|
|
76
|
-
[x: `int80[${string}]`]: undefined;
|
|
77
|
-
[x: `int88[${string}]`]: undefined;
|
|
78
|
-
[x: `int96[${string}]`]: undefined;
|
|
79
|
-
[x: `int104[${string}]`]: undefined;
|
|
80
|
-
[x: `int112[${string}]`]: undefined;
|
|
81
|
-
[x: `int120[${string}]`]: undefined;
|
|
82
|
-
[x: `int128[${string}]`]: undefined;
|
|
83
|
-
[x: `int136[${string}]`]: undefined;
|
|
84
|
-
[x: `int144[${string}]`]: undefined;
|
|
85
|
-
[x: `int152[${string}]`]: undefined;
|
|
86
|
-
[x: `int160[${string}]`]: undefined;
|
|
87
|
-
[x: `int168[${string}]`]: undefined;
|
|
88
|
-
[x: `int176[${string}]`]: undefined;
|
|
89
|
-
[x: `int184[${string}]`]: undefined;
|
|
90
|
-
[x: `int192[${string}]`]: undefined;
|
|
91
|
-
[x: `int200[${string}]`]: undefined;
|
|
92
|
-
[x: `int208[${string}]`]: undefined;
|
|
93
|
-
[x: `int216[${string}]`]: undefined;
|
|
94
|
-
[x: `int224[${string}]`]: undefined;
|
|
95
|
-
[x: `int232[${string}]`]: undefined;
|
|
96
|
-
[x: `int240[${string}]`]: undefined;
|
|
97
|
-
[x: `int248[${string}]`]: undefined;
|
|
98
|
-
[x: `int256[${string}]`]: undefined;
|
|
99
|
-
[x: `uint[${string}]`]: undefined;
|
|
100
|
-
[x: `uint8[${string}]`]: undefined;
|
|
101
|
-
[x: `uint16[${string}]`]: undefined;
|
|
102
|
-
[x: `uint24[${string}]`]: undefined;
|
|
103
|
-
[x: `uint40[${string}]`]: undefined;
|
|
104
|
-
[x: `uint48[${string}]`]: undefined;
|
|
105
|
-
[x: `uint56[${string}]`]: undefined;
|
|
106
|
-
[x: `uint72[${string}]`]: undefined;
|
|
107
|
-
[x: `uint80[${string}]`]: undefined;
|
|
108
|
-
[x: `uint88[${string}]`]: undefined;
|
|
109
|
-
[x: `uint96[${string}]`]: undefined;
|
|
110
|
-
[x: `uint104[${string}]`]: undefined;
|
|
111
|
-
[x: `uint112[${string}]`]: undefined;
|
|
112
|
-
[x: `uint120[${string}]`]: undefined;
|
|
113
|
-
[x: `uint128[${string}]`]: undefined;
|
|
114
|
-
[x: `uint136[${string}]`]: undefined;
|
|
115
|
-
[x: `uint144[${string}]`]: undefined;
|
|
116
|
-
[x: `uint152[${string}]`]: undefined;
|
|
117
|
-
[x: `uint160[${string}]`]: undefined;
|
|
118
|
-
[x: `uint168[${string}]`]: undefined;
|
|
119
|
-
[x: `uint176[${string}]`]: undefined;
|
|
120
|
-
[x: `uint184[${string}]`]: undefined;
|
|
121
|
-
[x: `uint192[${string}]`]: undefined;
|
|
122
|
-
[x: `uint200[${string}]`]: undefined;
|
|
123
|
-
[x: `uint208[${string}]`]: undefined;
|
|
124
|
-
[x: `uint216[${string}]`]: undefined;
|
|
125
|
-
[x: `uint224[${string}]`]: undefined;
|
|
126
|
-
[x: `uint232[${string}]`]: undefined;
|
|
127
|
-
[x: `uint240[${string}]`]: undefined;
|
|
128
|
-
[x: `uint248[${string}]`]: undefined;
|
|
129
|
-
string?: undefined;
|
|
130
|
-
address?: undefined;
|
|
131
|
-
uint64?: undefined;
|
|
132
|
-
bytes32?: undefined;
|
|
133
|
-
bytes?: undefined;
|
|
134
|
-
uint256?: undefined;
|
|
135
|
-
bytes4?: undefined;
|
|
136
|
-
bool?: undefined;
|
|
137
|
-
bytes1?: undefined;
|
|
138
|
-
uint32?: undefined;
|
|
139
|
-
bytes2?: undefined;
|
|
140
|
-
bytes3?: undefined;
|
|
141
|
-
bytes5?: undefined;
|
|
142
|
-
bytes6?: undefined;
|
|
143
|
-
bytes11?: undefined;
|
|
144
|
-
bytes7?: undefined;
|
|
145
|
-
bytes9?: undefined;
|
|
146
|
-
bytes27?: undefined;
|
|
147
|
-
bytes22?: undefined;
|
|
148
|
-
bytes8?: undefined;
|
|
149
|
-
bytes10?: undefined;
|
|
150
|
-
bytes12?: undefined;
|
|
151
|
-
bytes13?: undefined;
|
|
152
|
-
bytes14?: undefined;
|
|
153
|
-
bytes15?: undefined;
|
|
154
|
-
bytes16?: undefined;
|
|
155
|
-
bytes17?: undefined;
|
|
156
|
-
bytes18?: undefined;
|
|
157
|
-
bytes19?: undefined;
|
|
158
|
-
bytes20?: undefined;
|
|
159
|
-
bytes21?: undefined;
|
|
160
|
-
bytes23?: undefined;
|
|
161
|
-
bytes24?: undefined;
|
|
162
|
-
bytes25?: undefined;
|
|
163
|
-
bytes26?: undefined;
|
|
164
|
-
bytes28?: undefined;
|
|
165
|
-
bytes29?: undefined;
|
|
166
|
-
bytes30?: undefined;
|
|
167
|
-
bytes31?: undefined;
|
|
168
|
-
int8?: undefined;
|
|
169
|
-
int16?: undefined;
|
|
170
|
-
int24?: undefined;
|
|
171
|
-
int32?: undefined;
|
|
172
|
-
int40?: undefined;
|
|
173
|
-
int48?: undefined;
|
|
174
|
-
int56?: undefined;
|
|
175
|
-
int64?: undefined;
|
|
176
|
-
int72?: undefined;
|
|
177
|
-
int80?: undefined;
|
|
178
|
-
int88?: undefined;
|
|
179
|
-
int96?: undefined;
|
|
180
|
-
int104?: undefined;
|
|
181
|
-
int112?: undefined;
|
|
182
|
-
int120?: undefined;
|
|
183
|
-
int128?: undefined;
|
|
184
|
-
int136?: undefined;
|
|
185
|
-
int144?: undefined;
|
|
186
|
-
int152?: undefined;
|
|
187
|
-
int160?: undefined;
|
|
188
|
-
int168?: undefined;
|
|
189
|
-
int176?: undefined;
|
|
190
|
-
int184?: undefined;
|
|
191
|
-
int192?: undefined;
|
|
192
|
-
int200?: undefined;
|
|
193
|
-
int208?: undefined;
|
|
194
|
-
int216?: undefined;
|
|
195
|
-
int224?: undefined;
|
|
196
|
-
int232?: undefined;
|
|
197
|
-
int240?: undefined;
|
|
198
|
-
int248?: undefined;
|
|
199
|
-
int256?: undefined;
|
|
200
|
-
uint8?: undefined;
|
|
201
|
-
uint16?: undefined;
|
|
202
|
-
uint24?: undefined;
|
|
203
|
-
uint40?: undefined;
|
|
204
|
-
uint48?: undefined;
|
|
205
|
-
uint56?: undefined;
|
|
206
|
-
uint72?: undefined;
|
|
207
|
-
uint80?: undefined;
|
|
208
|
-
uint88?: undefined;
|
|
209
|
-
uint96?: undefined;
|
|
210
|
-
uint104?: undefined;
|
|
211
|
-
uint112?: undefined;
|
|
212
|
-
uint120?: undefined;
|
|
213
|
-
uint128?: undefined;
|
|
214
|
-
uint136?: undefined;
|
|
215
|
-
uint144?: undefined;
|
|
216
|
-
uint152?: undefined;
|
|
217
|
-
uint160?: undefined;
|
|
218
|
-
uint168?: undefined;
|
|
219
|
-
uint176?: undefined;
|
|
220
|
-
uint184?: undefined;
|
|
221
|
-
uint192?: undefined;
|
|
222
|
-
uint200?: undefined;
|
|
223
|
-
uint208?: undefined;
|
|
224
|
-
uint216?: undefined;
|
|
225
|
-
uint224?: undefined;
|
|
226
|
-
uint232?: undefined;
|
|
227
|
-
uint240?: undefined;
|
|
228
|
-
uint248?: undefined;
|
|
229
|
-
} | {
|
|
230
|
-
[key: string]: unknown;
|
|
231
|
-
}, TPrimaryType extends string = string>(params: TypedDataDefinition<TTypedData, TPrimaryType>) => Promise<`0x${string}`>;
|
|
232
|
-
generateNewKey: () => `0x${string}`;
|
|
233
|
-
}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SessionKeySigner = exports.SESSION_KEY_SIGNER_TYPE_PFX = exports.SessionKeySignerSchema = void 0;
|
|
4
|
-
const core_1 = require("@aa-sdk/core");
|
|
5
|
-
const accounts_1 = require("viem/accounts");
|
|
6
|
-
const zod_1 = require("zod");
|
|
7
|
-
exports.SessionKeySignerSchema = zod_1.z.object({
|
|
8
|
-
storageType: zod_1.z
|
|
9
|
-
.union([zod_1.z.literal("local-storage"), zod_1.z.literal("session-storage")])
|
|
10
|
-
.or(zod_1.z.custom())
|
|
11
|
-
.default("local-storage"),
|
|
12
|
-
storageKey: zod_1.z.string().default("session-key-signer:session-key"),
|
|
13
|
-
});
|
|
14
|
-
exports.SESSION_KEY_SIGNER_TYPE_PFX = "alchemy:session-key";
|
|
15
|
-
class SessionKeySigner {
|
|
16
|
-
constructor(config_ = {}) {
|
|
17
|
-
Object.defineProperty(this, "signerType", {
|
|
18
|
-
enumerable: true,
|
|
19
|
-
configurable: true,
|
|
20
|
-
writable: true,
|
|
21
|
-
value: void 0
|
|
22
|
-
});
|
|
23
|
-
Object.defineProperty(this, "inner", {
|
|
24
|
-
enumerable: true,
|
|
25
|
-
configurable: true,
|
|
26
|
-
writable: true,
|
|
27
|
-
value: void 0
|
|
28
|
-
});
|
|
29
|
-
Object.defineProperty(this, "storageType", {
|
|
30
|
-
enumerable: true,
|
|
31
|
-
configurable: true,
|
|
32
|
-
writable: true,
|
|
33
|
-
value: void 0
|
|
34
|
-
});
|
|
35
|
-
Object.defineProperty(this, "storageKey", {
|
|
36
|
-
enumerable: true,
|
|
37
|
-
configurable: true,
|
|
38
|
-
writable: true,
|
|
39
|
-
value: void 0
|
|
40
|
-
});
|
|
41
|
-
Object.defineProperty(this, "getAddress", {
|
|
42
|
-
enumerable: true,
|
|
43
|
-
configurable: true,
|
|
44
|
-
writable: true,
|
|
45
|
-
value: async () => {
|
|
46
|
-
return this.inner.getAddress();
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
Object.defineProperty(this, "signMessage", {
|
|
50
|
-
enumerable: true,
|
|
51
|
-
configurable: true,
|
|
52
|
-
writable: true,
|
|
53
|
-
value: async (msg) => {
|
|
54
|
-
return this.inner.signMessage(msg);
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
Object.defineProperty(this, "signTypedData", {
|
|
58
|
-
enumerable: true,
|
|
59
|
-
configurable: true,
|
|
60
|
-
writable: true,
|
|
61
|
-
value: async (params) => {
|
|
62
|
-
return this.inner.signTypedData(params);
|
|
63
|
-
}
|
|
64
|
-
});
|
|
65
|
-
Object.defineProperty(this, "generateNewKey", {
|
|
66
|
-
enumerable: true,
|
|
67
|
-
configurable: true,
|
|
68
|
-
writable: true,
|
|
69
|
-
value: () => {
|
|
70
|
-
const storage = this.storageType === "session-storage" ? sessionStorage : localStorage;
|
|
71
|
-
const newKey = (0, accounts_1.generatePrivateKey)();
|
|
72
|
-
storage.setItem(this.storageKey, newKey);
|
|
73
|
-
this.inner = core_1.LocalAccountSigner.privateKeyToAccountSigner(newKey);
|
|
74
|
-
return this.inner.inner.address;
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
const config = exports.SessionKeySignerSchema.parse(config_);
|
|
78
|
-
this.signerType = `${exports.SESSION_KEY_SIGNER_TYPE_PFX}`;
|
|
79
|
-
this.storageKey = config.storageKey;
|
|
80
|
-
this.storageType = config.storageType;
|
|
81
|
-
const sessionKey = (() => {
|
|
82
|
-
const storage = typeof this.storageType !== "string"
|
|
83
|
-
? this.storageType
|
|
84
|
-
: this.storageType === "session-storage"
|
|
85
|
-
? sessionStorage
|
|
86
|
-
: localStorage;
|
|
87
|
-
const key = storage.getItem(this.storageKey);
|
|
88
|
-
if (key) {
|
|
89
|
-
return key;
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
const newKey = (0, accounts_1.generatePrivateKey)();
|
|
93
|
-
storage.setItem(this.storageKey, newKey);
|
|
94
|
-
return newKey;
|
|
95
|
-
}
|
|
96
|
-
})();
|
|
97
|
-
this.inner = core_1.LocalAccountSigner.privateKeyToAccountSigner(sessionKey);
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
exports.SessionKeySigner = SessionKeySigner;
|
|
101
|
-
//# sourceMappingURL=signer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/signer.ts"],"names":[],"mappings":";;;AAAA,uCAA2E;AAQ3E,4CAAmD;AACnD,6BAAwB;AAEX,QAAA,sBAAsB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC7C,WAAW,EAAE,OAAC;SACX,KAAK,CAAC,CAAC,OAAC,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,OAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC;SACjE,EAAE,CAAC,OAAC,CAAC,MAAM,EAAW,CAAC;SACvB,OAAO,CAAC,eAAe,CAAC;IAC3B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,gCAAgC,CAAC;CACjE,CAAC,CAAC;AAGU,QAAA,2BAA2B,GAAG,qBAAqB,CAAC;AAOjE,MAAa,gBAAgB;IAoB3B,YAAY,UAAkC,EAAE;QAjBhD;;;;;WAAmB;QACnB;;;;;WAA6C;QACrC;;;;;WAA2D;QAC3D;;;;;WAAmB;QAsD3B;;;;mBAA2C,KAAK,IAAI,EAAE;gBACpD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YACjC,CAAC;WAAC;QAgBF;;;;mBAAgE,KAAK,EACnE,GAAG,EACH,EAAE;gBACF,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACrC,CAAC;WAAC;QAyBF;;;;mBAAgB,KAAK,EAInB,MAAqD,EACrD,EAAE;gBACF,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC1C,CAAC;WAAC;QAeF;;;;mBAAiB,GAAG,EAAE;gBACpB,MAAM,OAAO,GACX,IAAI,CAAC,WAAW,KAAK,iBAAiB,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC;gBAEzE,MAAM,MAAM,GAAG,IAAA,6BAAkB,GAAE,CAAC;gBACpC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBACzC,IAAI,CAAC,KAAK,GAAG,yBAAkB,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;gBAElE,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC;YAClC,CAAC;WAAC;QArHA,MAAM,MAAM,GAAG,8BAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,UAAU,GAAG,GAAG,mCAA2B,EAAE,CAAC;QACnD,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QACpC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QAEtC,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE;YACvB,MAAM,OAAO,GACX,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;gBAClC,CAAC,CAAC,IAAI,CAAC,WAAW;gBAClB,CAAC,CAAC,IAAI,CAAC,WAAW,KAAK,iBAAiB;oBACxC,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,YAAY,CAAC;YACnB,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE7C,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,GAAG,CAAC;YACb,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,IAAA,6BAAkB,GAAE,CAAC;gBACpC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBACzC,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,EAAS,CAAC;QAEZ,IAAI,CAAC,KAAK,GAAG,yBAAkB,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAC;IACxE,CAAC;CA8FF;AA3ID,4CA2IC","sourcesContent":["import { LocalAccountSigner, type SmartAccountSigner } from \"@aa-sdk/core\";\nimport type {\n Hex,\n PrivateKeyAccount,\n SignableMessage,\n TypedData,\n TypedDataDefinition,\n} from \"viem\";\nimport { generatePrivateKey } from \"viem/accounts\";\nimport { z } from \"zod\";\n\nexport const SessionKeySignerSchema = z.object({\n storageType: z\n .union([z.literal(\"local-storage\"), z.literal(\"session-storage\")])\n .or(z.custom<Storage>())\n .default(\"local-storage\"),\n storageKey: z.string().default(\"session-key-signer:session-key\"),\n});\n\nexport type SessionKeySignerConfig = z.input<typeof SessionKeySignerSchema>;\nexport const SESSION_KEY_SIGNER_TYPE_PFX = \"alchemy:session-key\";\n\n/**\n * A simple session key signer that uses localStorage or sessionStorage to store\n * a private key. If the key is not found, it will generate a new one and store\n * it in the storage.\n */\nexport class SessionKeySigner\n implements SmartAccountSigner<LocalAccountSigner<PrivateKeyAccount>>\n{\n signerType: string;\n inner: LocalAccountSigner<PrivateKeyAccount>;\n private storageType: \"local-storage\" | \"session-storage\" | Storage;\n private storageKey: string;\n\n /**\n * Initializes a new instance of a session key signer with the provided configuration. This will set the `signerType`, `storageKey`, and `storageType`. It will also manage the session key, either fetching it from storage or generating a new one if it doesn't exist.\n *\n * @example\n * ```ts\n * import { SessionKeySigner } from \"@account-kit/smart-contracts\";\n *\n * const signer = new SessionKeySigner();\n * ```\n *\n * @param {SessionKeySignerConfig} config_ the configuration for initializing the session key signer\n */\n constructor(config_: SessionKeySignerConfig = {}) {\n const config = SessionKeySignerSchema.parse(config_);\n this.signerType = `${SESSION_KEY_SIGNER_TYPE_PFX}`;\n this.storageKey = config.storageKey;\n this.storageType = config.storageType;\n\n const sessionKey = (() => {\n const storage =\n typeof this.storageType !== \"string\"\n ? this.storageType\n : this.storageType === \"session-storage\"\n ? sessionStorage\n : localStorage;\n const key = storage.getItem(this.storageKey);\n\n if (key) {\n return key;\n } else {\n const newKey = generatePrivateKey();\n storage.setItem(this.storageKey, newKey);\n return newKey;\n }\n })() as Hex;\n\n this.inner = LocalAccountSigner.privateKeyToAccountSigner(sessionKey);\n }\n\n /**\n * An async function that retrieves the address using the inner object's `getAddress` method.\n *\n * @example\n * ```ts\n * import { SessionKeySigner } from \"@account-kit/smart-contracts\";\n *\n * const signer = new SessionKeySigner();\n * const sessionKeyAddress = await signer.getAddress();\n * ```\n *\n * @returns {Promise<string>} A promise that resolves to the address as a string\n */\n getAddress: () => Promise<`0x${string}`> = async () => {\n return this.inner.getAddress();\n };\n\n /**\n * Signs a message using the inner signer.\n *\n * @example\n * ```ts\n * import { SessionKeySigner } from \"@account-kit/smart-contracts\";\n *\n * const signer = new SessionKeySigner();\n * const sessionKeyAddress = await signer.signMessage(\"hello\");\n * ```\n *\n * @param {SignableMessage} msg The message to sign\n * @returns {Promise<Hex>} A promise that resolves to the signed message\n */\n signMessage: (msg: SignableMessage) => Promise<`0x${string}`> = async (\n msg\n ) => {\n return this.inner.signMessage(msg);\n };\n\n /**\n * Signs the provided typed data using the inner signer.\n *\n * @example\n * ```ts\n * import { SessionKeySigner } from \"@account-kit/smart-contracts\";\n *\n * const signer = new SessionKeySigner();\n * console.log(await signer.signTypedData({\n * types: {\n * \"Message\": [{ name: \"content\", type: \"string\" }]\n * },\n * primaryType: \"Message\",\n * message: { content: \"Hello\" },\n * }));\n * ```\n *\n * @template TTypedData - The typed data type, which extends `TypedData` or a record of unknown keys to unknown values.\n * @template TPrimaryType - The primary type of the typed data.\n *\n * @param {TypedDataDefinition<TTypedData, TPrimaryType>} params The parameters containing the typed data definition and primary type.\n * @returns {Promise<string>} A promise that resolves to the signed typed data as a string.\n */\n signTypedData = async <\n const TTypedData extends TypedData | { [key: string]: unknown },\n TPrimaryType extends string = string\n >(\n params: TypedDataDefinition<TTypedData, TPrimaryType>\n ) => {\n return this.inner.signTypedData(params);\n };\n\n /**\n * Generates a new private key and stores it in the storage.\n *\n * @example\n * ```ts\n * import { SessionKeySigner } from \"@account-kit/smart-contracts\";\n *\n * const signer = new SessionKeySigner();\n * const newSessionKey = signer.generateNewKey();\n * ```\n *\n * @returns {Address} The public address of the new key.\n */\n generateNewKey = () => {\n const storage =\n this.storageType === \"session-storage\" ? sessionStorage : localStorage;\n\n const newKey = generatePrivateKey();\n storage.setItem(this.storageKey, newKey);\n this.inner = LocalAccountSigner.privateKeyToAccountSigner(newKey);\n\n return this.inner.inner.address;\n };\n}\n"]}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { GetAccountParameter, SmartContractAccount } from "@aa-sdk/core";
|
|
2
|
-
import type { Address, Chain, Client, Transport } from "viem";
|
|
3
|
-
type BuildSessionKeysToRemoveStructParams<TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined> = {
|
|
4
|
-
keys: ReadonlyArray<Address>;
|
|
5
|
-
pluginAddress?: Address;
|
|
6
|
-
} & GetAccountParameter<TAccount>;
|
|
7
|
-
export declare function buildSessionKeysToRemoveStruct<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>(client: Client<TTransport, TChain, TAccount>, args: BuildSessionKeysToRemoveStructParams): Promise<{
|
|
8
|
-
sessionKey: Address;
|
|
9
|
-
predecessor: Address;
|
|
10
|
-
}[]>;
|
|
11
|
-
export {};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.buildSessionKeysToRemoveStruct = void 0;
|
|
4
|
-
const core_1 = require("@aa-sdk/core");
|
|
5
|
-
const plugin_js_1 = require("./plugin.js");
|
|
6
|
-
async function buildSessionKeysToRemoveStruct(client, args) {
|
|
7
|
-
const { keys, pluginAddress, account = client.account } = args;
|
|
8
|
-
if (!account)
|
|
9
|
-
throw new core_1.AccountNotFoundError();
|
|
10
|
-
const contract = plugin_js_1.SessionKeyPlugin.getContract(client, pluginAddress);
|
|
11
|
-
return (await Promise.all(keys.map(async (key) => {
|
|
12
|
-
return [
|
|
13
|
-
key,
|
|
14
|
-
await contract.read.findPredecessor([account.address, key]),
|
|
15
|
-
];
|
|
16
|
-
}))).map(([key, predecessor]) => ({
|
|
17
|
-
sessionKey: key,
|
|
18
|
-
predecessor,
|
|
19
|
-
}));
|
|
20
|
-
}
|
|
21
|
-
exports.buildSessionKeysToRemoveStruct = buildSessionKeysToRemoveStruct;
|
|
22
|
-
//# sourceMappingURL=utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../src/msca/plugins/session-key/utils.ts"],"names":[],"mappings":";;;AACA,uCAAoD;AAEpD,2CAA+C;AA6BxC,KAAK,UAAU,8BAA8B,CAOlD,MAA4C,EAC5C,IAA0C;IAE1C,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;IAE/D,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,2BAAoB,EAAE,CAAC;IAE/C,MAAM,QAAQ,GAAG,4BAAgB,CAAC,WAAW,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrE,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACrB,OAAO;YACL,GAAG;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;SAC5D,CAAC;IACJ,CAAC,CAAC,CACH,CACF,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7B,UAAU,EAAE,GAAG;QACf,WAAW;KACZ,CAAC,CAAC,CAAC;AACN,CAAC;AA5BD,wEA4BC","sourcesContent":["import type { GetAccountParameter, SmartContractAccount } from \"@aa-sdk/core\";\nimport { AccountNotFoundError } from \"@aa-sdk/core\";\nimport type { Address, Chain, Client, Transport } from \"viem\";\nimport { SessionKeyPlugin } from \"./plugin.js\";\n\ntype BuildSessionKeysToRemoveStructParams<\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined\n> = {\n keys: ReadonlyArray<Address>;\n pluginAddress?: Address;\n} & GetAccountParameter<TAccount>;\n\n/**\n * Finds predecessors for each provided key and returns them in the struct `ISessionKeyPlugin.SessionKeyToRemove[]`.\n *\n * @example\n * ```ts\n * import { buildSessionKeysToRemoveStruct } from \"@account-kit/smart-contracts\";\n *\n * const client = createSmartAccountClient(...);\n *\n * const keysToRemove = await buildSessionKeysToRemoveStruct(client, {\n * keys: [\"0x...\", \"0x...\"],\n * });\n * ```\n *\n * @param {Client<TTransport, TChain, TAccount>} client The client instance used to interact with the smart account\n * @param {BuildSessionKeysToRemoveStructParams<TAccount>} args Arguments to configure the session key removal process\n * @returns {Promise<{ sessionKey: Address; predecessor: Address }[]>} A promise that resolves to an array of objects each containing a session key and its predecessor\n */\nexport async function buildSessionKeysToRemoveStruct<\n TTransport extends Transport = Transport,\n TChain extends Chain | undefined = Chain | undefined,\n TAccount extends SmartContractAccount | undefined =\n | SmartContractAccount\n | undefined\n>(\n client: Client<TTransport, TChain, TAccount>,\n args: BuildSessionKeysToRemoveStructParams\n): Promise<{ sessionKey: Address; predecessor: Address }[]> {\n const { keys, pluginAddress, account = client.account } = args;\n\n if (!account) throw new AccountNotFoundError();\n\n const contract = SessionKeyPlugin.getContract(client, pluginAddress);\n return (\n await Promise.all(\n keys.map(async (key) => {\n return [\n key,\n await contract.read.findPredecessor([account.address, key]),\n ];\n })\n )\n ).map(([key, predecessor]) => ({\n sessionKey: key,\n predecessor,\n }));\n}\n"]}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { type Abi, type Address, type Client, type GetContractReturnType, type PublicClient } from "viem";
|
|
2
|
-
export type GetPluginAddressParameter = {
|
|
3
|
-
pluginAddress?: Address;
|
|
4
|
-
};
|
|
5
|
-
export type Plugin<TAbi extends Abi = Abi> = {
|
|
6
|
-
meta: {
|
|
7
|
-
name: string;
|
|
8
|
-
version: string;
|
|
9
|
-
addresses: Record<number, Address>;
|
|
10
|
-
};
|
|
11
|
-
getContract: <C extends Client>(client: C, address?: Address) => GetContractReturnType<TAbi, PublicClient, Address>;
|
|
12
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/msca/plugins/types.ts"],"names":[],"mappings":"","sourcesContent":["import {\n type Abi,\n type Address,\n type Client,\n type GetContractReturnType,\n type PublicClient,\n} from \"viem\";\n\nexport type GetPluginAddressParameter = { pluginAddress?: Address };\n\nexport type Plugin<TAbi extends Abi = Abi> = {\n meta: {\n name: string;\n version: string;\n addresses: Record<number, Address>;\n };\n getContract: <C extends Client>(\n client: C,\n address?: Address\n ) => GetContractReturnType<TAbi, PublicClient, Address>;\n};\n"]}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { type GetAccountParameter, type SmartAccountClient, type SmartAccountSigner, type SmartContractAccount, type SmartContractAccountWithSigner, type UpgradeToData } from "@aa-sdk/core";
|
|
2
|
-
import type { Address, Chain, Transport } from "viem";
|
|
3
|
-
import { type MultiOwnerModularAccount } from "./account/multiOwnerAccount.js";
|
|
4
|
-
export declare const getDefaultMultisigModularAccountFactoryAddress: (chain: Chain) => Address;
|
|
5
|
-
export declare const getDefaultMultiOwnerModularAccountFactoryAddress: (chain: Chain) => Address;
|
|
6
|
-
export type GetMSCAUpgradeToData<TSigner extends SmartAccountSigner = SmartAccountSigner, TAccount extends SmartContractAccountWithSigner<string, TSigner> | undefined = SmartContractAccountWithSigner<string, TSigner> | undefined> = {
|
|
7
|
-
multiOwnerPluginAddress?: Address;
|
|
8
|
-
} & GetAccountParameter<TAccount>;
|
|
9
|
-
export declare function getMSCAUpgradeToData<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TSigner extends SmartAccountSigner = SmartAccountSigner, TAccount extends SmartContractAccountWithSigner<string, TSigner> | undefined = SmartContractAccountWithSigner<string, TSigner> | undefined>(client: SmartAccountClient<TTransport, TChain, TAccount>, args: GetMSCAUpgradeToData<TSigner, TAccount>): Promise<UpgradeToData & {
|
|
10
|
-
createMAAccount: () => Promise<MultiOwnerModularAccount<TSigner>>;
|
|
11
|
-
}>;
|
|
12
|
-
export type GetMAInitializationDataParams<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined> = {
|
|
13
|
-
multiOwnerPluginAddress?: Address;
|
|
14
|
-
client: SmartAccountClient<TTransport, TChain, TAccount>;
|
|
15
|
-
signerAddress: Address | Address[];
|
|
16
|
-
};
|
|
17
|
-
export declare function getMAInitializationData<TTransport extends Transport = Transport, TChain extends Chain | undefined = Chain | undefined, TAccount extends SmartContractAccount | undefined = SmartContractAccount | undefined>({ client, multiOwnerPluginAddress, signerAddress, }: GetMAInitializationDataParams<TTransport, TChain, TAccount>): Promise<UpgradeToData>;
|