@rhinestone/sdk 2.0.0-beta.44 → 2.0.0-beta.45
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/src/accounts/adapter.d.ts +31 -0
- package/dist/src/accounts/adapter.d.ts.map +1 -0
- package/dist/src/accounts/adapters/eoa.d.ts +4 -0
- package/dist/src/accounts/adapters/eoa.d.ts.map +1 -0
- package/dist/src/accounts/adapters/eoa.js +45 -0
- package/dist/src/accounts/adapters/hca.d.ts +5 -0
- package/dist/src/accounts/adapters/hca.d.ts.map +1 -0
- package/dist/src/accounts/adapters/hca.js +118 -0
- package/dist/src/accounts/adapters/kernel.d.ts +9 -0
- package/dist/src/accounts/adapters/kernel.d.ts.map +1 -0
- package/dist/src/accounts/adapters/kernel.js +159 -0
- package/dist/src/accounts/adapters/nexus.d.ts +17 -0
- package/dist/src/accounts/adapters/nexus.d.ts.map +1 -0
- package/dist/src/accounts/adapters/nexus.js +227 -0
- package/dist/src/accounts/adapters/safe.d.ts +6 -0
- package/dist/src/accounts/adapters/safe.d.ts.map +1 -0
- package/dist/src/accounts/adapters/safe.js +194 -0
- package/dist/src/accounts/adapters/shared.d.ts +9 -0
- package/dist/src/accounts/adapters/shared.d.ts.map +1 -0
- package/dist/src/accounts/adapters/shared.js +62 -0
- package/dist/src/accounts/adapters/startale.d.ts +14 -0
- package/dist/src/accounts/adapters/startale.d.ts.map +1 -0
- package/dist/src/accounts/adapters/startale.js +165 -0
- package/dist/src/accounts/construction.d.ts +25 -0
- package/dist/src/accounts/construction.d.ts.map +1 -0
- package/dist/src/accounts/construction.js +34 -0
- package/dist/src/accounts/deployment.d.ts +12 -0
- package/dist/src/accounts/deployment.d.ts.map +1 -0
- package/dist/src/accounts/deployment.js +33 -0
- package/dist/src/accounts/erc7579-calls.d.ts +4 -0
- package/dist/src/accounts/erc7579-calls.d.ts.map +1 -0
- package/dist/src/accounts/erc7579-calls.js +57 -0
- package/dist/src/accounts/error.d.ts +1 -1
- package/dist/src/accounts/error.d.ts.map +1 -1
- package/dist/src/accounts/legacy.d.ts +14 -0
- package/dist/src/accounts/legacy.d.ts.map +1 -0
- package/dist/src/accounts/legacy.js +40 -0
- package/dist/src/accounts/registry.d.ts +4 -0
- package/dist/src/accounts/registry.d.ts.map +1 -0
- package/dist/src/accounts/registry.js +22 -0
- package/dist/src/accounts/types.d.ts +131 -0
- package/dist/src/accounts/types.d.ts.map +1 -0
- package/dist/src/accounts/wallet-account.d.ts +3 -0
- package/dist/src/accounts/wallet-account.d.ts.map +1 -0
- package/dist/src/accounts/wallet-account.js +12 -0
- package/dist/src/actions/deploy.d.ts +4 -0
- package/dist/src/actions/deploy.d.ts.map +1 -0
- package/dist/src/actions/deploy.js +8 -0
- package/dist/src/actions/ecdsa.d.ts +1 -1
- package/dist/src/actions/ecdsa.d.ts.map +1 -1
- package/dist/src/actions/ecdsa.js +8 -8
- package/dist/src/actions/index.d.ts +2 -16
- package/dist/src/actions/index.d.ts.map +1 -1
- package/dist/src/actions/index.js +3 -49
- package/dist/src/actions/mfa.d.ts +1 -1
- package/dist/src/actions/mfa.d.ts.map +1 -1
- package/dist/src/actions/mfa.js +30 -10
- package/dist/src/actions/modules.d.ts +4 -0
- package/dist/src/actions/modules.d.ts.map +1 -0
- package/dist/src/actions/modules.js +22 -0
- package/dist/src/actions/passkeys.d.ts +2 -2
- package/dist/src/actions/passkeys.d.ts.map +1 -1
- package/dist/src/actions/passkeys.js +19 -14
- package/dist/src/actions/runtime.d.ts +12 -0
- package/dist/src/actions/runtime.d.ts.map +1 -0
- package/dist/src/actions/runtime.js +161 -0
- package/dist/src/actions/smart-sessions.d.ts +2 -2
- package/dist/src/actions/smart-sessions.d.ts.map +1 -1
- package/dist/src/actions/smart-sessions.js +35 -12
- package/dist/src/api/account.d.ts +265 -0
- package/dist/src/api/account.d.ts.map +1 -0
- package/dist/src/api/account.js +635 -0
- package/dist/src/api/accounts.d.ts +12 -0
- package/dist/src/api/accounts.d.ts.map +1 -0
- package/dist/src/api/accounts.js +17 -0
- package/dist/src/api/compose-types.d.ts +147 -0
- package/dist/src/api/compose-types.d.ts.map +1 -0
- package/dist/src/api/compose.d.ts +6 -0
- package/dist/src/api/compose.d.ts.map +1 -0
- package/dist/src/api/compose.js +766 -0
- package/dist/src/api/direct-signing.d.ts +27 -0
- package/dist/src/api/direct-signing.d.ts.map +1 -0
- package/dist/src/api/direct-signing.js +191 -0
- package/dist/src/api/project-mappers.d.ts +7 -0
- package/dist/src/api/project-mappers.d.ts.map +1 -0
- package/dist/src/api/project-mappers.js +23 -0
- package/dist/src/api/queries/app-fees.d.ts +4 -0
- package/dist/src/api/queries/app-fees.d.ts.map +1 -0
- package/dist/src/api/queries/app-fees.js +3 -0
- package/dist/src/api/queries/portfolio.d.ts +9 -0
- package/dist/src/api/queries/portfolio.d.ts.map +1 -0
- package/dist/src/api/queries/portfolio.js +28 -0
- package/dist/src/api/queries/session.d.ts +8 -0
- package/dist/src/api/queries/session.d.ts.map +1 -0
- package/dist/src/api/queries/session.js +15 -0
- package/dist/src/api/sdk.d.ts +80 -0
- package/dist/src/api/sdk.d.ts.map +1 -0
- package/dist/src/api/sdk.js +103 -0
- package/dist/src/api/signer-selection.d.ts +7 -0
- package/dist/src/api/signer-selection.d.ts.map +1 -0
- package/dist/src/api/signer-selection.js +109 -0
- package/dist/src/calls/normalize.d.ts +9 -0
- package/dist/src/calls/normalize.d.ts.map +1 -0
- package/dist/src/calls/normalize.js +17 -0
- package/dist/src/calls/resolve.d.ts +3 -0
- package/dist/src/calls/resolve.d.ts.map +1 -0
- package/dist/src/calls/resolve.js +15 -0
- package/dist/src/calls/types.d.ts +25 -0
- package/dist/src/calls/types.d.ts.map +1 -0
- package/dist/src/calls/types.js +1 -0
- package/dist/src/chains/caip2.d.ts +10 -0
- package/dist/src/chains/caip2.d.ts.map +1 -0
- package/dist/src/chains/caip2.js +85 -0
- package/dist/src/chains/catalog.d.ts +5 -0
- package/dist/src/chains/catalog.d.ts.map +1 -0
- package/dist/src/chains/catalog.js +41 -0
- package/dist/src/chains/errors.d.ts +15 -0
- package/dist/src/chains/errors.d.ts.map +1 -0
- package/dist/src/chains/errors.js +21 -0
- package/dist/src/{orchestrator/destinations.d.ts → chains/non-evm.d.ts} +7 -5
- package/dist/src/chains/non-evm.d.ts.map +1 -0
- package/dist/src/chains/non-evm.js +30 -0
- package/dist/src/chains/tokens.d.ts +4 -0
- package/dist/src/chains/tokens.d.ts.map +1 -0
- package/dist/src/chains/tokens.js +22 -0
- package/dist/src/chains/types.d.ts +25 -0
- package/dist/src/chains/types.d.ts.map +1 -0
- package/dist/src/chains/types.js +1 -0
- package/dist/src/clients/bundler/client.d.ts +10 -0
- package/dist/src/clients/bundler/client.d.ts.map +1 -0
- package/dist/src/clients/bundler/client.js +85 -0
- package/dist/src/clients/bundler/endpoints.d.ts +3 -0
- package/dist/src/clients/bundler/endpoints.d.ts.map +1 -0
- package/dist/src/clients/bundler/endpoints.js +18 -0
- package/dist/src/clients/bundler/port.d.ts +22 -0
- package/dist/src/clients/bundler/port.d.ts.map +1 -0
- package/dist/src/clients/bundler/port.js +1 -0
- package/dist/src/clients/json-rpc.d.ts +20 -0
- package/dist/src/clients/json-rpc.d.ts.map +1 -0
- package/dist/src/clients/json-rpc.js +56 -0
- package/dist/src/clients/orchestrator/auth.d.ts +7 -0
- package/dist/src/clients/orchestrator/auth.d.ts.map +1 -0
- package/dist/src/clients/orchestrator/auth.js +27 -0
- package/dist/src/{orchestrator → clients/orchestrator}/chain-catalog.d.ts +5 -3
- package/dist/src/clients/orchestrator/chain-catalog.d.ts.map +1 -0
- package/dist/src/{orchestrator → clients/orchestrator}/chain-catalog.js +24 -3
- package/dist/src/clients/orchestrator/client.d.ts +13 -0
- package/dist/src/clients/orchestrator/client.d.ts.map +1 -0
- package/dist/src/clients/orchestrator/client.js +97 -0
- package/dist/src/{orchestrator/error.d.ts → clients/orchestrator/errors.d.ts} +2 -16
- package/dist/src/clients/orchestrator/errors.d.ts.map +1 -0
- package/dist/src/{orchestrator/error.js → clients/orchestrator/errors.js} +1 -22
- package/dist/src/clients/orchestrator/fetch.d.ts +7 -0
- package/dist/src/clients/orchestrator/fetch.d.ts.map +1 -0
- package/dist/src/clients/orchestrator/fetch.js +37 -0
- package/dist/src/clients/orchestrator/mappers.d.ts +9 -0
- package/dist/src/clients/orchestrator/mappers.d.ts.map +1 -0
- package/dist/src/clients/orchestrator/mappers.js +198 -0
- package/dist/src/clients/orchestrator/port.d.ts +26 -0
- package/dist/src/clients/orchestrator/port.d.ts.map +1 -0
- package/dist/src/clients/orchestrator/port.js +1 -0
- package/dist/src/{orchestrator/types.d.ts → clients/orchestrator/public.d.ts} +4 -4
- package/dist/src/clients/orchestrator/public.d.ts.map +1 -0
- package/dist/src/{orchestrator/types.js → clients/orchestrator/public.js} +3 -0
- package/dist/src/clients/orchestrator/types.d.ts +140 -0
- package/dist/src/clients/orchestrator/types.d.ts.map +1 -0
- package/dist/src/clients/orchestrator/types.js +1 -0
- package/dist/src/clients/orchestrator/wire.d.ts +19 -0
- package/dist/src/clients/orchestrator/wire.d.ts.map +1 -0
- package/dist/src/{orchestrator → clients/orchestrator}/wire.gen.d.ts +498 -498
- package/dist/src/clients/orchestrator/wire.gen.d.ts.map +1 -0
- package/dist/src/clients/orchestrator/wire.gen.js +1 -0
- package/dist/src/clients/orchestrator/wire.js +1 -0
- package/dist/src/clients/paymaster/client.d.ts +8 -0
- package/dist/src/clients/paymaster/client.d.ts.map +1 -0
- package/dist/src/clients/paymaster/client.js +38 -0
- package/dist/src/clients/paymaster/endpoints.d.ts +3 -0
- package/dist/src/clients/paymaster/endpoints.d.ts.map +1 -0
- package/dist/src/clients/paymaster/endpoints.js +16 -0
- package/dist/src/clients/paymaster/port.d.ts +17 -0
- package/dist/src/clients/paymaster/port.d.ts.map +1 -0
- package/dist/src/clients/paymaster/port.js +1 -0
- package/dist/src/clients/rpc/client.d.ts +6 -0
- package/dist/src/clients/rpc/client.d.ts.map +1 -0
- package/dist/src/clients/rpc/client.js +66 -0
- package/dist/src/clients/rpc/compatibility.d.ts +12 -0
- package/dist/src/clients/rpc/compatibility.d.ts.map +1 -0
- package/dist/src/clients/rpc/compatibility.js +16 -0
- package/dist/src/clients/rpc/port.d.ts +13 -0
- package/dist/src/clients/rpc/port.d.ts.map +1 -0
- package/dist/src/clients/rpc/port.js +1 -0
- package/dist/src/clients/rpc/providers.d.ts +3 -0
- package/dist/src/clients/rpc/providers.d.ts.map +1 -0
- package/dist/src/clients/rpc/providers.js +8 -0
- package/dist/src/clients/rpc/transport.d.ts +4 -0
- package/dist/src/clients/rpc/transport.d.ts.map +1 -0
- package/dist/src/clients/rpc/transport.js +5 -0
- package/dist/src/clients/rpc/types.d.ts +23 -0
- package/dist/src/clients/rpc/types.d.ts.map +1 -0
- package/dist/src/clients/rpc/types.js +1 -0
- package/dist/src/config/account-runtime.d.ts +7 -0
- package/dist/src/config/account-runtime.d.ts.map +1 -0
- package/dist/src/config/account-runtime.js +36 -0
- package/dist/src/{types.d.ts → config/account.d.ts} +23 -14
- package/dist/src/config/account.d.ts.map +1 -0
- package/dist/src/config/account.js +10 -0
- package/dist/src/config/defaults.d.ts +14 -0
- package/dist/src/config/defaults.d.ts.map +1 -0
- package/dist/src/config/defaults.js +26 -0
- package/dist/src/config/input.d.ts +54 -0
- package/dist/src/config/input.d.ts.map +1 -0
- package/dist/src/config/input.js +1 -0
- package/dist/src/config/legacy.d.ts +22 -0
- package/dist/src/config/legacy.d.ts.map +1 -0
- package/dist/src/config/legacy.js +23 -0
- package/dist/src/config/resolve.d.ts +13 -0
- package/dist/src/config/resolve.d.ts.map +1 -0
- package/dist/src/config/resolve.js +174 -0
- package/dist/src/config/resolved.d.ts +77 -0
- package/dist/src/config/resolved.d.ts.map +1 -0
- package/dist/src/config/resolved.js +1 -0
- package/dist/src/config/validate.d.ts +3 -0
- package/dist/src/config/validate.d.ts.map +1 -0
- package/dist/src/config/validate.js +6 -0
- package/dist/src/{execution/error.d.ts → errors/execution.d.ts} +2 -2
- package/dist/src/errors/execution.d.ts.map +1 -0
- package/dist/src/{execution/error.js → errors/execution.js} +1 -1
- package/dist/src/errors/index.d.ts +4 -4
- package/dist/src/errors/index.d.ts.map +1 -1
- package/dist/src/errors/index.js +4 -3
- package/dist/src/index.d.ts +13 -324
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +6 -286
- package/dist/src/modules/erc7579-abi.d.ts +4 -0
- package/dist/src/modules/erc7579-abi.d.ts.map +1 -0
- package/dist/src/modules/erc7579-abi.js +12 -0
- package/dist/src/modules/intent-executor.d.ts +6 -0
- package/dist/src/modules/intent-executor.d.ts.map +1 -0
- package/dist/src/modules/intent-executor.js +13 -0
- package/dist/src/modules/legacy-core.d.ts +29 -0
- package/dist/src/modules/legacy-core.d.ts.map +1 -0
- package/dist/src/modules/legacy-core.js +80 -0
- package/dist/src/modules/normalize.d.ts +4 -0
- package/dist/src/modules/normalize.d.ts.map +1 -0
- package/dist/src/modules/normalize.js +15 -0
- package/dist/src/modules/plan.d.ts +16 -0
- package/dist/src/modules/plan.d.ts.map +1 -0
- package/dist/src/modules/plan.js +51 -0
- package/dist/src/modules/read-core.d.ts +39 -0
- package/dist/src/modules/read-core.d.ts.map +1 -0
- package/dist/src/modules/read-core.js +149 -0
- package/dist/src/modules/types.d.ts +46 -0
- package/dist/src/modules/types.d.ts.map +1 -0
- package/dist/src/modules/types.js +1 -0
- package/dist/src/modules/validators/capabilities.d.ts +4 -0
- package/dist/src/modules/validators/capabilities.d.ts.map +1 -0
- package/dist/src/modules/validators/capabilities.js +58 -0
- package/dist/src/modules/validators/contribution.d.ts +4 -0
- package/dist/src/modules/validators/contribution.d.ts.map +1 -0
- package/dist/src/modules/validators/contribution.js +64 -0
- package/dist/src/modules/validators/definition.d.ts +3 -0
- package/dist/src/modules/validators/definition.d.ts.map +1 -0
- package/dist/src/modules/validators/definition.js +68 -0
- package/dist/src/modules/validators/ens.d.ts +5 -0
- package/dist/src/modules/validators/ens.d.ts.map +1 -0
- package/dist/src/modules/validators/ens.js +34 -0
- package/dist/src/modules/validators/k1.d.ts +2 -0
- package/dist/src/modules/validators/k1.d.ts.map +1 -0
- package/dist/src/modules/validators/k1.js +1 -0
- package/dist/src/modules/validators/multi-factor.d.ts +18 -0
- package/dist/src/modules/validators/multi-factor.d.ts.map +1 -0
- package/dist/src/modules/validators/multi-factor.js +79 -0
- package/dist/src/modules/validators/ownable.d.ts +26 -0
- package/dist/src/modules/validators/ownable.d.ts.map +1 -0
- package/dist/src/modules/validators/ownable.js +84 -0
- package/dist/src/modules/validators/permissions.d.ts +1 -1
- package/dist/src/modules/validators/permissions.d.ts.map +1 -1
- package/dist/src/modules/validators/policies/claim/arbiters.d.ts +1 -1
- package/dist/src/modules/validators/policies/claim/arbiters.d.ts.map +1 -1
- package/dist/src/modules/validators/policies/claim/arbiters.js +3 -1
- package/dist/src/modules/validators/resolve.d.ts +5 -0
- package/dist/src/modules/validators/resolve.d.ts.map +1 -0
- package/dist/src/modules/validators/resolve.js +22 -0
- package/dist/src/modules/validators/signer-id.d.ts +5 -0
- package/dist/src/modules/validators/signer-id.d.ts.map +1 -0
- package/dist/src/modules/validators/signer-id.js +8 -0
- package/dist/src/modules/validators/smart-session-signature-types.d.ts +35 -0
- package/dist/src/modules/validators/smart-session-signature-types.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-session-signature-types.js +1 -0
- package/dist/src/modules/validators/smart-sessions/authorization.d.ts +99 -0
- package/dist/src/modules/validators/smart-sessions/authorization.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/authorization.js +101 -0
- package/dist/src/modules/validators/smart-sessions/calls.d.ts +19 -0
- package/dist/src/modules/validators/smart-sessions/calls.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/calls.js +85 -0
- package/dist/src/modules/validators/smart-sessions/cross-chain-permits.d.ts +4 -0
- package/dist/src/modules/validators/smart-sessions/cross-chain-permits.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/cross-chain-permits.js +77 -0
- package/dist/src/modules/validators/smart-sessions/digest.d.ts +5 -0
- package/dist/src/modules/validators/smart-sessions/digest.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/digest.js +30 -0
- package/dist/src/modules/validators/smart-sessions/mock-signature.d.ts +10 -0
- package/dist/src/modules/validators/smart-sessions/mock-signature.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/mock-signature.js +31 -0
- package/dist/src/modules/validators/smart-sessions/module.d.ts +11 -0
- package/dist/src/modules/validators/smart-sessions/module.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/module.js +18 -0
- package/dist/src/modules/validators/smart-sessions/policies/addresses.d.ts +23 -0
- package/dist/src/modules/validators/smart-sessions/policies/addresses.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/policies/addresses.js +29 -0
- package/dist/src/modules/validators/smart-sessions/policies/claim.d.ts +10 -0
- package/dist/src/modules/validators/smart-sessions/policies/claim.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/policies/claim.js +106 -0
- package/dist/src/modules/validators/smart-sessions/policies/encode.d.ts +4 -0
- package/dist/src/modules/validators/smart-sessions/policies/encode.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/policies/encode.js +197 -0
- package/dist/src/modules/validators/smart-sessions/resolve.d.ts +16 -0
- package/dist/src/modules/validators/smart-sessions/resolve.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/resolve.js +120 -0
- package/dist/src/modules/validators/smart-sessions/signature.d.ts +14 -0
- package/dist/src/modules/validators/smart-sessions/signature.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/signature.js +167 -0
- package/dist/src/modules/validators/smart-sessions/state.d.ts +19 -0
- package/dist/src/modules/validators/smart-sessions/state.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/state.js +42 -0
- package/dist/src/modules/validators/smart-sessions/types.d.ts +227 -0
- package/dist/src/modules/validators/smart-sessions/types.d.ts.map +1 -0
- package/dist/src/modules/validators/smart-sessions/types.js +1 -0
- package/dist/src/modules/validators/types.d.ts +143 -0
- package/dist/src/modules/validators/types.d.ts.map +1 -0
- package/dist/src/modules/validators/types.js +1 -0
- package/dist/src/modules/validators/webauthn.d.ts +54 -0
- package/dist/src/modules/validators/webauthn.d.ts.map +1 -0
- package/dist/src/modules/validators/webauthn.js +159 -0
- package/dist/src/signing/context.d.ts +25 -0
- package/dist/src/signing/context.d.ts.map +1 -0
- package/dist/src/signing/context.js +163 -0
- package/dist/src/signing/contribution.d.ts +13 -0
- package/dist/src/signing/contribution.d.ts.map +1 -0
- package/dist/src/signing/contribution.js +83 -0
- package/dist/src/signing/eip7702.d.ts +41 -0
- package/dist/src/signing/eip7702.d.ts.map +1 -0
- package/dist/src/signing/eip7702.js +215 -0
- package/dist/src/signing/error.d.ts +27 -0
- package/dist/src/signing/error.d.ts.map +1 -0
- package/dist/src/signing/error.js +25 -0
- package/dist/src/signing/execute.d.ts +17 -0
- package/dist/src/signing/execute.d.ts.map +1 -0
- package/dist/src/signing/execute.js +138 -0
- package/dist/src/signing/intent-plans/assemble.d.ts +15 -0
- package/dist/src/signing/intent-plans/assemble.d.ts.map +1 -0
- package/dist/src/signing/intent-plans/assemble.js +96 -0
- package/dist/src/signing/intent-plans/independent.d.ts +48 -0
- package/dist/src/signing/intent-plans/independent.d.ts.map +1 -0
- package/dist/src/signing/intent-plans/independent.js +150 -0
- package/dist/src/signing/intent-plans/plan.d.ts +14 -0
- package/dist/src/signing/intent-plans/plan.d.ts.map +1 -0
- package/dist/src/signing/intent-plans/plan.js +187 -0
- package/dist/src/signing/intent-plans/types.d.ts +63 -0
- package/dist/src/signing/intent-plans/types.d.ts.map +1 -0
- package/dist/src/signing/intent-plans/types.js +1 -0
- package/dist/src/signing/message.d.ts +28 -0
- package/dist/src/signing/message.d.ts.map +1 -0
- package/dist/src/signing/message.js +90 -0
- package/dist/src/signing/passkeys.d.ts +28 -0
- package/dist/src/signing/passkeys.d.ts.map +1 -0
- package/dist/src/signing/passkeys.js +17 -0
- package/dist/src/signing/plan.d.ts +35 -0
- package/dist/src/signing/plan.d.ts.map +1 -0
- package/dist/src/signing/plan.js +377 -0
- package/dist/src/signing/protocols/erc6492.d.ts +11 -0
- package/dist/src/signing/protocols/erc6492.d.ts.map +1 -0
- package/dist/src/signing/protocols/erc6492.js +24 -0
- package/dist/src/signing/protocols/erc7739.d.ts +17 -0
- package/dist/src/signing/protocols/erc7739.d.ts.map +1 -0
- package/dist/src/signing/protocols/erc7739.js +84 -0
- package/dist/src/signing/session-enable.d.ts +35 -0
- package/dist/src/signing/session-enable.d.ts.map +1 -0
- package/dist/src/signing/session-enable.js +62 -0
- package/dist/src/signing/signers/compatibility.d.ts +4 -0
- package/dist/src/signing/signers/compatibility.d.ts.map +1 -0
- package/dist/src/signing/signers/compatibility.js +51 -0
- package/dist/src/signing/signers/ecdsa.d.ts +14 -0
- package/dist/src/signing/signers/ecdsa.d.ts.map +1 -0
- package/dist/src/signing/signers/ecdsa.js +54 -0
- package/dist/src/signing/signers/registry.d.ts +7 -0
- package/dist/src/signing/signers/registry.d.ts.map +1 -0
- package/dist/src/signing/signers/registry.js +33 -0
- package/dist/src/signing/signers/types.d.ts +16 -0
- package/dist/src/signing/signers/types.d.ts.map +1 -0
- package/dist/src/signing/signers/types.js +1 -0
- package/dist/src/signing/signers/wallet-chain.d.ts +9 -0
- package/dist/src/signing/signers/wallet-chain.d.ts.map +1 -0
- package/dist/src/signing/signers/wallet-chain.js +15 -0
- package/dist/src/signing/signers/webauthn.d.ts +11 -0
- package/dist/src/signing/signers/webauthn.d.ts.map +1 -0
- package/dist/src/signing/signers/webauthn.js +14 -0
- package/dist/src/signing/typed-data.d.ts +39 -0
- package/dist/src/signing/typed-data.d.ts.map +1 -0
- package/dist/src/signing/typed-data.js +135 -0
- package/dist/src/signing/types.d.ts +346 -0
- package/dist/src/signing/types.d.ts.map +1 -0
- package/dist/src/signing/types.js +1 -0
- package/dist/src/signing/user-operation.d.ts +23 -0
- package/dist/src/signing/user-operation.d.ts.map +1 -0
- package/dist/src/signing/user-operation.js +61 -0
- package/dist/src/smart-sessions/index.d.ts +13 -3
- package/dist/src/smart-sessions/index.d.ts.map +1 -1
- package/dist/src/smart-sessions/index.js +44 -6
- package/dist/src/transactions/intents/account.d.ts +15 -0
- package/dist/src/transactions/intents/account.d.ts.map +1 -0
- package/dist/src/transactions/intents/account.js +48 -0
- package/dist/src/transactions/intents/compatibility.d.ts +4 -0
- package/dist/src/transactions/intents/compatibility.d.ts.map +1 -0
- package/dist/src/transactions/intents/compatibility.js +19 -0
- package/dist/src/transactions/intents/normalize.d.ts +5 -0
- package/dist/src/transactions/intents/normalize.d.ts.map +1 -0
- package/dist/src/transactions/intents/normalize.js +48 -0
- package/dist/src/transactions/intents/prepare.d.ts +7 -0
- package/dist/src/transactions/intents/prepare.d.ts.map +1 -0
- package/dist/src/transactions/intents/prepare.js +249 -0
- package/dist/src/transactions/intents/quotes.d.ts +3 -0
- package/dist/src/transactions/intents/quotes.d.ts.map +1 -0
- package/dist/src/transactions/intents/quotes.js +11 -0
- package/dist/src/transactions/intents/request.d.ts +11 -0
- package/dist/src/transactions/intents/request.d.ts.map +1 -0
- package/dist/src/transactions/intents/request.js +55 -0
- package/dist/src/transactions/intents/send.d.ts +3 -0
- package/dist/src/transactions/intents/send.d.ts.map +1 -0
- package/dist/src/transactions/intents/send.js +22 -0
- package/dist/src/transactions/intents/session-signing.d.ts +7 -0
- package/dist/src/transactions/intents/session-signing.d.ts.map +1 -0
- package/dist/src/transactions/intents/session-signing.js +363 -0
- package/dist/src/transactions/intents/sessions.d.ts +17 -0
- package/dist/src/transactions/intents/sessions.d.ts.map +1 -0
- package/dist/src/transactions/intents/sessions.js +85 -0
- package/dist/src/transactions/intents/sign-transaction.d.ts +10 -0
- package/dist/src/transactions/intents/sign-transaction.d.ts.map +1 -0
- package/dist/src/transactions/intents/sign-transaction.js +386 -0
- package/dist/src/transactions/intents/split.d.ts +13 -0
- package/dist/src/transactions/intents/split.d.ts.map +1 -0
- package/dist/src/transactions/intents/split.js +3 -0
- package/dist/src/transactions/intents/status-policy.d.ts +13 -0
- package/dist/src/transactions/intents/status-policy.d.ts.map +1 -0
- package/dist/src/transactions/intents/status-policy.js +39 -0
- package/dist/src/transactions/intents/status.d.ts +4 -0
- package/dist/src/transactions/intents/status.d.ts.map +1 -0
- package/dist/src/transactions/intents/status.js +50 -0
- package/dist/src/transactions/intents/submit.d.ts +3 -0
- package/dist/src/transactions/intents/submit.d.ts.map +1 -0
- package/dist/src/transactions/intents/submit.js +32 -0
- package/dist/src/transactions/intents/types.d.ts +136 -0
- package/dist/src/transactions/intents/types.d.ts.map +1 -0
- package/dist/src/transactions/intents/types.js +1 -0
- package/dist/src/transactions/user-operations/hash.d.ts +5 -0
- package/dist/src/transactions/user-operations/hash.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/hash.js +9 -0
- package/dist/src/transactions/user-operations/nonce.d.ts +18 -0
- package/dist/src/transactions/user-operations/nonce.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/nonce.js +43 -0
- package/dist/src/transactions/user-operations/prepare.d.ts +12 -0
- package/dist/src/transactions/user-operations/prepare.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/prepare.js +138 -0
- package/dist/src/transactions/user-operations/reconstruct.d.ts +28 -0
- package/dist/src/transactions/user-operations/reconstruct.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/reconstruct.js +52 -0
- package/dist/src/transactions/user-operations/send.d.ts +3 -0
- package/dist/src/transactions/user-operations/send.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/send.js +8 -0
- package/dist/src/transactions/user-operations/sign.d.ts +3 -0
- package/dist/src/transactions/user-operations/sign.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/sign.js +14 -0
- package/dist/src/transactions/user-operations/status.d.ts +4 -0
- package/dist/src/transactions/user-operations/status.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/status.js +37 -0
- package/dist/src/transactions/user-operations/submit.d.ts +3 -0
- package/dist/src/transactions/user-operations/submit.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/submit.js +8 -0
- package/dist/src/transactions/user-operations/types.d.ts +68 -0
- package/dist/src/transactions/user-operations/types.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/types.js +1 -0
- package/dist/src/transactions/user-operations/validator-account.d.ts +5 -0
- package/dist/src/transactions/user-operations/validator-account.d.ts.map +1 -0
- package/dist/src/transactions/user-operations/validator-account.js +26 -0
- package/dist/src/utils/index.d.ts +9 -4
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +54 -51
- package/package.json +3 -3
- package/dist/src/accounts/hca.d.ts +0 -25
- package/dist/src/accounts/hca.d.ts.map +0 -1
- package/dist/src/accounts/hca.js +0 -148
- package/dist/src/accounts/index.d.ts +0 -64
- package/dist/src/accounts/index.d.ts.map +0 -1
- package/dist/src/accounts/index.js +0 -680
- package/dist/src/accounts/json-rpc/index.d.ts +0 -5
- package/dist/src/accounts/json-rpc/index.d.ts.map +0 -1
- package/dist/src/accounts/json-rpc/index.js +0 -13
- package/dist/src/accounts/json-rpc/providers.d.ts +0 -3
- package/dist/src/accounts/json-rpc/providers.d.ts.map +0 -1
- package/dist/src/accounts/json-rpc/providers.js +0 -4
- package/dist/src/accounts/kernel.d.ts +0 -26
- package/dist/src/accounts/kernel.d.ts.map +0 -1
- package/dist/src/accounts/kernel.js +0 -265
- package/dist/src/accounts/nexus.d.ts +0 -34
- package/dist/src/accounts/nexus.d.ts.map +0 -1
- package/dist/src/accounts/nexus.js +0 -520
- package/dist/src/accounts/safe.d.ts +0 -32
- package/dist/src/accounts/safe.d.ts.map +0 -1
- package/dist/src/accounts/safe.js +0 -337
- package/dist/src/accounts/signing/common.d.ts +0 -38
- package/dist/src/accounts/signing/common.d.ts.map +0 -1
- package/dist/src/accounts/signing/common.js +0 -186
- package/dist/src/accounts/signing/message.d.ts +0 -7
- package/dist/src/accounts/signing/message.d.ts.map +0 -1
- package/dist/src/accounts/signing/message.js +0 -42
- package/dist/src/accounts/signing/passkeys.d.ts +0 -36
- package/dist/src/accounts/signing/passkeys.d.ts.map +0 -1
- package/dist/src/accounts/signing/passkeys.js +0 -119
- package/dist/src/accounts/signing/typedData.d.ts +0 -5
- package/dist/src/accounts/signing/typedData.d.ts.map +0 -1
- package/dist/src/accounts/signing/typedData.js +0 -30
- package/dist/src/accounts/startale.d.ts +0 -25
- package/dist/src/accounts/startale.d.ts.map +0 -1
- package/dist/src/accounts/startale.js +0 -188
- package/dist/src/accounts/utils.d.ts +0 -33
- package/dist/src/accounts/utils.d.ts.map +0 -1
- package/dist/src/accounts/utils.js +0 -202
- package/dist/src/auth/provider.d.ts +0 -7
- package/dist/src/auth/provider.d.ts.map +0 -1
- package/dist/src/auth/provider.js +0 -38
- package/dist/src/execution/compact.d.ts +0 -5
- package/dist/src/execution/compact.d.ts.map +0 -1
- package/dist/src/execution/compact.js +0 -4
- package/dist/src/execution/error.d.ts.map +0 -1
- package/dist/src/execution/index.d.ts +0 -42
- package/dist/src/execution/index.d.ts.map +0 -1
- package/dist/src/execution/index.js +0 -186
- package/dist/src/execution/utils.d.ts +0 -167
- package/dist/src/execution/utils.d.ts.map +0 -1
- package/dist/src/execution/utils.js +0 -1603
- package/dist/src/modules/abi/smart-sessions.d.ts +0 -104
- package/dist/src/modules/abi/smart-sessions.d.ts.map +0 -1
- package/dist/src/modules/abi/smart-sessions.js +0 -128
- package/dist/src/modules/chain-abstraction.d.ts +0 -5
- package/dist/src/modules/chain-abstraction.d.ts.map +0 -1
- package/dist/src/modules/chain-abstraction.js +0 -3
- package/dist/src/modules/common.d.ts +0 -30
- package/dist/src/modules/common.d.ts.map +0 -1
- package/dist/src/modules/common.js +0 -30
- package/dist/src/modules/index.d.ts +0 -11
- package/dist/src/modules/index.d.ts.map +0 -1
- package/dist/src/modules/index.js +0 -85
- package/dist/src/modules/legacy.d.ts +0 -10
- package/dist/src/modules/legacy.d.ts.map +0 -1
- package/dist/src/modules/legacy.js +0 -62
- package/dist/src/modules/read.d.ts +0 -11
- package/dist/src/modules/read.d.ts.map +0 -1
- package/dist/src/modules/read.js +0 -219
- package/dist/src/modules/validators/core.d.ts +0 -31
- package/dist/src/modules/validators/core.d.ts.map +0 -1
- package/dist/src/modules/validators/core.js +0 -269
- package/dist/src/modules/validators/cross-chain-permits.d.ts +0 -22
- package/dist/src/modules/validators/cross-chain-permits.d.ts.map +0 -1
- package/dist/src/modules/validators/cross-chain-permits.js +0 -107
- package/dist/src/modules/validators/index.d.ts +0 -4
- package/dist/src/modules/validators/index.d.ts.map +0 -1
- package/dist/src/modules/validators/index.js +0 -3
- package/dist/src/modules/validators/smart-sessions.d.ts +0 -226
- package/dist/src/modules/validators/smart-sessions.d.ts.map +0 -1
- package/dist/src/modules/validators/smart-sessions.js +0 -1197
- package/dist/src/orchestrator/caip2.d.ts +0 -18
- package/dist/src/orchestrator/caip2.d.ts.map +0 -1
- package/dist/src/orchestrator/caip2.js +0 -58
- package/dist/src/orchestrator/chain-catalog.d.ts.map +0 -1
- package/dist/src/orchestrator/client.d.ts +0 -43
- package/dist/src/orchestrator/client.d.ts.map +0 -1
- package/dist/src/orchestrator/client.js +0 -336
- package/dist/src/orchestrator/consts.d.ts +0 -6
- package/dist/src/orchestrator/consts.d.ts.map +0 -1
- package/dist/src/orchestrator/consts.js +0 -5
- package/dist/src/orchestrator/destinations.d.ts.map +0 -1
- package/dist/src/orchestrator/destinations.js +0 -59
- package/dist/src/orchestrator/error.d.ts.map +0 -1
- package/dist/src/orchestrator/index.d.ts +0 -12
- package/dist/src/orchestrator/index.d.ts.map +0 -1
- package/dist/src/orchestrator/index.js +0 -9
- package/dist/src/orchestrator/registry.d.ts +0 -7
- package/dist/src/orchestrator/registry.d.ts.map +0 -1
- package/dist/src/orchestrator/registry.js +0 -46
- package/dist/src/orchestrator/types.d.ts.map +0 -1
- package/dist/src/orchestrator/utils.d.ts +0 -3
- package/dist/src/orchestrator/utils.d.ts.map +0 -1
- package/dist/src/orchestrator/utils.js +0 -22
- package/dist/src/orchestrator/wire.d.ts +0 -31
- package/dist/src/orchestrator/wire.d.ts.map +0 -1
- package/dist/src/orchestrator/wire.gen.d.ts.map +0 -1
- package/dist/src/types.d.ts.map +0 -1
- package/dist/src/utils/walletClient.d.ts +0 -34
- package/dist/src/utils/walletClient.d.ts.map +0 -1
- package/dist/src/utils/walletClient.js +0 -117
- /package/dist/src/{orchestrator/wire.gen.js → accounts/adapter.js} +0 -0
- /package/dist/src/{types.js → accounts/types.js} +0 -0
- /package/dist/src/{orchestrator/wire.js → api/compose-types.js} +0 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import type { Hex } from 'viem';
|
|
2
|
+
import type { UserOperation } from 'viem/account-abstraction';
|
|
3
|
+
import type { AccountRuntimePort } from '../../accounts/adapter.js';
|
|
4
|
+
import type { UnresolvedCall } from '../../calls/types.js';
|
|
5
|
+
import type { EvmChainReference } from '../../chains/types.js';
|
|
6
|
+
import type { BundlerPort, BundlerUserOperation } from '../../clients/bundler/port.js';
|
|
7
|
+
import type { PaymasterPort } from '../../clients/paymaster/port.js';
|
|
8
|
+
import type { RpcPort } from '../../clients/rpc/port.js';
|
|
9
|
+
import type { UserOperationTransaction } from '../../config/account.js';
|
|
10
|
+
import type { OwnerSignerSelection, SignerInvocationPort, SigningCheckpointPort, SigningTranscript } from '../../signing/types.js';
|
|
11
|
+
import type { UserOperationSigningPlanInput } from '../../signing/user-operation.js';
|
|
12
|
+
export interface UserOperationInput<CompatibilityConfig = unknown> {
|
|
13
|
+
readonly chain: EvmChainReference;
|
|
14
|
+
readonly calls: readonly UnresolvedCall<CompatibilityConfig>[];
|
|
15
|
+
readonly nonceKey?: bigint;
|
|
16
|
+
readonly gasLimit?: bigint;
|
|
17
|
+
readonly signers?: OwnerSignerSelection;
|
|
18
|
+
}
|
|
19
|
+
export interface PreparedUserOperation<CompatibilityConfig = unknown> {
|
|
20
|
+
readonly input: UserOperationInput<CompatibilityConfig>;
|
|
21
|
+
readonly operation: BundlerUserOperation;
|
|
22
|
+
readonly hash: Hex;
|
|
23
|
+
readonly signing: UserOperationSigningPlanInput;
|
|
24
|
+
}
|
|
25
|
+
export interface SignedUserOperation<CompatibilityConfig = unknown> {
|
|
26
|
+
readonly prepared: PreparedUserOperation<CompatibilityConfig>;
|
|
27
|
+
readonly operation: BundlerUserOperation;
|
|
28
|
+
readonly signature: Hex;
|
|
29
|
+
readonly transcript: SigningTranscript;
|
|
30
|
+
}
|
|
31
|
+
export interface SubmittedUserOperation {
|
|
32
|
+
readonly type: 'userop';
|
|
33
|
+
readonly chain: EvmChainReference;
|
|
34
|
+
readonly hash: Hex;
|
|
35
|
+
}
|
|
36
|
+
export interface UserOperationStatus {
|
|
37
|
+
readonly hash: Hex;
|
|
38
|
+
readonly receipt?: unknown;
|
|
39
|
+
readonly terminal: boolean;
|
|
40
|
+
}
|
|
41
|
+
export interface UserOperationWorkflowContext<CompatibilityConfig = unknown> {
|
|
42
|
+
readonly compatibilityConfig: CompatibilityConfig;
|
|
43
|
+
readonly account: AccountRuntimePort;
|
|
44
|
+
readonly rpc: RpcPort;
|
|
45
|
+
readonly bundler: BundlerPort;
|
|
46
|
+
readonly paymaster?: PaymasterPort;
|
|
47
|
+
readonly signerInvoker: SignerInvocationPort;
|
|
48
|
+
readonly checkpoints: SigningCheckpointPort;
|
|
49
|
+
readonly clock: {
|
|
50
|
+
readonly now: () => number;
|
|
51
|
+
readonly sleep: (milliseconds: number) => Promise<void>;
|
|
52
|
+
readonly timeout: <T>(promise: Promise<T>, milliseconds: number, error: () => Error) => Promise<T>;
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
export interface UserOperationResult {
|
|
56
|
+
type: 'userop';
|
|
57
|
+
hash: Hex;
|
|
58
|
+
chain: number;
|
|
59
|
+
}
|
|
60
|
+
export interface PreparedUserOperationData {
|
|
61
|
+
userOperation: UserOperation;
|
|
62
|
+
hash: Hex;
|
|
63
|
+
transaction: UserOperationTransaction;
|
|
64
|
+
}
|
|
65
|
+
export interface SignedUserOperationData extends PreparedUserOperationData {
|
|
66
|
+
signature: Hex;
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../transactions/user-operations/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { Hex } from 'viem';
|
|
2
|
+
import type { AccountRuntime } from '../../accounts/adapter.js';
|
|
3
|
+
import type { SigningContext } from '../../signing/context.js';
|
|
4
|
+
export declare function getUserOperationStubSignature(runtime: AccountRuntime, context: SigningContext): Hex;
|
|
5
|
+
//# sourceMappingURL=validator-account.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validator-account.d.ts","sourceRoot":"","sources":["../../../../transactions/user-operations/validator-account.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAK5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAE3D,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,cAAc,GACtB,GAAG,CAuBL"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { encodeMultiFactorContribution } from '../../modules/validators/multi-factor.js';
|
|
2
|
+
import { encodeOwnableMockSignature } from '../../modules/validators/ownable.js';
|
|
3
|
+
import { resolveValidator } from '../../modules/validators/resolve.js';
|
|
4
|
+
import { WEBAUTHN_MOCK_SIGNATURE } from '../../modules/validators/webauthn.js';
|
|
5
|
+
export function getUserOperationStubSignature(runtime, context) {
|
|
6
|
+
if (!runtime.adapter.capabilities.supportsUserOperations) {
|
|
7
|
+
throw new Error(`Account ${runtime.construction.account.kind} does not support UserOperations`);
|
|
8
|
+
}
|
|
9
|
+
if (context.validator.kind === 'passkey')
|
|
10
|
+
return WEBAUTHN_MOCK_SIGNATURE;
|
|
11
|
+
if (context.validator.kind === 'multi-factor') {
|
|
12
|
+
return encodeMultiFactorContribution({
|
|
13
|
+
factorOrder: context.validator.validators.map(({ id }) => id),
|
|
14
|
+
threshold: context.validator.threshold,
|
|
15
|
+
contributions: context.validator.validators.map((validator) => ({
|
|
16
|
+
factorId: validator.id,
|
|
17
|
+
publicId: validator.publicId,
|
|
18
|
+
validator: resolveValidator(validator).address,
|
|
19
|
+
contribution: validator.kind === 'passkey'
|
|
20
|
+
? WEBAUTHN_MOCK_SIGNATURE
|
|
21
|
+
: encodeOwnableMockSignature(validator.owners.length),
|
|
22
|
+
})),
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
return encodeOwnableMockSignature(context.validator.owners.length);
|
|
26
|
+
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { Account, Address, Hex } from 'viem';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import { walletClientToAccount, wrapParaAccount } from './walletClient.js';
|
|
2
|
+
import type { RhinestoneAccountConfig, RhinestoneConfig } from '../config/account.js';
|
|
3
|
+
import { walletClientToAccount, wrapParaAccount } from '../signing/signers/compatibility.js';
|
|
5
4
|
/**
|
|
6
5
|
* Compute the v0 (legacy) initialization data for an account configuration.
|
|
7
6
|
*
|
|
@@ -76,5 +75,11 @@ declare function experimental_getRhinestoneInitData(config: RhinestoneAccountCon
|
|
|
76
75
|
* ```
|
|
77
76
|
*/
|
|
78
77
|
declare function toViewOnlyAccount(address: Address): Account;
|
|
79
|
-
|
|
78
|
+
/**
|
|
79
|
+
* Compute the ERC-7579 module setup for an account configuration.
|
|
80
|
+
* @param config Account and module configuration
|
|
81
|
+
* @returns Validators, executors, hooks, and fallbacks to install
|
|
82
|
+
*/
|
|
83
|
+
declare function getSetup(config: RhinestoneConfig): import("../modules/legacy-core.js").ModeleSetup;
|
|
84
|
+
export { experimental_getV0InitData, getSetup as experimental_getModuleSetup, experimental_getRhinestoneInitData, toViewOnlyAccount, walletClientToAccount, wrapParaAccount, };
|
|
80
85
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAIjD,OAAO,KAAK,EACV,uBAAuB,EACvB,gBAAgB,EACjB,MAAM,mBAAmB,CAAA;AAI1B,OAAO,EACL,qBAAqB,EACrB,eAAe,EAChB,MAAM,kCAAkC,CAAA;AAsCzC;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,iBAAS,0BAA0B,CAAC,MAAM,EAAE,uBAAuB,GAAG;IACpE,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,GAAG,CAAA;IAChB,uBAAuB,EAAE,OAAO,CAAA;CACjC,CAEA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,iBAAS,kCAAkC,CAAC,MAAM,EAAE,uBAAuB,GACvE;IACE,OAAO,EAAE,OAAO,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,GAAG,CAAA;IAChB,uBAAuB,EAAE,OAAO,CAAA;CACjC,GACD;IACE,OAAO,EAAE,OAAO,CAAA;CACjB,CAWJ;AAED;;;;;;;;;;;;;;;GAeG;AACH,iBAAS,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAEpD;AAED;;;;GAIG;AACH,iBAAS,QAAQ,CAAC,MAAM,EAAE,gBAAgB,gDAEzC;AAED,OAAO,EACL,0BAA0B,EAC1B,QAAQ,IAAI,2BAA2B,EACvC,kCAAkC,EAClC,iBAAiB,EACjB,qBAAqB,EACrB,eAAe,GAChB,CAAA"}
|
package/dist/src/utils/index.js
CHANGED
|
@@ -1,7 +1,39 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { createAccountConstruction } from '../accounts/construction.js';
|
|
2
|
+
import { getRhinestoneInitData, getV0InitData } from '../accounts/legacy.js';
|
|
3
|
+
import { toViewOnlyAccount as createViewOnlyAccount } from '../accounts/wallet-account.js';
|
|
4
|
+
import { resolveStandaloneAccountConfig } from '../config/resolve.js';
|
|
5
|
+
import { assertAccountOwnersConfigured } from '../config/validate.js';
|
|
6
|
+
import { toLegacyModuleSetup } from '../modules/legacy-core.js';
|
|
7
|
+
import { walletClientToAccount, wrapParaAccount, } from '../signing/signers/compatibility.js';
|
|
8
|
+
function standaloneConstruction(config, profile) {
|
|
9
|
+
const resolved = resolveStandaloneAccountConfig(config, profile);
|
|
10
|
+
assertAccountOwnersConfigured(resolved);
|
|
11
|
+
const module = resolved.sessions.module.source === 'explicit'
|
|
12
|
+
? resolved.sessions.module.address
|
|
13
|
+
: undefined;
|
|
14
|
+
const compatibilityFallback = resolved.sessions.compatibilityFallback.source === 'explicit'
|
|
15
|
+
? resolved.sessions.compatibilityFallback.address
|
|
16
|
+
: undefined;
|
|
17
|
+
return createAccountConstruction({
|
|
18
|
+
material: {
|
|
19
|
+
account: resolved.account,
|
|
20
|
+
...(resolved.owners ? { owner: resolved.owners } : {}),
|
|
21
|
+
modules: resolved.modules,
|
|
22
|
+
...(resolved.initData ? { initData: resolved.initData } : {}),
|
|
23
|
+
...(resolved.eoa ? { eoa: resolved.eoa } : {}),
|
|
24
|
+
sessions: {
|
|
25
|
+
enabled: resolved.sessions.enabled,
|
|
26
|
+
environment: config.useDevContracts === true
|
|
27
|
+
? 'development'
|
|
28
|
+
: resolved.sessions.environment,
|
|
29
|
+
...(module ? { module } : {}),
|
|
30
|
+
...(compatibilityFallback ? { compatibilityFallback } : {}),
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
chain: { kind: 'evm', id: 1, caip2: 'eip155:1' },
|
|
34
|
+
deployed: false,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
5
37
|
/**
|
|
6
38
|
* Compute the v0 (legacy) initialization data for an account configuration.
|
|
7
39
|
*
|
|
@@ -24,21 +56,7 @@ import { walletClientToAccount, wrapParaAccount } from './walletClient.js';
|
|
|
24
56
|
* ```
|
|
25
57
|
*/
|
|
26
58
|
function experimental_getV0InitData(config) {
|
|
27
|
-
|
|
28
|
-
if (!initCode) {
|
|
29
|
-
throw new Error('Init code not available');
|
|
30
|
-
}
|
|
31
|
-
if (!('factory' in initCode)) {
|
|
32
|
-
throw new Error('Factory not available');
|
|
33
|
-
}
|
|
34
|
-
const { factory, factoryData } = initCode;
|
|
35
|
-
const address = getAddress(config);
|
|
36
|
-
return {
|
|
37
|
-
address,
|
|
38
|
-
factory,
|
|
39
|
-
factoryData,
|
|
40
|
-
intentExecutorInstalled: true,
|
|
41
|
-
};
|
|
59
|
+
return getV0InitData(standaloneConstruction(config, 'legacy-v0'));
|
|
42
60
|
}
|
|
43
61
|
/**
|
|
44
62
|
* Compute the Rhinestone initialization data for an account configuration.
|
|
@@ -63,25 +81,14 @@ function experimental_getV0InitData(config) {
|
|
|
63
81
|
* ```
|
|
64
82
|
*/
|
|
65
83
|
function experimental_getRhinestoneInitData(config) {
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
const { factory, factoryData } = initCode;
|
|
73
|
-
return {
|
|
74
|
-
address,
|
|
75
|
-
factory,
|
|
76
|
-
factoryData,
|
|
77
|
-
intentExecutorInstalled: true,
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
else {
|
|
81
|
-
return {
|
|
82
|
-
address,
|
|
83
|
-
};
|
|
84
|
+
if (config.initData &&
|
|
85
|
+
!('factory' in config.initData) &&
|
|
86
|
+
!config.eoa &&
|
|
87
|
+
config.account?.type !== 'eoa' &&
|
|
88
|
+
config.account?.type !== 'kernel') {
|
|
89
|
+
return { address: config.initData.address };
|
|
84
90
|
}
|
|
91
|
+
return getRhinestoneInitData(standaloneConstruction(config, 'current-v2'));
|
|
85
92
|
}
|
|
86
93
|
/**
|
|
87
94
|
* Create a view-only viem `Account` for an address. Any signing operation throws.
|
|
@@ -100,18 +107,14 @@ function experimental_getRhinestoneInitData(config) {
|
|
|
100
107
|
* ```
|
|
101
108
|
*/
|
|
102
109
|
function toViewOnlyAccount(address) {
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
signTransaction: async () => {
|
|
113
|
-
throw new Error(errorMessage);
|
|
114
|
-
},
|
|
115
|
-
});
|
|
110
|
+
return createViewOnlyAccount(address);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Compute the ERC-7579 module setup for an account configuration.
|
|
114
|
+
* @param config Account and module configuration
|
|
115
|
+
* @returns Validators, executors, hooks, and fallbacks to install
|
|
116
|
+
*/
|
|
117
|
+
function getSetup(config) {
|
|
118
|
+
return toLegacyModuleSetup(standaloneConstruction(config, 'current-v2').setup);
|
|
116
119
|
}
|
|
117
|
-
export { experimental_getV0InitData, experimental_getModuleSetup, experimental_getRhinestoneInitData, toViewOnlyAccount, walletClientToAccount, wrapParaAccount, };
|
|
120
|
+
export { experimental_getV0InitData, getSetup as experimental_getModuleSetup, experimental_getRhinestoneInitData, toViewOnlyAccount, walletClientToAccount, wrapParaAccount, };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rhinestone/sdk",
|
|
3
|
-
"version": "2.0.0-beta.
|
|
3
|
+
"version": "2.0.0-beta.45",
|
|
4
4
|
"description": "End-to-end chain abstraction and modularity toolkit",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Rhinestone",
|
|
@@ -36,8 +36,8 @@
|
|
|
36
36
|
"import": "./dist/src/actions/passkeys.js"
|
|
37
37
|
},
|
|
38
38
|
"./signing/passkeys": {
|
|
39
|
-
"types": "./dist/src/
|
|
40
|
-
"import": "./dist/src/
|
|
39
|
+
"types": "./dist/src/signing/passkeys.d.ts",
|
|
40
|
+
"import": "./dist/src/signing/passkeys.js"
|
|
41
41
|
},
|
|
42
42
|
"./actions/smart-sessions": {
|
|
43
43
|
"types": "./dist/src/actions/smart-sessions.d.ts",
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { Address, Chain, Hex, PublicClient } from 'viem';
|
|
2
|
-
import type { Module } from '../modules/common.js';
|
|
3
|
-
import { ENS_HCA_MODULE } from '../modules/validators/core.js';
|
|
4
|
-
import type { OwnerSet, RhinestoneAccountConfig } from '../types.js';
|
|
5
|
-
import type { ValidatorConfig } from './utils.js';
|
|
6
|
-
declare function getDeployArgs(config: RhinestoneAccountConfig): {
|
|
7
|
-
factory: `0x${string}`;
|
|
8
|
-
factoryData: `0x${string}`;
|
|
9
|
-
salt: "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
10
|
-
implementation: `0x${string}`;
|
|
11
|
-
initializationCallData: `0x${string}`;
|
|
12
|
-
} | null;
|
|
13
|
-
declare function getAddress(config: RhinestoneAccountConfig): `0x${string}`;
|
|
14
|
-
declare function getEip712Domain(config: RhinestoneAccountConfig, chain: Chain): {
|
|
15
|
-
name: string;
|
|
16
|
-
version: string;
|
|
17
|
-
chainId: number;
|
|
18
|
-
verifyingContract: `0x${string}`;
|
|
19
|
-
salt: "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
20
|
-
};
|
|
21
|
-
declare function getInstallData(module: Module): `0x${string}`;
|
|
22
|
-
declare function packSignature(signature: Hex, validator: ValidatorConfig, transformSignature?: (signature: Hex) => Hex): Promise<`0x${string}`>;
|
|
23
|
-
declare function getSmartAccount(client: PublicClient, address: Address, owners: OwnerSet, validatorAddress: Address, sign: (hash: Hex) => Promise<Hex>): Promise<import("viem/_types/account-abstraction").SmartAccount<import("viem/_types/account-abstraction").SmartAccountImplementation<import("viem").Abi, "0.7">>>;
|
|
24
|
-
export { ENS_HCA_MODULE, getEip712Domain, getInstallData, getAddress, packSignature, getDeployArgs, getSmartAccount, };
|
|
25
|
-
//# sourceMappingURL=hca.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hca.d.ts","sourceRoot":"","sources":["../../../accounts/hca.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAa7D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAqB,MAAM,4BAA4B,CAAA;AAC9E,OAAO,KAAK,EAAE,QAAQ,EAAE,uBAAuB,EAAE,MAAM,UAAU,CAAA;AAUjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAc9C,iBAAS,aAAa,CAAC,MAAM,EAAE,uBAAuB;;;;;;SAsFrD;AAED,iBAAS,UAAU,CAAC,MAAM,EAAE,uBAAuB,iBAalD;AAmDD,iBAAS,eAAe,CAAC,MAAM,EAAE,uBAAuB,EAAE,KAAK,EAAE,KAAK;;;;;;EAarE;AAED,iBAAS,cAAc,CAAC,MAAM,EAAE,MAAM,iBAErC;AAED,iBAAe,aAAa,CAC1B,SAAS,EAAE,GAAG,EACd,SAAS,EAAE,eAAe,EAC1B,kBAAkB,GAAE,CAAC,SAAS,EAAE,GAAG,KAAK,GAA8B,0BAQvE;AAED,iBAAe,eAAe,CAC5B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,QAAQ,EAChB,gBAAgB,EAAE,OAAO,EACzB,IAAI,EAAE,CAAC,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,oKAUlC;AAED,OAAO,EACL,cAAc,EACd,eAAe,EACf,cAAc,EACd,UAAU,EACV,aAAa,EACb,aAAa,EACb,eAAe,GAChB,CAAA"}
|
package/dist/src/accounts/hca.js
DELETED
|
@@ -1,148 +0,0 @@
|
|
|
1
|
-
import { concat, decodeAbiParameters, decodeFunctionData, encodeFunctionData, encodePacked, keccak256, pad, parseAbi, slice, zeroHash, } from 'viem';
|
|
2
|
-
import { ENS_HCA_MODULE, getOwnerValidator } from '../modules/validators/core.js';
|
|
3
|
-
import { AccountConfigurationNotSupportedError, Eip712DomainNotAvailableError, } from './error.js';
|
|
4
|
-
import { getInstallData as getNexusInstallData, getSmartAccount as getNexusSmartAccount, packSignature as packNexusSignature, } from './nexus.js';
|
|
5
|
-
const HCA_IMPLEMENTATION_ADDRESS = '0x7c2cC1e499a87ab480Df154e05164cD56D05d570';
|
|
6
|
-
const HCA_FACTORY_ADDRESS = '0x358680728dedb552adaa9f5eb5d4395b291cf943';
|
|
7
|
-
// HCA inherits Nexus's EIP-712 domain (verified on-chain via eip712Domain()).
|
|
8
|
-
const HCA_VERSION = '1.2.0';
|
|
9
|
-
// Solady CREATE3 proxy bytecode hash
|
|
10
|
-
const CREATE3_PROXY_HASH = '0x21c35dbe1b344a2488cf3321d6ce542f8e9f305544ff09e4993a62319a497c1f';
|
|
11
|
-
function getDeployArgs(config) {
|
|
12
|
-
// HCA accounts are locked to their initial configuration and block module
|
|
13
|
-
// installation, so sessions and extra modules can never be installed.
|
|
14
|
-
// Reject them on every path (including externally-provided initData)
|
|
15
|
-
// rather than silently dropping them.
|
|
16
|
-
if (config.experimental_sessions?.enabled ||
|
|
17
|
-
(config.modules && config.modules.length > 0)) {
|
|
18
|
-
throw new AccountConfigurationNotSupportedError('HCA accounts cannot install sessions or additional modules', 'hca');
|
|
19
|
-
}
|
|
20
|
-
if (config.owners && config.owners.type !== 'ens') {
|
|
21
|
-
throw new AccountConfigurationNotSupportedError('HCA accounts require ENS owners', 'hca');
|
|
22
|
-
}
|
|
23
|
-
const factory = config.account?.type === 'hca' && config.account.factory
|
|
24
|
-
? config.account.factory
|
|
25
|
-
: HCA_FACTORY_ADDRESS;
|
|
26
|
-
if (config.initData) {
|
|
27
|
-
if (!('factory' in config.initData)) {
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
const { factory, factoryData } = config.initData;
|
|
31
|
-
try {
|
|
32
|
-
const decoded = decodeFunctionData({
|
|
33
|
-
abi: parseAbi(['function createAccount(bytes)']),
|
|
34
|
-
data: factoryData,
|
|
35
|
-
});
|
|
36
|
-
const moduleInitData = decoded.args[0];
|
|
37
|
-
const initializationCallData = encodeFunctionData({
|
|
38
|
-
abi: parseAbi(['function initializeAccount(bytes)']),
|
|
39
|
-
functionName: 'initializeAccount',
|
|
40
|
-
args: [moduleInitData],
|
|
41
|
-
});
|
|
42
|
-
return {
|
|
43
|
-
factory,
|
|
44
|
-
factoryData,
|
|
45
|
-
salt: zeroHash,
|
|
46
|
-
implementation: HCA_IMPLEMENTATION_ADDRESS,
|
|
47
|
-
initializationCallData,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
catch {
|
|
51
|
-
return null;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
if (!config.owners) {
|
|
55
|
-
throw new AccountConfigurationNotSupportedError('HCA accounts require ENS owners', 'hca');
|
|
56
|
-
}
|
|
57
|
-
const ownerValidator = getOwnerValidator(config);
|
|
58
|
-
const moduleInitData = ownerValidator.initData;
|
|
59
|
-
// Factory takes module initData directly: abi.encode(threshold, owners[])
|
|
60
|
-
// It internally calls module.getOwnerFromInitData(initData) to derive the CREATE3 salt,
|
|
61
|
-
// then deploys the proxy with the stored implementation
|
|
62
|
-
const factoryData = encodeFunctionData({
|
|
63
|
-
abi: parseAbi(['function createAccount(bytes)']),
|
|
64
|
-
functionName: 'createAccount',
|
|
65
|
-
args: [moduleInitData],
|
|
66
|
-
});
|
|
67
|
-
const initializationCallData = encodeFunctionData({
|
|
68
|
-
abi: parseAbi(['function initializeAccount(bytes)']),
|
|
69
|
-
functionName: 'initializeAccount',
|
|
70
|
-
args: [moduleInitData],
|
|
71
|
-
});
|
|
72
|
-
return {
|
|
73
|
-
factory,
|
|
74
|
-
factoryData,
|
|
75
|
-
salt: zeroHash,
|
|
76
|
-
implementation: HCA_IMPLEMENTATION_ADDRESS,
|
|
77
|
-
initializationCallData,
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
function getAddress(config) {
|
|
81
|
-
const deployArgs = getDeployArgs(config);
|
|
82
|
-
if (!deployArgs) {
|
|
83
|
-
if (config.initData?.address) {
|
|
84
|
-
return config.initData.address;
|
|
85
|
-
}
|
|
86
|
-
throw new Error('Cannot derive address: deploy args not available');
|
|
87
|
-
}
|
|
88
|
-
// Always derive deterministically from the factory data so a mismatched
|
|
89
|
-
// initData.address is caught by checkAddress instead of being trusted.
|
|
90
|
-
const primaryOwner = getPrimaryOwnerFromFactoryData(deployArgs.factoryData);
|
|
91
|
-
return predictCreate3Address(deployArgs.factory, primaryOwner);
|
|
92
|
-
}
|
|
93
|
-
// The factory derives the CREATE3 salt from getOwnerFromInitData(initData),
|
|
94
|
-
// which returns owners[0] of the validator init data. getOwnerValidator sorts
|
|
95
|
-
// owners by lowercased address, so owners[0] is the salt owner the factory uses.
|
|
96
|
-
function getPrimaryOwnerFromFactoryData(factoryData) {
|
|
97
|
-
const { args } = decodeFunctionData({
|
|
98
|
-
abi: parseAbi(['function createAccount(bytes)']),
|
|
99
|
-
data: factoryData,
|
|
100
|
-
});
|
|
101
|
-
const [, owners] = decodeAbiParameters([
|
|
102
|
-
{ type: 'uint256' },
|
|
103
|
-
{
|
|
104
|
-
type: 'tuple[]',
|
|
105
|
-
components: [
|
|
106
|
-
{ name: 'addr', type: 'address' },
|
|
107
|
-
{ name: 'expiration', type: 'uint48' },
|
|
108
|
-
],
|
|
109
|
-
},
|
|
110
|
-
], args[0]);
|
|
111
|
-
return owners[0].addr;
|
|
112
|
-
}
|
|
113
|
-
// Solady CREATE3 address derivation:
|
|
114
|
-
// 1. salt = bytes32(bytes20(primaryOwner)) — right-padded
|
|
115
|
-
// 2. proxy = CREATE2(factory, salt, CREATE3_PROXY_HASH)
|
|
116
|
-
// 3. account = CREATE(proxy, nonce=1) = keccak256(0xd694 ++ proxy ++ 0x01)
|
|
117
|
-
function predictCreate3Address(factory, primaryOwner) {
|
|
118
|
-
// salt = bytes32(bytes20(owner)) — address right-padded to 32 bytes
|
|
119
|
-
const salt = pad(primaryOwner, { size: 32, dir: 'right' });
|
|
120
|
-
// CREATE2: proxy address
|
|
121
|
-
const proxyHash = keccak256(encodePacked(['bytes1', 'address', 'bytes32', 'bytes32'], ['0xff', factory, salt, CREATE3_PROXY_HASH]));
|
|
122
|
-
const proxyAddress = slice(proxyHash, 12, 32);
|
|
123
|
-
// CREATE with nonce 1: RLP([proxy, 1]) = 0xd694 ++ proxy ++ 0x01
|
|
124
|
-
const accountHash = keccak256(concat(['0xd694', proxyAddress, '0x01']));
|
|
125
|
-
return slice(accountHash, 12, 32);
|
|
126
|
-
}
|
|
127
|
-
function getEip712Domain(config, chain) {
|
|
128
|
-
if (config.initData) {
|
|
129
|
-
throw new Eip712DomainNotAvailableError('Existing HCA accounts are not yet supported');
|
|
130
|
-
}
|
|
131
|
-
return {
|
|
132
|
-
name: 'Nexus',
|
|
133
|
-
version: HCA_VERSION,
|
|
134
|
-
chainId: chain.id,
|
|
135
|
-
verifyingContract: getAddress(config),
|
|
136
|
-
salt: zeroHash,
|
|
137
|
-
};
|
|
138
|
-
}
|
|
139
|
-
function getInstallData(module) {
|
|
140
|
-
return getNexusInstallData(module);
|
|
141
|
-
}
|
|
142
|
-
async function packSignature(signature, validator, transformSignature = (signature) => signature) {
|
|
143
|
-
return packNexusSignature(signature, validator, transformSignature, ENS_HCA_MODULE);
|
|
144
|
-
}
|
|
145
|
-
async function getSmartAccount(client, address, owners, validatorAddress, sign) {
|
|
146
|
-
return getNexusSmartAccount(client, address, owners, validatorAddress, sign, ENS_HCA_MODULE);
|
|
147
|
-
}
|
|
148
|
-
export { ENS_HCA_MODULE, getEip712Domain, getInstallData, getAddress, packSignature, getDeployArgs, getSmartAccount, };
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { type Account, type Address, type Chain, type HashTypedDataParameters, type Hex, type PublicClient, type TypedData } from 'viem';
|
|
2
|
-
import type { WebAuthnAccount } from 'viem/account-abstraction';
|
|
3
|
-
import { type Module } from '../modules/common.js';
|
|
4
|
-
import type { ResolvedSessionSignerSet } from '../modules/validators/smart-sessions.js';
|
|
5
|
-
import type { AccountProviderConfig, Call, RhinestoneConfig, SignerSet } from '../types.js';
|
|
6
|
-
import { AccountConfigurationNotSupportedError, AccountError, DefaultValidatorAlreadyInitializedError, Eip712DomainNotAvailableError, Eip7702AccountMustHaveEoaError, Eip7702NotSupportedForAccountError, EoaAccountMustHaveAccountError, EoaSigningMethodNotConfiguredError, EoaSigningNotSupportedError, FactoryArgsNotAvailableError, isAccountError, ModuleInstallationNotSupportedError, OwnersFieldRequiredError, SigningNotSupportedForAccountError, WalletClientNoConnectedAccountError } from './error.js';
|
|
7
|
-
import { type ValidatorConfig } from './utils.js';
|
|
8
|
-
type InternalSignerSet = SignerSet | ResolvedSessionSignerSet;
|
|
9
|
-
declare function getInitCode(config: RhinestoneConfig): {
|
|
10
|
-
address: Address;
|
|
11
|
-
} | {
|
|
12
|
-
factory: `0x${string}`;
|
|
13
|
-
factoryData: `0x${string}`;
|
|
14
|
-
} | undefined;
|
|
15
|
-
declare function getV0InitCode(config: RhinestoneConfig): {
|
|
16
|
-
address: Address;
|
|
17
|
-
} | {
|
|
18
|
-
factory: `0x${string}`;
|
|
19
|
-
factoryData: `0x${string}`;
|
|
20
|
-
} | undefined;
|
|
21
|
-
declare function signEip7702InitData(config: RhinestoneConfig): Promise<`0x${string}`>;
|
|
22
|
-
declare function getEip7702InitCall(config: RhinestoneConfig, signature: Hex): {
|
|
23
|
-
initData: `0x${string}`;
|
|
24
|
-
contract: `0x${string}`;
|
|
25
|
-
};
|
|
26
|
-
declare function getEip712Domain(config: RhinestoneConfig, chain: Chain): {
|
|
27
|
-
name: string;
|
|
28
|
-
version: string;
|
|
29
|
-
chainId: number;
|
|
30
|
-
verifyingContract: `0x${string}`;
|
|
31
|
-
salt: "0x0000000000000000000000000000000000000000000000000000000000000000";
|
|
32
|
-
};
|
|
33
|
-
declare function getModuleInstallationCalls(config: RhinestoneConfig, module: Module): Call[];
|
|
34
|
-
declare function getValidatorInstallationCalls(config: RhinestoneConfig, chain: Chain, module: Module): Promise<Call[]>;
|
|
35
|
-
declare function getModuleUninstallationCalls(config: RhinestoneConfig, chain: Chain, module: Module): Promise<Call[]>;
|
|
36
|
-
declare function getAddress(config: RhinestoneConfig): `0x${string}`;
|
|
37
|
-
declare function checkAddress(config: RhinestoneConfig): boolean;
|
|
38
|
-
declare function packAccountSignature(config: RhinestoneConfig, signature: Hex, validator: ValidatorConfig, transformSignature?: (signature: Hex) => Hex): Promise<Hex>;
|
|
39
|
-
declare function getEip1271Signature(config: RhinestoneConfig, signers: InternalSignerSet | undefined, chain: Chain, validator: ValidatorConfig, hash: Hex, transformSignature?: (signature: Hex) => Hex): Promise<Hex>;
|
|
40
|
-
declare function getEmissarySignature(config: RhinestoneConfig, signers: InternalSignerSet | undefined, chain: Chain, hash: Hex, transformSignature?: (signature: Hex) => Hex): Promise<Hex>;
|
|
41
|
-
declare function getTypedDataPackedSignature<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(config: RhinestoneConfig, signers: InternalSignerSet | undefined, chain: Chain, validator: ValidatorConfig, parameters: HashTypedDataParameters<typedData, primaryType>, transformSignature?: (signature: Hex) => Hex): Promise<Hex>;
|
|
42
|
-
declare function getOwnerEcdsaSignature<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(config: RhinestoneConfig, chain: Chain, parameters: HashTypedDataParameters<typedData, primaryType>, owner: Account, module: Address | undefined, validatorSupportsEip712: boolean): Promise<Hex>;
|
|
43
|
-
declare function getOwnerPasskeySignature<typedData extends TypedData | Record<string, unknown> = TypedData, primaryType extends keyof typedData | 'EIP712Domain' = keyof typedData>(config: RhinestoneConfig, parameters: HashTypedDataParameters<typedData, primaryType>, owner: WebAuthnAccount, validatorSupportsEip712: boolean): Promise<{
|
|
44
|
-
webauthn: {
|
|
45
|
-
authenticatorData: Hex;
|
|
46
|
-
clientDataJSON: string;
|
|
47
|
-
challengeIndex?: number | undefined;
|
|
48
|
-
typeIndex?: number | undefined;
|
|
49
|
-
userVerificationRequired?: boolean | undefined;
|
|
50
|
-
};
|
|
51
|
-
signature: Hex;
|
|
52
|
-
}>;
|
|
53
|
-
declare function isDeployed(config: RhinestoneConfig, chain: Chain): Promise<boolean>;
|
|
54
|
-
declare function deploy(config: RhinestoneConfig, chain: Chain, params?: {
|
|
55
|
-
sponsored?: boolean;
|
|
56
|
-
eip7702InitSignature?: Hex;
|
|
57
|
-
}): Promise<boolean>;
|
|
58
|
-
declare function setup(config: RhinestoneConfig, chain: Chain): Promise<boolean>;
|
|
59
|
-
declare function toErc6492Signature(config: RhinestoneConfig, signature: Hex, chain: Chain): Promise<Hex>;
|
|
60
|
-
declare function getSmartAccount(config: RhinestoneConfig, client: PublicClient, chain: Chain): Promise<import("viem/account-abstraction").SmartAccount<import("viem/account-abstraction").SmartAccountImplementation<import("viem").Abi, "0.7">> | undefined>;
|
|
61
|
-
declare function is7702(config: RhinestoneConfig): boolean;
|
|
62
|
-
declare function getAccountProvider(config: RhinestoneConfig): AccountProviderConfig;
|
|
63
|
-
export { getEip712Domain, getModuleInstallationCalls, getValidatorInstallationCalls, getModuleUninstallationCalls, getAddress, checkAddress, getAccountProvider, getInitCode, getV0InitCode, signEip7702InitData, getEip7702InitCall, is7702, isDeployed, deploy, setup, toErc6492Signature, getSmartAccount, getEip1271Signature, getEmissarySignature, getOwnerEcdsaSignature, getOwnerPasskeySignature, getTypedDataPackedSignature, packAccountSignature, isAccountError, AccountError, AccountConfigurationNotSupportedError, DefaultValidatorAlreadyInitializedError, Eip712DomainNotAvailableError, Eip7702AccountMustHaveEoaError, Eip7702NotSupportedForAccountError, EoaAccountMustHaveAccountError, EoaSigningMethodNotConfiguredError, EoaSigningNotSupportedError, FactoryArgsNotAvailableError, ModuleInstallationNotSupportedError, OwnersFieldRequiredError, SigningNotSupportedForAccountError, WalletClientNoConnectedAccountError, };
|
|
64
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../accounts/index.ts"],"names":[],"mappings":"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"}
|