@rhinestone/sdk 2.0.0-beta.29 → 2.0.0-beta.30

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/dist/src/accounts/error.d.ts +1 -15
  2. package/dist/src/accounts/error.d.ts.map +1 -1
  3. package/dist/src/accounts/error.js +1 -17
  4. package/dist/src/accounts/hca.d.ts +1 -2
  5. package/dist/src/accounts/hca.d.ts.map +1 -1
  6. package/dist/src/accounts/hca.js +9 -13
  7. package/dist/src/accounts/index.d.ts +3 -4
  8. package/dist/src/accounts/index.d.ts.map +1 -1
  9. package/dist/src/accounts/index.js +8 -41
  10. package/dist/src/accounts/kernel.d.ts +1 -2
  11. package/dist/src/accounts/kernel.d.ts.map +1 -1
  12. package/dist/src/accounts/kernel.js +1 -8
  13. package/dist/src/accounts/nexus.d.ts +1 -2
  14. package/dist/src/accounts/nexus.d.ts.map +1 -1
  15. package/dist/src/accounts/nexus.js +1 -8
  16. package/dist/src/accounts/safe.d.ts +1 -2
  17. package/dist/src/accounts/safe.d.ts.map +1 -1
  18. package/dist/src/accounts/safe.js +3 -9
  19. package/dist/src/accounts/signing/common.d.ts +1 -4
  20. package/dist/src/accounts/signing/common.d.ts.map +1 -1
  21. package/dist/src/accounts/signing/common.js +3 -7
  22. package/dist/src/accounts/signing/message.d.ts.map +1 -1
  23. package/dist/src/accounts/signing/message.js +1 -4
  24. package/dist/src/accounts/signing/typedData.d.ts.map +1 -1
  25. package/dist/src/accounts/signing/typedData.js +1 -4
  26. package/dist/src/accounts/startale.d.ts +1 -2
  27. package/dist/src/accounts/startale.d.ts.map +1 -1
  28. package/dist/src/accounts/startale.js +2 -5
  29. package/dist/src/actions/smart-sessions.d.ts +15 -81
  30. package/dist/src/actions/smart-sessions.d.ts.map +1 -1
  31. package/dist/src/actions/smart-sessions.js +18 -90
  32. package/dist/src/errors/index.d.ts +3 -3
  33. package/dist/src/errors/index.d.ts.map +1 -1
  34. package/dist/src/errors/index.js +4 -4
  35. package/dist/src/execution/error.d.ts +1 -15
  36. package/dist/src/execution/error.d.ts.map +1 -1
  37. package/dist/src/execution/error.js +1 -17
  38. package/dist/src/execution/index.d.ts +4 -3
  39. package/dist/src/execution/index.d.ts.map +1 -1
  40. package/dist/src/execution/index.js +5 -11
  41. package/dist/src/execution/utils.d.ts +2 -2
  42. package/dist/src/execution/utils.d.ts.map +1 -1
  43. package/dist/src/execution/utils.js +10 -22
  44. package/dist/src/index.d.ts +5 -13
  45. package/dist/src/index.d.ts.map +1 -1
  46. package/dist/src/index.js +11 -10
  47. package/dist/src/modules/index.d.ts.map +1 -1
  48. package/dist/src/modules/index.js +0 -5
  49. package/dist/src/modules/validators/core.d.ts +3 -4
  50. package/dist/src/modules/validators/core.d.ts.map +1 -1
  51. package/dist/src/modules/validators/core.js +20 -31
  52. package/dist/src/modules/validators/cross-chain-permits.d.ts +11 -0
  53. package/dist/src/modules/validators/cross-chain-permits.d.ts.map +1 -0
  54. package/dist/src/modules/validators/cross-chain-permits.js +76 -0
  55. package/dist/src/modules/validators/permissions.d.ts.map +1 -1
  56. package/dist/src/modules/validators/permissions.js +2 -3
  57. package/dist/src/modules/validators/smart-sessions.d.ts +5 -1
  58. package/dist/src/modules/validators/smart-sessions.d.ts.map +1 -1
  59. package/dist/src/modules/validators/smart-sessions.js +66 -2
  60. package/dist/src/orchestrator/client.d.ts.map +1 -1
  61. package/dist/src/orchestrator/client.js +12 -0
  62. package/dist/src/orchestrator/consts.d.ts +1 -1
  63. package/dist/src/orchestrator/consts.js +1 -1
  64. package/dist/src/orchestrator/index.d.ts +2 -2
  65. package/dist/src/orchestrator/index.d.ts.map +1 -1
  66. package/dist/src/orchestrator/types.d.ts +13 -1
  67. package/dist/src/orchestrator/types.d.ts.map +1 -1
  68. package/dist/src/smart-sessions/index.d.ts +5 -0
  69. package/dist/src/smart-sessions/index.d.ts.map +1 -0
  70. package/dist/src/smart-sessions/index.js +6 -0
  71. package/dist/src/types.d.ts +81 -26
  72. package/dist/src/types.d.ts.map +1 -1
  73. package/package.json +3 -7
  74. package/dist/src/actions/recovery.d.ts +0 -33
  75. package/dist/src/actions/recovery.d.ts.map +0 -1
  76. package/dist/src/actions/recovery.js +0 -189
@@ -1,13 +1,13 @@
1
1
  import type { Address, Chain, HashTypedDataParameters, Hex, SignableMessage, SignedAuthorizationList, TypedData, TypedDataDefinition } from 'viem';
2
2
  import type { UserOperationReceipt } from 'viem/account-abstraction';
3
- import { createCrossChainPermission } from './actions/smart-sessions.js';
4
3
  import { type TransactionResult, type TransactionStatus, type UserOperationResult } from './execution/index.js';
5
4
  import { type PreparedQuotes, type PreparedTransactionData, type PreparedUserOperationData, type QuoteSelection, type SignedTransactionData, type SignedUserOperationData } from './execution/utils.js';
6
5
  import { MULTI_FACTOR_VALIDATOR_ADDRESS, OWNABLE_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, WEBAUTHN_VALIDATOR_ADDRESS } from './modules/index.js';
7
6
  import { type SessionDetails } from './modules/validators/smart-sessions.js';
8
7
  import type { ApprovalRequired, AuxiliaryFunds, BridgeFill, ChainOperation, DestinationChain, FailureReason, IntentInput, IntentOpStatus, NonEvmAddress, NonEvmChain, OperationStatus, OriginSignature, Portfolio, Quote, SettlementLayer, SettlementLayerFilter, SignData, SplitIntentsInput, SplitIntentsResult, TokenRequirements, WrapRequired } from './orchestrator/index.js';
8
+ export type { AppFee, AppFeeRate } from './orchestrator/index.js';
9
9
  import { hyperCoreMainnet, solanaMainnet, tronMainnet } from './orchestrator/index.js';
10
- import type { AccountProviderConfig, AccountType, BundlerConfig, Call, CallInput, ChainSessionConfig, CrossChainPermit, CrossChainSettlementLayer, MultiFactorValidatorConfig, NonEvmTokenRequest, NonEvmTokenRequests, OwnableValidatorConfig, OwnerSet, ParamConstraint, PaymasterConfig, Permission, PermissionFunctionConfig, Permit2ClaimPolicy, Policy, ProviderConfig, Recovery, RhinestoneAccountConfig, RhinestoneConfig, RhinestoneSDKConfig, Session, SessionDefinition, SignerSet, SourceCallInput, SourceCallProvidedFunds, TokenRequest, TokenSymbol, Transaction, UniversalActionPolicyParamCondition, UserOperationTransaction, WebauthnValidatorConfig } from './types.js';
10
+ import type { AccountProviderConfig, AccountType, BundlerConfig, Call, CallInput, ChainSessionConfig, CrossChainPermissionInput, CrossChainPermit, CrossChainSettlementLayer, FromLeg, MultiFactorValidatorConfig, NonEvmTokenRequest, NonEvmTokenRequests, OwnableValidatorConfig, OwnerSet, ParamConstraint, PaymasterConfig, Permission, PermissionFunctionConfig, Permit2ClaimPolicy, Policy, ProviderConfig, RhinestoneAccountConfig, RhinestoneSDKConfig, Session, SessionDefinition, SignerSet, SourceCallInput, SourceCallProvidedFunds, TokenRequest, TokenSymbol, ToLeg, Transaction, UniversalActionPolicyParamCondition, UserOperationTransaction, WebauthnValidatorConfig } from './types.js';
11
11
  interface SubmitTransactionOptions {
12
12
  authorizations?: SignedAuthorizationList;
13
13
  /**
@@ -23,11 +23,10 @@ interface RhinestoneAccount {
23
23
  /**
24
24
  * Deploy the account on a given chain.
25
25
  * @param chain Chain to deploy the account on
26
- * @param params Optional deployment parameters (session, sponsorship)
26
+ * @param params Optional deployment parameters (sponsorship)
27
27
  * @returns `true` once the deployment is submitted
28
28
  */
29
29
  deploy(chain: Chain, params?: {
30
- session?: Session;
31
30
  sponsored?: boolean;
32
31
  }): Promise<boolean>;
33
32
  /**
@@ -228,13 +227,6 @@ interface SignedIntentData {
228
227
  destinationSignature: Hex;
229
228
  targetExecutionSignature: Hex | undefined;
230
229
  }
231
- /**
232
- * Initialize a Rhinestone account
233
- * Note: accounts are deployed onchain only when the first transaction is sent.
234
- * @param config Account config (e.g. implementation vendor, owner signers, smart sessions)
235
- * @returns account
236
- */
237
- declare function createRhinestoneAccount(config: RhinestoneConfig): Promise<RhinestoneAccount>;
238
230
  /**
239
231
  * Stateful entry point that holds shared configuration (auth, provider, bundler,
240
232
  * paymaster) and creates accounts from it.
@@ -286,6 +278,6 @@ declare class RhinestoneSDK {
286
278
  */
287
279
  splitIntents(input: SplitIntentsInput): Promise<SplitIntentsResult>;
288
280
  }
289
- export { RhinestoneSDK, createRhinestoneAccount, hyperCoreMainnet, solanaMainnet, tronMainnet, OWNABLE_VALIDATOR_ADDRESS, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, createCrossChainPermission, };
290
- export type { RhinestoneAccount, AccountType, RhinestoneAccountConfig, AccountProviderConfig, ProviderConfig, BundlerConfig, PaymasterConfig, Transaction, TokenSymbol, CallInput, Call, TokenRequest, NonEvmTokenRequest, NonEvmTokenRequests, NonEvmAddress, OwnerSet, OwnableValidatorConfig, WebauthnValidatorConfig, MultiFactorValidatorConfig, SignerSet, SourceCallInput, SourceCallProvidedFunds, ChainSessionConfig, Session, SessionDefinition, Recovery, Permission, PermissionFunctionConfig, ParamConstraint, Policy, Permit2ClaimPolicy, CrossChainPermit, CrossChainSettlementLayer, UniversalActionPolicyParamCondition, PreparedQuotes, PreparedTransactionData, Quote, QuoteSelection, SignedTransactionData, TransactionResult, PreparedUserOperationData, SignedUserOperationData, UserOperationResult, AuxiliaryFunds, BridgeFill, DestinationChain, NonEvmChain, IntentInput, IntentOpStatus, SettlementLayer, SettlementLayerFilter, SplitIntentsInput, SplitIntentsResult, Portfolio, TokenRequirements, WrapRequired, ApprovalRequired, OriginSignature, SignData, SignedIntentData, OperationStatus, FailureReason, ChainOperation, };
281
+ export { RhinestoneSDK, hyperCoreMainnet, solanaMainnet, tronMainnet, OWNABLE_VALIDATOR_ADDRESS, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, };
282
+ export type { RhinestoneAccount, AccountType, RhinestoneAccountConfig, AccountProviderConfig, ProviderConfig, BundlerConfig, PaymasterConfig, Transaction, TokenSymbol, CallInput, Call, TokenRequest, NonEvmTokenRequest, NonEvmTokenRequests, NonEvmAddress, OwnerSet, OwnableValidatorConfig, WebauthnValidatorConfig, MultiFactorValidatorConfig, SignerSet, SourceCallInput, SourceCallProvidedFunds, ChainSessionConfig, Session, SessionDefinition, Permission, PermissionFunctionConfig, ParamConstraint, Policy, Permit2ClaimPolicy, CrossChainPermissionInput, CrossChainPermit, FromLeg, ToLeg, CrossChainSettlementLayer, UniversalActionPolicyParamCondition, PreparedQuotes, PreparedTransactionData, Quote, QuoteSelection, SignedTransactionData, TransactionResult, PreparedUserOperationData, SignedUserOperationData, UserOperationResult, AuxiliaryFunds, BridgeFill, DestinationChain, NonEvmChain, IntentInput, IntentOpStatus, SettlementLayer, SettlementLayerFilter, SplitIntentsInput, SplitIntentsResult, Portfolio, TokenRequirements, WrapRequired, ApprovalRequired, OriginSignature, SignData, SignedIntentData, OperationStatus, FailureReason, ChainOperation, };
291
283
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"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"}
package/dist/src/index.js CHANGED
@@ -1,5 +1,4 @@
1
1
  import { checkAddress, deploy as deployInternal, FactoryArgsNotAvailableError, getAccountProvider, getAddress as getAddressInternal, getInitCode, isDeployed as isDeployedInternal, OwnersFieldRequiredError, setup as setupInternal, signEip7702InitData as signEip7702InitDataInternal, } from './accounts/index.js';
2
- import { createCrossChainPermission } from './actions/smart-sessions.js';
3
2
  import { createAuthProvider } from './auth/provider.js';
4
3
  import { getIntentStatus as getIntentStatusInternal, getPortfolio as getPortfolioInternal, sendUserOperation as sendUserOperationInternal, splitIntents as splitIntentsInternal, waitForExecution as waitForExecutionInternal, } from './execution/index.js';
5
4
  import { getTargetExecutionSignature as getTargetExecutionSignatureInternal, getTransactionMessages as getTransactionMessagesInternal, prepareTransaction as prepareTransactionInternal, prepareUserOperation as prepareUserOperationInternal, signAuthorizations as signAuthorizationsInternal, signIntent as signIntentInternal, signMessage as signMessageInternal, signTransaction as signTransactionInternal, signTypedData as signTypedDataInternal, signUserOperation as signUserOperationInternal, submitTransaction as submitTransactionInternal, submitUserOperation as submitUserOperationInternal, } from './execution/utils.js';
@@ -7,12 +6,11 @@ import { getExecutors as getExecutorsInternal, getOwners as getOwnersInternal, g
7
6
  import { isSessionEnabled as isSessionEnabledInternal, } from './modules/validators/smart-sessions.js';
8
7
  import { hyperCoreMainnet, solanaMainnet, tronMainnet } from './orchestrator/index.js';
9
8
  /**
10
- * Initialize a Rhinestone account
9
+ * Initialize a Rhinestone account from a fully-resolved config.
11
10
  * Note: accounts are deployed onchain only when the first transaction is sent.
12
- * @param config Account config (e.g. implementation vendor, owner signers, smart sessions)
13
- * @returns account
11
+ * @internal Use {@link RhinestoneSDK.createAccount} instead.
14
12
  */
15
- async function createRhinestoneAccount(config) {
13
+ async function createAccountInternal(config) {
16
14
  // Sanity check for existing (externally created) accounts
17
15
  // Ensures we decode the initdata correctly
18
16
  checkAddress(config);
@@ -20,6 +18,11 @@ async function createRhinestoneAccount(config) {
20
18
  if (config.account?.type !== 'eoa' && !config.owners) {
21
19
  throw new OwnersFieldRequiredError();
22
20
  }
21
+ /**
22
+ * Deploys the account on a given chain
23
+ * @param chain Chain to deploy the account on
24
+ * @param params Optional deployment params (e.g. `sponsored`)
25
+ */
23
26
  function deploy(chain, params) {
24
27
  return deployInternal(config, chain, params);
25
28
  }
@@ -208,7 +211,7 @@ class RhinestoneSDK {
208
211
  useDevContracts: this.useDevContracts,
209
212
  headers: this.headers,
210
213
  };
211
- return createRhinestoneAccount(rhinestoneConfig);
214
+ return createAccountInternal(rhinestoneConfig);
212
215
  }
213
216
  /**
214
217
  * Get the current status of a submitted intent.
@@ -227,10 +230,8 @@ class RhinestoneSDK {
227
230
  return splitIntentsInternal(this.authProvider, this.endpointUrl, input, this.headers);
228
231
  }
229
232
  }
230
- export { RhinestoneSDK, createRhinestoneAccount,
233
+ export { RhinestoneSDK,
231
234
  // Non-viem destination chain descriptors (Solana, Tron, HyperCore)
232
235
  hyperCoreMainnet, solanaMainnet, tronMainnet,
233
236
  // Validator addresses
234
- OWNABLE_VALIDATOR_ADDRESS, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS,
235
- // Cross-chain session permissions
236
- createCrossChainPermission, };
237
+ OWNABLE_VALIDATOR_ADDRESS, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,KAAK,EAAuB,MAAM,MAAM,CAAA;AAcpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAKhD,OAAO,EAQL,KAAK,WAAW,EAChB,KAAK,MAAM,EACZ,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAC/D,OAAO,EACL,iBAAiB,EAEjB,8BAA8B,EAC9B,yBAAyB,EACzB,8BAA8B,EAC9B,0BAA0B,EAC3B,MAAM,cAAc,CAAA;AAErB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACV,MAAM,6BAA6B,CAAA;AAKpC,iBAAS,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,WAAW,CA0EvD;AAED,iBAAS,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAY3D;AAED,iBAAS,yBAAyB,CAAC,KAAK,EAAE,KAAK,WAc9C;AAED,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,QAAQ,EACR,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,GACV,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../modules/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,KAAK,EAAuB,MAAM,MAAM,CAAA;AAcpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAKhD,OAAO,EAQL,KAAK,WAAW,EAChB,KAAK,MAAM,EACZ,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAC/D,OAAO,EACL,iBAAiB,EAEjB,8BAA8B,EAC9B,yBAAyB,EACzB,8BAA8B,EAC9B,0BAA0B,EAC3B,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,EACV,MAAM,6BAA6B,CAAA;AAKpC,iBAAS,QAAQ,CAAC,MAAM,EAAE,gBAAgB,GAAG,WAAW,CAmEvD;AAED,iBAAS,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAY3D;AAED,iBAAS,yBAAyB,CAAC,KAAK,EAAE,KAAK,WAc9C;AAED,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,8BAA8B,EAC9B,8BAA8B,EAC9B,QAAQ,EACR,iBAAiB,EACjB,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,yBAAyB,EACzB,iBAAiB,EACjB,iBAAiB,EACjB,SAAS,GACV,CAAA"}
@@ -4,7 +4,6 @@ import { INTENT_EXECUTOR_ADDRESS, INTENT_EXECUTOR_ADDRESS_DEV, } from './chain-a
4
4
  import { getModule, MODULE_TYPE_EXECUTOR, MODULE_TYPE_FALLBACK, MODULE_TYPE_HOOK, MODULE_TYPE_ID_EXECUTOR, MODULE_TYPE_ID_FALLBACK, MODULE_TYPE_VALIDATOR, } from './common.js';
5
5
  import { getExecutors, getOwners, getValidators } from './read.js';
6
6
  import { getOwnerValidator, getSmartSessionValidator, MULTI_FACTOR_VALIDATOR_ADDRESS, OWNABLE_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, WEBAUTHN_VALIDATOR_ADDRESS, } from './validators/index.js';
7
- import { getSocialRecoveryValidator } from './validators/core.js';
8
7
  import { getSessionDetails, signEnableSession, toSession, } from './validators/smart-sessions.js';
9
8
  const SMART_SESSION_COMPATIBILITY_FALLBACK_ADDRESS = '0x000000000052e9685932845660777DF43C2dC496';
10
9
  function getSetup(config) {
@@ -14,10 +13,6 @@ function getSetup(config) {
14
13
  if (smartSessionValidator) {
15
14
  validators.push(smartSessionValidator);
16
15
  }
17
- if (config.recovery) {
18
- const socialRecoveryValidator = getSocialRecoveryValidator(config.recovery.guardians, config.recovery.threshold);
19
- validators.push(socialRecoveryValidator);
20
- }
21
16
  const intentExecutor = getIntentExecutor(config);
22
17
  const executors = [intentExecutor];
23
18
  const fallbacks = [];
@@ -1,4 +1,4 @@
1
- import { type Account, type Address, type Hex } from 'viem';
1
+ import { type Address, type Hex } from 'viem';
2
2
  import type { ENSValidatorConfig, OwnableValidatorConfig, OwnerSet, RhinestoneAccountConfig, WebauthnValidatorConfig } from '../../types.js';
3
3
  import { type Module } from '../common.js';
4
4
  declare const SMART_SESSION_EMISSARY_ADDRESS_DEV: Address;
@@ -22,11 +22,10 @@ declare function getOwnerValidator(config: RhinestoneAccountConfig): Module;
22
22
  declare function getMockSignature(ownerSet: OwnerSet): Hex;
23
23
  declare function getValidator(owners: OwnerSet): Module;
24
24
  declare function getOwnableValidator(threshold: number, owners: Address[], address?: Address): Module;
25
- declare function getENSValidator(threshold: number, owners: Address[], ownerExpirations: number[], address?: Address): Module;
25
+ declare function getENSValidator(threshold: number, owners: Address[], expirations: (Date | undefined)[], address?: Address): Module;
26
26
  declare function getWebAuthnValidator(threshold: number, webAuthnCredentials: WebauthnCredential[], address?: Address): Module;
27
27
  declare function getMultiFactorValidator(threshold: number, validators: (OwnableValidatorConfig | ENSValidatorConfig | WebauthnValidatorConfig | null)[]): Module;
28
- declare function getSocialRecoveryValidator(guardians: Account[], threshold?: number): Module;
29
28
  declare function supportsEip712(validator: Module): boolean;
30
- export { OWNABLE_VALIDATOR_ADDRESS, ENS_HCA_MODULE, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, WEBAUTHN_V0_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, getOwnerValidator, getOwnableValidator, getENSValidator, getWebAuthnValidator, getMultiFactorValidator, getSocialRecoveryValidator, getValidator, getMockSignature, supportsEip712, ownerSetUsesEns, };
29
+ export { OWNABLE_VALIDATOR_ADDRESS, ENS_HCA_MODULE, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, WEBAUTHN_V0_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, getOwnerValidator, getOwnableValidator, getENSValidator, getWebAuthnValidator, getMultiFactorValidator, getValidator, getMockSignature, supportsEip712, ownerSetUsesEns, };
31
30
  export type { WebauthnCredential };
32
31
  //# sourceMappingURL=core.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../modules/validators/core.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EAKZ,KAAK,GAAG,EAKT,MAAM,MAAM,CAAA;AAMb,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,QAAQ,EACR,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,WAAW,CAAA;AAEjE,QAAA,MAAM,kCAAkC,EAAE,OACI,CAAA;AAC9C,QAAA,MAAM,8BAA8B,EAAE,OACQ,CAAA;AAE9C,UAAU,SAAS;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,UAAU,kBAAkB;IAC1B,MAAM,EAAE,SAAS,GAAG,GAAG,GAAG,UAAU,CAAA;IACpC,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,QAAA,MAAM,yBAAyB,EAAE,OACa,CAAA;AAC9C,QAAA,MAAM,cAAc,EAAE,OAAsD,CAAA;AAC5E,QAAA,MAAM,0BAA0B,EAAE,OACY,CAAA;AAG9C,QAAA,MAAM,8BAA8B,EAAE,OACQ,CAAA;AAO9C,QAAA,MAAM,6BAA6B,EAAE,OACS,CAAA;AAU9C,iBAAS,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAMlD;AAED,iBAAS,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,UA2BzD;AAED,iBAAS,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAmDjD;AAED,iBAAS,YAAY,CAAC,MAAM,EAAE,QAAQ,UA2BrC;AAED,iBAAS,mBAAmB,CAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CAiBR;AAED,iBAAS,eAAe,CACtB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,EAAE,EACjB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CAsCR;AAED,iBAAS,oBAAoB,CAC3B,SAAS,EAAE,MAAM,EACjB,mBAAmB,EAAE,kBAAkB,EAAE,EACzC,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CA4DR;AAED,iBAAS,uBAAuB,CAC9B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CACR,sBAAsB,GACtB,kBAAkB,GAClB,uBAAuB,GACvB,IAAI,CACP,EAAE,GACF,MAAM,CAgDR;AAED,iBAAS,0BAA0B,CACjC,SAAS,EAAE,OAAO,EAAE,EACpB,SAAS,SAAI,GACZ,MAAM,CAsBR;AAeD,iBAAS,cAAc,CAAC,SAAS,EAAE,MAAM,WAUxC;AAED,OAAO,EACL,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,kCAAkC,EAClC,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,0BAA0B,EAC1B,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,CAAA;AACD,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../modules/validators/core.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EAKZ,KAAK,GAAG,EAKT,MAAM,MAAM,CAAA;AAMb,OAAO,KAAK,EACV,kBAAkB,EAClB,sBAAsB,EACtB,QAAQ,EACR,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,aAAa,CAAA;AAEpB,OAAO,EAA4B,KAAK,MAAM,EAAE,MAAM,WAAW,CAAA;AAEjE,QAAA,MAAM,kCAAkC,EAAE,OACI,CAAA;AAC9C,QAAA,MAAM,8BAA8B,EAAE,OACQ,CAAA;AAE9C,UAAU,SAAS;IACjB,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;CACV;AAED,UAAU,kBAAkB;IAC1B,MAAM,EAAE,SAAS,GAAG,GAAG,GAAG,UAAU,CAAA;IACpC,eAAe,EAAE,MAAM,CAAA;CACxB;AAED,QAAA,MAAM,yBAAyB,EAAE,OACa,CAAA;AAC9C,QAAA,MAAM,cAAc,EAAE,OAAsD,CAAA;AAC5E,QAAA,MAAM,0BAA0B,EAAE,OACY,CAAA;AAC9C,QAAA,MAAM,8BAA8B,EAAE,OACQ,CAAA;AAO9C,QAAA,MAAM,6BAA6B,EAAE,OACS,CAAA;AAU9C,iBAAS,eAAe,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAMlD;AAED,iBAAS,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,UA2BzD;AAED,iBAAS,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,GAAG,CAsDjD;AAED,iBAAS,YAAY,CAAC,MAAM,EAAE,QAAQ,UA2BrC;AAED,iBAAS,mBAAmB,CAC1B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,EAAE,EACjB,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CAiBR;AAED,iBAAS,eAAe,CACtB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,OAAO,EAAE,EACjB,WAAW,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,EAAE,EACjC,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CA8CR;AAED,iBAAS,oBAAoB,CAC3B,SAAS,EAAE,MAAM,EACjB,mBAAmB,EAAE,kBAAkB,EAAE,EACzC,OAAO,CAAC,EAAE,OAAO,GAChB,MAAM,CA4DR;AAED,iBAAS,uBAAuB,CAC9B,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,CACR,sBAAsB,GACtB,kBAAkB,GAClB,uBAAuB,GACvB,IAAI,CACP,EAAE,GACF,MAAM,CAgDR;AAeD,iBAAS,cAAc,CAAC,SAAS,EAAE,MAAM,WAUxC;AAED,OAAO,EACL,yBAAyB,EACzB,cAAc,EACd,0BAA0B,EAC1B,8BAA8B,EAC9B,6BAA6B,EAC7B,8BAA8B,EAC9B,kCAAkC,EAClC,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,YAAY,EACZ,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,CAAA;AACD,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
@@ -6,7 +6,6 @@ const SMART_SESSION_EMISSARY_ADDRESS = '0xad568b3f825a8d5ffc06dd3253526b64d810ae
6
6
  const OWNABLE_VALIDATOR_ADDRESS = '0x000000000013fdb5234e4e3162a810f54d9f7e98';
7
7
  const ENS_HCA_MODULE = '0x5049ecBd4d961aE6DFEED9b7ccCe7f026454970E';
8
8
  const WEBAUTHN_VALIDATOR_ADDRESS = '0x0000000000578c4cb0e472a5462da43c495c3f33';
9
- const SOCIAL_RECOVERY_VALIDATOR_ADDRESS = '0xa04d053b3c8021e8d5bf641816c42daa75d8b597';
10
9
  const MULTI_FACTOR_VALIDATOR_ADDRESS = '0xf6bdf42c9be18ceca5c06c42a43daf7fbbe7896b';
11
10
  // Legacy
12
11
  const OWNABLE_V0_VALIDATOR_ADDRESS = '0x2483da3a338895199e5e538530213157e931bf06';
@@ -44,13 +43,16 @@ function getOwnerValidator(config) {
44
43
  }
45
44
  function getMockSignature(ownerSet) {
46
45
  switch (ownerSet.type) {
47
- case 'ecdsa':
48
- case 'ens': {
49
- // ENS validator uses same mock signature format as ECDSA for UserOps
46
+ case 'ecdsa': {
50
47
  const owners = ownerSet.accounts.map((account) => account.address);
51
48
  const signatures = owners.map(() => ECDSA_MOCK_SIGNATURE);
52
49
  return concat(signatures);
53
50
  }
51
+ case 'ens': {
52
+ // ENS validator uses same mock signature format as ECDSA for UserOps
53
+ const signatures = ownerSet.owners.map(() => ECDSA_MOCK_SIGNATURE);
54
+ return concat(signatures);
55
+ }
54
56
  case 'passkey':
55
57
  return WEBAUTHN_MOCK_SIGNATURE;
56
58
  case 'multi-factor': {
@@ -89,7 +91,7 @@ function getValidator(owners) {
89
91
  case 'ecdsa':
90
92
  return getOwnableValidator(owners.threshold ?? 1, owners.accounts.map((account) => account.address), owners.module);
91
93
  case 'ens':
92
- return getENSValidator(owners.threshold ?? 1, owners.accounts.map((account) => account.address), owners.ownerExpirations, owners.module);
94
+ return getENSValidator(owners.threshold ?? 1, owners.owners.map((o) => o.account.address), owners.owners.map((o) => o.expiration), owners.module);
93
95
  case 'passkey':
94
96
  return getWebAuthnValidator(owners.threshold ?? 1, owners.accounts.map((account) => ({
95
97
  pubKey: account.publicKey,
@@ -115,13 +117,20 @@ function getOwnableValidator(threshold, owners, address) {
115
117
  type: MODULE_TYPE_ID_VALIDATOR,
116
118
  };
117
119
  }
118
- function getENSValidator(threshold, owners, ownerExpirations, address) {
120
+ function getENSValidator(threshold, owners, expirations, address) {
119
121
  // format: (uint256 threshold, Owner[] owners)
120
122
  // where Owner is a tuple of (address addr, uint48 expiration)
121
- const ownerPairs = owners.map((owner, index) => ({
122
- addr: owner.toLowerCase(),
123
- expiration: ownerExpirations[index] ?? maxUint48,
124
- }));
123
+ const ownerPairs = owners.map((owner, index) => {
124
+ const expiration = expirations[index];
125
+ return {
126
+ addr: owner.toLowerCase(),
127
+ // maxUint48 is the on-chain "never expires" sentinel; it's outside the
128
+ // representable Date range, so an omitted expiry maps to it directly.
129
+ expiration: expiration !== undefined
130
+ ? Math.floor(expiration.getTime() / 1000)
131
+ : Number(maxUint48),
132
+ };
133
+ });
125
134
  // Sort by address to match ENS validator's expectations
126
135
  const sortedPairs = ownerPairs.sort((a, b) => a.addr.localeCompare(b.addr));
127
136
  const ownersWithExpiration = sortedPairs;
@@ -243,26 +252,6 @@ function getMultiFactorValidator(threshold, validators) {
243
252
  type: MODULE_TYPE_ID_VALIDATOR,
244
253
  };
245
254
  }
246
- function getSocialRecoveryValidator(guardians, threshold = 1) {
247
- const guardianAddresses = guardians.map((guardian) => guardian.address);
248
- guardianAddresses.sort();
249
- return {
250
- type: MODULE_TYPE_ID_VALIDATOR,
251
- address: SOCIAL_RECOVERY_VALIDATOR_ADDRESS,
252
- initData: encodeAbiParameters([
253
- {
254
- type: 'uint256',
255
- name: 'threshold',
256
- },
257
- {
258
- type: 'address[]',
259
- name: 'guardians',
260
- },
261
- ], [BigInt(threshold), guardianAddresses]),
262
- deInitData: '0x',
263
- additionalContext: '0x',
264
- };
265
- }
266
255
  function parsePublicKey(publicKey) {
267
256
  const bytes = typeof publicKey === 'string' ? hexToBytes(publicKey) : publicKey;
268
257
  const offset = bytes.length === 65 ? 1 : 0;
@@ -285,4 +274,4 @@ function supportsEip712(validator) {
285
274
  return true;
286
275
  }
287
276
  }
288
- export { OWNABLE_VALIDATOR_ADDRESS, ENS_HCA_MODULE, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, WEBAUTHN_V0_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, getOwnerValidator, getOwnableValidator, getENSValidator, getWebAuthnValidator, getMultiFactorValidator, getSocialRecoveryValidator, getValidator, getMockSignature, supportsEip712, ownerSetUsesEns, };
277
+ export { OWNABLE_VALIDATOR_ADDRESS, ENS_HCA_MODULE, WEBAUTHN_VALIDATOR_ADDRESS, MULTI_FACTOR_VALIDATOR_ADDRESS, WEBAUTHN_V0_VALIDATOR_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, getOwnerValidator, getOwnableValidator, getENSValidator, getWebAuthnValidator, getMultiFactorValidator, getValidator, getMockSignature, supportsEip712, ownerSetUsesEns, };
@@ -0,0 +1,11 @@
1
+ import type { CrossChainPermissionInput, CrossChainPermit } from '../../types.js';
2
+ /**
3
+ * Resolve a {@link CrossChainPermissionInput} into a {@link CrossChainPermit}:
4
+ * normalise single/array legs, resolve `TokenSymbol`s to per-chain ERC-20
5
+ * addresses, and convert `Date` validity bounds to unix-seconds.
6
+ *
7
+ * @internal Used by `expandCrossChainPermit`; not part of the public API.
8
+ */
9
+ declare function resolveCrossChainPermission(input: CrossChainPermissionInput): CrossChainPermit;
10
+ export { resolveCrossChainPermission };
11
+ //# sourceMappingURL=cross-chain-permits.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cross-chain-permits.d.ts","sourceRoot":"","sources":["../../../../modules/validators/cross-chain-permits.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,yBAAyB,EACzB,gBAAgB,EAEjB,MAAM,aAAa,CAAA;AAyBpB;;;;;;GAMG;AACH,iBAAS,2BAA2B,CAClC,KAAK,EAAE,yBAAyB,GAC/B,gBAAgB,CA0DlB;AAED,OAAO,EAAE,2BAA2B,EAAE,CAAA"}
@@ -0,0 +1,76 @@
1
+ import { isAddress } from 'viem';
2
+ import { getTokenAddress } from '../../orchestrator/registry.js';
3
+ function dateToUnixSeconds(input) {
4
+ // Date.getTime() returns milliseconds since epoch; the on-chain policy
5
+ // expects unix-seconds. Integer division matches the Permit2 deadline
6
+ // convention.
7
+ return BigInt(Math.floor(input.getTime() / 1000));
8
+ }
9
+ function resolveTokenForChain(token, chainId) {
10
+ return isAddress(token) ? token : getTokenAddress(token, chainId);
11
+ }
12
+ // Normalise the single-object / array / omitted shapes into arrays. An
13
+ // omitted side stays `undefined` (no restriction), mirroring how the
14
+ // underlying Permit2 policy treats an absent token list.
15
+ function normalizeLegs(legs) {
16
+ if (legs === undefined)
17
+ return undefined;
18
+ const arr = Array.isArray(legs) ? legs : [legs];
19
+ return arr.length ? arr : undefined;
20
+ }
21
+ /**
22
+ * Resolve a {@link CrossChainPermissionInput} into a {@link CrossChainPermit}:
23
+ * normalise single/array legs, resolve `TokenSymbol`s to per-chain ERC-20
24
+ * addresses, and convert `Date` validity bounds to unix-seconds.
25
+ *
26
+ * @internal Used by `expandCrossChainPermit`; not part of the public API.
27
+ */
28
+ function resolveCrossChainPermission(input) {
29
+ const fromLegs = normalizeLegs(input.from);
30
+ const toLegs = normalizeLegs(input.to);
31
+ const from = fromLegs?.map((leg) => ({
32
+ chain: leg.chain,
33
+ token: resolveTokenForChain(leg.token, leg.chain.id),
34
+ maxAmount: leg.maxAmount,
35
+ }));
36
+ const to = toLegs?.map((leg) => ({
37
+ chain: leg.chain,
38
+ token: resolveTokenForChain(leg.token, leg.chain.id),
39
+ recipient: leg.recipient,
40
+ }));
41
+ const validUntil = input.validUntil !== undefined
42
+ ? dateToUnixSeconds(input.validUntil)
43
+ : undefined;
44
+ const validAfter = input.validAfter !== undefined
45
+ ? dateToUnixSeconds(input.validAfter)
46
+ : undefined;
47
+ // Detect an obviously-broken time window early. The on-chain policy
48
+ // would reject any intent in this state anyway; surfacing it at build
49
+ // time saves a round-trip to chain.
50
+ if (validUntil !== undefined &&
51
+ validAfter !== undefined &&
52
+ validAfter > validUntil) {
53
+ throw new Error(`crossChainPermits: validAfter (${validAfter}) is greater than validUntil (${validUntil})`);
54
+ }
55
+ const fillDeadline = input.fillDeadline?.map(({ chain, min, max }) => ({
56
+ chain,
57
+ min: min !== undefined ? dateToUnixSeconds(min) : undefined,
58
+ max: max !== undefined ? dateToUnixSeconds(max) : undefined,
59
+ }));
60
+ return {
61
+ from,
62
+ to,
63
+ validUntil,
64
+ validAfter,
65
+ fillDeadline,
66
+ // Inverted default: callers must opt out of bridge-to-self
67
+ // explicitly. This stops a session key from quietly bridging to an
68
+ // attacker-controlled recipient.
69
+ recipientIsAccount: !input.allowRecipientNotAccount,
70
+ // Passed through verbatim. `getArbitersForSettlementLayers` expands
71
+ // undefined/empty to "all supported layers" at session-data build
72
+ // time.
73
+ settlementLayers: input.settlementLayers,
74
+ };
75
+ }
76
+ export { resolveCrossChainPermission };
@@ -1 +1 @@
1
- {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/permissions.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAEV,UAAU,EAEV,YAAY,EAEb,MAAM,aAAa,CAAA;AAiHpB,eAAO,MAAM,aAAa,gBAAoB,CAAA;AAE9C,iBAAS,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY,EAAE,CA4NjE;AAED,iBAAS,kBAAkB,CACzB,WAAW,EAAE,SAAS,UAAU,EAAE,GACjC,YAAY,EAAE,CAEhB;AAED,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/permissions.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAEV,UAAU,EAEV,YAAY,EAEb,MAAM,aAAa,CAAA;AAiHpB,eAAO,MAAM,aAAa,gBAAoB,CAAA;AAE9C,iBAAS,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,YAAY,EAAE,CA0NjE;AAED,iBAAS,kBAAkB,CACzB,WAAW,EAAE,SAAS,UAAU,EAAE,GACjC,YAAY,EAAE,CAEhB;AAED,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,CAAA"}
@@ -109,11 +109,10 @@ function resolvePermission(permission) {
109
109
  policies.push({ type: 'usage-limit', limit: config.maxUses });
110
110
  }
111
111
  if (config.validUntil !== undefined || config.validAfter !== undefined) {
112
- const toMs = (v) => v instanceof Date ? v.getTime() : v;
113
112
  const validUntil = config.validUntil !== undefined
114
- ? toMs(config.validUntil)
113
+ ? config.validUntil.getTime()
115
114
  : FAR_FUTURE_MS;
116
- const validAfter = config.validAfter !== undefined ? toMs(config.validAfter) : 0;
115
+ const validAfter = config.validAfter !== undefined ? config.validAfter.getTime() : 0;
117
116
  if (validUntil < validAfter) {
118
117
  throw new Error(`Function "${fnName}": validUntil (${validUntil}) is before validAfter (${validAfter}).`);
119
118
  }
@@ -184,6 +184,10 @@ declare function getEnableSessionCall(account: Address, session: Session, enable
184
184
  to: `0x${string}`;
185
185
  data: `0x${string}`;
186
186
  }>;
187
+ declare function getDisableSessionCall(account: Address, session: Session, expires: bigint, provider: ProviderConfig | undefined, useDevContracts?: boolean): Promise<{
188
+ to: `0x${string}`;
189
+ data: `0x${string}`;
190
+ }>;
187
191
  declare function toSession<const TAbis extends readonly Abi[]>(definition: SessionDefinition<TAbis>, options?: {
188
192
  useDevContracts?: boolean;
189
193
  }): Session;
@@ -216,6 +220,6 @@ declare function getSmartSessionValidator(config: RhinestoneConfig): Module | nu
216
220
  */
217
221
  type SmartSessionMockShape = 'enable' | 'use' | 'erc1271';
218
222
  declare function buildMockSignature(session: Session, useDevContracts?: boolean, chainCount?: number, targetChainId?: number, shape?: SmartSessionMockShape): Hex;
219
- export { SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION, DUMMY_PRECLAIMOP_TARGET, DUMMY_PRECLAIMOP_SELECTOR, SPENDING_LIMITS_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, ARG_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, packSignature, toSession, resolvePermit2ClaimPolicy, selectPermit2ClaimPolicyForMessage, getSessionData, getPolicyData, getEnableSessionCall, getPermissionId, getSmartSessionValidator, getSessionDetails, isSessionEnabled, signEnableSession, buildMockSignature, };
223
+ export { SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION, DUMMY_PRECLAIMOP_TARGET, DUMMY_PRECLAIMOP_SELECTOR, SPENDING_LIMITS_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, ARG_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, packSignature, toSession, resolvePermit2ClaimPolicy, selectPermit2ClaimPolicyForMessage, getSessionData, getPolicyData, getEnableSessionCall, getDisableSessionCall, getPermissionId, getSmartSessionValidator, getSessionDetails, isSessionEnabled, signEnableSession, buildMockSignature, };
220
224
  export type { ChainSession, ChainDigest, ResolvedSessionSignerSet, SessionData, SmartSessionModeType, SessionDetails, };
221
225
  //# sourceMappingURL=smart-sessions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"smart-sessions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/smart-sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smart-sessions.d.ts","sourceRoot":"","sources":["../../../../modules/validators/smart-sessions.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import { getChainById, getWrappedTokenAddress, } from '../../orchestrator/regist
10
10
  import smartSessionEmissaryAbi from '../abi/smart-session-emissary.js';
11
11
  import { MODULE_TYPE_ID_VALIDATOR } from '../common.js';
12
12
  import { getOwnerValidator, getValidator, ownerSetUsesEns, SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, } from './core.js';
13
+ import { resolveCrossChainPermission } from './cross-chain-permits.js';
13
14
  import { FAR_FUTURE_MS, resolvePermissions } from './permissions.js';
14
15
  import { getArbitersForSettlementLayers } from './policies/claim/arbiters.js';
15
16
  import { encodePermit2ClaimPolicyInitData, PERMIT2_CLAIM_POLICY_ADDRESS, } from './policies/claim/permit2.js';
@@ -429,6 +430,68 @@ async function getEnableSessionCall(account, session, enableSessionSignature, ha
429
430
  }),
430
431
  };
431
432
  }
433
+ // SignedPermissionDisable(address account,bytes32 permissionId,bytes12 lockTag,uint256 expires,uint256 nonce)
434
+ // Vendored from contracts/smart-sessions-v2/src/lib/HashLibV2.sol.
435
+ const SIGNED_PERMISSION_DISABLE_TYPEHASH = '0x098b3120e60a8adc9d970dec9c1f8796974a3ab6154f995ad56ee7b9a38d8836';
436
+ // Builds a `removeConfig` call that disables a single smart session.
437
+ //
438
+ // The disable user-signature (`disableData.userSig`) is left empty: the
439
+ // emissary only verifies it when `msg.sender != account`
440
+ // (SignatureLib.verifySignatures), and here the account itself executes the
441
+ // call, so the disable is authorized by the outer transaction the user signs
442
+ // normally. The `disableDigest` leaf still has to match on-chain, so we build
443
+ // it from the current emissary nonce + `expires`. No-allocator flow only
444
+ // (`allocator == zeroAddress`), matching how enable is used today.
445
+ async function getDisableSessionCall(account, session, expires, provider, useDevContracts) {
446
+ const lockTag = '0x000000000000000000000000';
447
+ const permissionId = getPermissionId(session);
448
+ const nonce = await getSessionNonce(account, session, lockTag, provider, useDevContracts);
449
+ // SmartSessionLens reuses the session multichain wrapper for the disable
450
+ // digest, plugging this leaf in as `sessionDigest` (HashLibV2.disableDigest).
451
+ const disableDigest = keccak256(encodeAbiParameters([
452
+ { type: 'bytes32' },
453
+ { type: 'address' },
454
+ { type: 'bytes32' },
455
+ { type: 'bytes12' },
456
+ { type: 'uint256' },
457
+ { type: 'uint256' },
458
+ ], [
459
+ SIGNED_PERMISSION_DISABLE_TYPEHASH,
460
+ account,
461
+ permissionId,
462
+ lockTag,
463
+ expires,
464
+ nonce,
465
+ ]));
466
+ const hashesAndChainIds = [
467
+ { chainId: BigInt(session.chain.id), sessionDigest: disableDigest },
468
+ ];
469
+ return {
470
+ to: getSmartSessionEmissaryAddress(useDevContracts),
471
+ data: encodeFunctionData({
472
+ abi: smartSessionEmissaryAbi,
473
+ functionName: 'removeConfig',
474
+ args: [
475
+ account,
476
+ {
477
+ scope: SCOPE_MULTICHAIN,
478
+ resetPeriod: RESET_PERIOD_ONE_WEEK,
479
+ allocator: zeroAddress,
480
+ permissionId,
481
+ },
482
+ {
483
+ allocatorSig: '0x',
484
+ userSig: '0x',
485
+ expires,
486
+ session: {
487
+ chainDigestIndex: 0,
488
+ hashesAndChainIds,
489
+ },
490
+ },
491
+ ],
492
+ }),
493
+ };
494
+ }
432
495
  function toSession(definition, options = {}) {
433
496
  const addresses = resolvePolicyAddresses(definition.policyAddresses);
434
497
  const sessionData = resolveSessionData(definition, options.useDevContracts, addresses);
@@ -471,7 +534,8 @@ function toSession(definition, options = {}) {
471
534
  * smart-sessions-v2 (PR #46). Once it lands, this helper grows a second
472
535
  * branch that emits matching constraints there.
473
536
  */
474
- function expandCrossChainPermit(permit, useDevContracts) {
537
+ function expandCrossChainPermit(input, useDevContracts) {
538
+ const permit = resolveCrossChainPermission(input);
475
539
  // `from`/`to` are optional: an absent leg list means "no token/chain
476
540
  // restriction on that side" — we emit `undefined` so the underlying
477
541
  // Permit2 policy skips the check entirely (matching how every other
@@ -1122,4 +1186,4 @@ shape = 'enable') {
1122
1186
  function createFixedArray(length, getValue) {
1123
1187
  return Array.from({ length }, (_, i) => getValue(i));
1124
1188
  }
1125
- export { SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION, DUMMY_PRECLAIMOP_TARGET, DUMMY_PRECLAIMOP_SELECTOR, SPENDING_LIMITS_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, ARG_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, packSignature, toSession, resolvePermit2ClaimPolicy, selectPermit2ClaimPolicyForMessage, getSessionData, getPolicyData, getEnableSessionCall, getPermissionId, getSmartSessionValidator, getSessionDetails, isSessionEnabled, signEnableSession, buildMockSignature, };
1189
+ export { SMART_SESSION_EMISSARY_ADDRESS, SMART_SESSION_EMISSARY_ADDRESS_DEV, SMART_SESSIONS_FALLBACK_TARGET_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG, SMART_SESSIONS_FALLBACK_TARGET_SELECTOR_FLAG_PERMITTED_TO_CALL_SMARTSESSION, DUMMY_PRECLAIMOP_TARGET, DUMMY_PRECLAIMOP_SELECTOR, SPENDING_LIMITS_POLICY_ADDRESS, TIME_FRAME_POLICY_ADDRESS, SUDO_POLICY_ADDRESS, UNIVERSAL_ACTION_POLICY_ADDRESS, ARG_POLICY_ADDRESS, USAGE_LIMIT_POLICY_ADDRESS, VALUE_LIMIT_POLICY_ADDRESS, INTENT_EXECUTION_POLICY_ADDRESS, packSignature, toSession, resolvePermit2ClaimPolicy, selectPermit2ClaimPolicyForMessage, getSessionData, getPolicyData, getEnableSessionCall, getDisableSessionCall, getPermissionId, getSmartSessionValidator, getSessionDetails, isSessionEnabled, signEnableSession, buildMockSignature, };
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAQpD,OAAO,KAAK,EAMV,WAAW,EACX,cAAc,EAEd,2BAA2B,EAC3B,oBAAoB,EACpB,SAAS,EAET,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,SAAS,CAAA;AAGhB,UAAU,aAAa;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,YAAY,CAAC,CAAwB;gBAG3C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAO5B,YAAY,CAChB,cAAc,EAAE,OAAO,EACvB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;QACnB,MAAM,CAAC,EAAE;YAAE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;SAAE,CAAA;KAC1C,GACA,OAAO,CAAC,SAAS,CAAC;IAyCf,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAUvD,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAmB/D,YAAY,CAChB,OAAO,EAAE,2BAA2B,EACpC,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,oBAAoB,CAAC;IAe1B,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YAgB5C,UAAU;YAWV,gBAAgB;YAiBhB,KAAK;CA8BpB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../orchestrator/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AACnC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAQpD,OAAO,KAAK,EAOV,WAAW,EACX,cAAc,EAEd,2BAA2B,EAC3B,oBAAoB,EACpB,SAAS,EAET,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAEnB,MAAM,SAAS,CAAA;AAGhB,UAAU,aAAa;IACrB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,YAAY,CAAC,CAAwB;gBAG3C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,YAAY,EAC1B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAO5B,YAAY,CAChB,cAAc,EAAE,OAAO,EACvB,MAAM,CAAC,EAAE;QACP,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;QACnB,MAAM,CAAC,EAAE;YAAE,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE,CAAA;SAAE,CAAA;KAC1C,GACA,OAAO,CAAC,SAAS,CAAC;IAyCf,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;IAUvD,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAmB/D,YAAY,CAChB,OAAO,EAAE,2BAA2B,EACpC,aAAa,CAAC,EAAE,aAAa,GAC5B,OAAO,CAAC,oBAAoB,CAAC;IAe1B,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;YAgB5C,UAAU;YAWV,gBAAgB;YAiBhB,KAAK;CA8BpB"}
@@ -229,12 +229,24 @@ function decodeQuote(route) {
229
229
  settlementLayer: route.settlementLayer,
230
230
  signData: route.signData,
231
231
  cost: decodeCost(route.cost),
232
+ appFee: decodeAppFee(route.appFee ?? route.intentCost?.appFee),
232
233
  tokenRequirements: route.tokenRequirements
233
234
  ? decodeTokenRequirements(route.tokenRequirements)
234
235
  : undefined,
235
236
  bridgeFill: decodeBridgeFill(route.bridgeFill),
236
237
  };
237
238
  }
239
+ function decodeAppFee(appFee) {
240
+ if (!appFee)
241
+ return undefined;
242
+ return appFee.map((fee) => ({
243
+ feeBps: fee.feeBps,
244
+ baseAmount: BigInt(fee.baseAmount),
245
+ amount: BigInt(fee.amount),
246
+ chainId: parseChainId(fee.chainId),
247
+ tokenAddress: fee.tokenAddress,
248
+ }));
249
+ }
238
250
  // Normalizes CAIP-2 strings to numeric IDs for consistency with BridgeFill decodeCostTokenEntry, and getIntent
239
251
  function decodeBridgeFill(bf) {
240
252
  if (!bf)
@@ -1,6 +1,6 @@
1
1
  declare const PROD_ORCHESTRATOR_URL = "https://v1.orchestrator.rhinestone.dev";
2
2
  declare const RHINESTONE_SPOKE_POOL_ADDRESS = "0x000000000060f6e853447881951574cdd0663530";
3
- declare const SDK_VERSION = "2.0.0-beta.29";
3
+ declare const SDK_VERSION = "2.0.0-beta.30";
4
4
  declare const API_VERSION = "2026-04.blanc";
5
5
  export { PROD_ORCHESTRATOR_URL, RHINESTONE_SPOKE_POOL_ADDRESS, SDK_VERSION, API_VERSION, };
6
6
  //# sourceMappingURL=consts.d.ts.map
@@ -1,5 +1,5 @@
1
1
  const PROD_ORCHESTRATOR_URL = 'https://v1.orchestrator.rhinestone.dev';
2
2
  const RHINESTONE_SPOKE_POOL_ADDRESS = '0x000000000060f6e853447881951574cdd0663530';
3
- const SDK_VERSION = '2.0.0-beta.29';
3
+ const SDK_VERSION = '2.0.0-beta.30';
4
4
  const API_VERSION = '2026-04.blanc';
5
5
  export { PROD_ORCHESTRATOR_URL, RHINESTONE_SPOKE_POOL_ADDRESS, SDK_VERSION, API_VERSION, };