@metamask/smart-accounts-kit 1.5.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/CHANGELOG.md +47 -25
  2. package/dist/actions/index.cjs +5 -6
  3. package/dist/actions/index.cjs.map +1 -1
  4. package/dist/actions/index.d.cts +3 -3
  5. package/dist/actions/index.d.ts +3 -3
  6. package/dist/actions/index.mjs +4 -5
  7. package/dist/{caveats-DQ6HoAHe.d.ts → caveats-B2OssjV4.d.ts} +1 -2
  8. package/dist/{caveats-CaSt_VHs.d.cts → caveats-gqMBZKkI.d.cts} +1 -2
  9. package/dist/{chunk-SOFB2MXG.cjs → chunk-2OS36DVV.cjs} +8 -1
  10. package/dist/chunk-2OS36DVV.cjs.map +1 -0
  11. package/dist/{chunk-XEOE25DE.cjs → chunk-2ZOWIAP3.cjs} +98 -68
  12. package/dist/chunk-2ZOWIAP3.cjs.map +1 -0
  13. package/dist/{chunk-BGOSYTKV.mjs → chunk-AZYTTGON.mjs} +38 -8
  14. package/dist/chunk-AZYTTGON.mjs.map +1 -0
  15. package/dist/{chunk-SCS3CFRE.cjs → chunk-DCI2AN4N.cjs} +15 -17
  16. package/dist/chunk-DCI2AN4N.cjs.map +1 -0
  17. package/dist/{chunk-DN4O5VOP.cjs → chunk-EPU4O7FY.cjs} +158 -151
  18. package/dist/chunk-EPU4O7FY.cjs.map +1 -0
  19. package/dist/{chunk-QCULIK3O.mjs → chunk-GMGJRC3D.mjs} +8 -1
  20. package/dist/chunk-GMGJRC3D.mjs.map +1 -0
  21. package/dist/chunk-IMO6XNDJ.mjs +14 -0
  22. package/dist/chunk-IMO6XNDJ.mjs.map +1 -0
  23. package/dist/chunk-IQT6XFDT.cjs +14 -0
  24. package/dist/chunk-IQT6XFDT.cjs.map +1 -0
  25. package/dist/{chunk-FH6HZCHI.cjs → chunk-JKVSTPEC.cjs} +200 -18
  26. package/dist/chunk-JKVSTPEC.cjs.map +1 -0
  27. package/dist/{chunk-N66VAWMO.mjs → chunk-K7GTZGKJ.mjs} +2 -2
  28. package/dist/{chunk-TBHT26BV.mjs → chunk-L3EZCIY6.mjs} +67 -60
  29. package/dist/chunk-L3EZCIY6.mjs.map +1 -0
  30. package/dist/{chunk-7FYDQNJ3.cjs → chunk-PQPAEHJZ.cjs} +12 -12
  31. package/dist/{chunk-7FYDQNJ3.cjs.map → chunk-PQPAEHJZ.cjs.map} +1 -1
  32. package/dist/{chunk-MV2KHN75.mjs → chunk-TNGQTVSY.mjs} +163 -35
  33. package/dist/chunk-TNGQTVSY.mjs.map +1 -0
  34. package/dist/{chunk-YXHUT56Z.mjs → chunk-UJQ3JN3U.mjs} +4 -6
  35. package/dist/{chunk-YXHUT56Z.mjs.map → chunk-UJQ3JN3U.mjs.map} +1 -1
  36. package/dist/{chunk-IBZSNB7D.cjs → chunk-W6HPAK4M.cjs} +202 -74
  37. package/dist/chunk-W6HPAK4M.cjs.map +1 -0
  38. package/dist/{chunk-W7O2UQL5.mjs → chunk-YVU66KSH.mjs} +188 -6
  39. package/dist/chunk-YVU66KSH.mjs.map +1 -0
  40. package/dist/contracts/index.cjs +5 -6
  41. package/dist/contracts/index.cjs.map +1 -1
  42. package/dist/contracts/index.d.cts +4 -4
  43. package/dist/contracts/index.d.ts +4 -4
  44. package/dist/contracts/index.mjs +4 -5
  45. package/dist/{delegation-DbPGWKfP.d.ts → decodeRevertReason-CmmCpmZ_.d.cts} +11 -3
  46. package/dist/{delegation-BKkEyxZY.d.cts → decodeRevertReason-dOTpJx2h.d.ts} +11 -3
  47. package/dist/experimental/index.cjs +364 -9
  48. package/dist/experimental/index.cjs.map +1 -1
  49. package/dist/experimental/index.d.cts +39 -3
  50. package/dist/experimental/index.d.ts +39 -3
  51. package/dist/experimental/index.mjs +357 -2
  52. package/dist/experimental/index.mjs.map +1 -1
  53. package/dist/index-B1Cmezvh.d.cts +61 -0
  54. package/dist/{index-DXdlz7t4.d.ts → index-BkgdU4LI.d.ts} +99 -93
  55. package/dist/{index-G78z6nwi.d.ts → index-DUJmm8Wz.d.ts} +13 -5
  56. package/dist/{index-yU3olCJV.d.cts → index-Dv4jPzhe.d.cts} +99 -93
  57. package/dist/index-LqiEgBjV.d.ts +61 -0
  58. package/dist/{index-DfDAuvr5.d.cts → index-X7Qn3JTg.d.cts} +13 -5
  59. package/dist/index.cjs +22 -24
  60. package/dist/index.cjs.map +1 -1
  61. package/dist/index.d.cts +8 -8
  62. package/dist/index.d.ts +8 -8
  63. package/dist/index.mjs +9 -11
  64. package/dist/index.mjs.map +1 -1
  65. package/dist/{resolveCaveats-DiqGB-T5.d.cts → resolveCaveats-A9xC29l8.d.cts} +160 -62
  66. package/dist/{resolveCaveats-s2snaFEo.d.ts → resolveCaveats-A9xC29l8.d.ts} +160 -62
  67. package/dist/utils/index.cjs +13 -6
  68. package/dist/utils/index.cjs.map +1 -1
  69. package/dist/utils/index.d.cts +8 -5
  70. package/dist/utils/index.d.ts +8 -5
  71. package/dist/utils/index.mjs +16 -9
  72. package/package.json +7 -6
  73. package/dist/chunk-4QXIOE7F.mjs +0 -79
  74. package/dist/chunk-4QXIOE7F.mjs.map +0 -1
  75. package/dist/chunk-BGOSYTKV.mjs.map +0 -1
  76. package/dist/chunk-DN4O5VOP.cjs.map +0 -1
  77. package/dist/chunk-FH6HZCHI.cjs.map +0 -1
  78. package/dist/chunk-IBZSNB7D.cjs.map +0 -1
  79. package/dist/chunk-MOHCTPYQ.cjs +0 -79
  80. package/dist/chunk-MOHCTPYQ.cjs.map +0 -1
  81. package/dist/chunk-MV2KHN75.mjs.map +0 -1
  82. package/dist/chunk-QCULIK3O.mjs.map +0 -1
  83. package/dist/chunk-SCS3CFRE.cjs.map +0 -1
  84. package/dist/chunk-SOFB2MXG.cjs.map +0 -1
  85. package/dist/chunk-TBHT26BV.mjs.map +0 -1
  86. package/dist/chunk-W7O2UQL5.mjs.map +0 -1
  87. package/dist/chunk-XEOE25DE.cjs.map +0 -1
  88. package/dist/types-BWaH4KH1.d.cts +0 -155
  89. package/dist/types-BWaH4KH1.d.ts +0 -155
  90. /package/dist/{chunk-N66VAWMO.mjs.map → chunk-K7GTZGKJ.mjs.map} +0 -0
@@ -36,6 +36,7 @@ var ScopeType = /* @__PURE__ */ ((ScopeType2) => {
36
36
  var CaveatType = /* @__PURE__ */ ((CaveatType2) => {
37
37
  CaveatType2["AllowedMethods"] = "allowedMethods";
38
38
  CaveatType2["AllowedTargets"] = "allowedTargets";
39
+ CaveatType2["ApprovalRevocation"] = "approvalRevocation";
39
40
  CaveatType2["Deployed"] = "deployed";
40
41
  CaveatType2["AllowedCalldata"] = "allowedCalldata";
41
42
  CaveatType2["Erc20BalanceChange"] = "erc20BalanceChange";
@@ -228,6 +229,26 @@ var allowedTargetsBuilder = (environment, config) => {
228
229
  };
229
230
  };
230
231
 
232
+ // src/caveatBuilder/approvalRevocationBuilder.ts
233
+ import {
234
+ createApprovalRevocationTerms
235
+ } from "@metamask/delegation-core";
236
+ var approvalRevocation = "approvalRevocation";
237
+ var approvalRevocationBuilder = (environment, config) => {
238
+ const terms = createApprovalRevocationTerms(config);
239
+ const {
240
+ caveatEnforcers: { ApprovalRevocationEnforcer }
241
+ } = environment;
242
+ if (!ApprovalRevocationEnforcer) {
243
+ throw new Error("ApprovalRevocationEnforcer not found in environment");
244
+ }
245
+ return {
246
+ enforcer: ApprovalRevocationEnforcer,
247
+ terms,
248
+ args: "0x00"
249
+ };
250
+ };
251
+
231
252
  // src/caveatBuilder/argsEqualityCheckBuilder.ts
232
253
  import { createArgsEqualityCheckTerms } from "@metamask/delegation-core";
233
254
  import { isHex as isHex2 } from "viem";
@@ -1041,7 +1062,7 @@ var valueLteBuilder = (environment, config) => {
1041
1062
 
1042
1063
  // src/caveatBuilder/coreCaveatBuilder.ts
1043
1064
  var createCaveatBuilder = (environment, config) => {
1044
- const caveatBuilder = new CaveatBuilder(environment, config).extend(allowedMethods, allowedMethodsBuilder).extend(allowedTargets, allowedTargetsBuilder).extend(deployed, deployedBuilder).extend(allowedCalldata, allowedCalldataBuilder).extend(erc20BalanceChange, erc20BalanceChangeBuilder).extend(erc721BalanceChange, erc721BalanceChangeBuilder).extend(erc1155BalanceChange, erc1155BalanceChangeBuilder).extend(valueLte, valueLteBuilder).extend(limitedCalls, limitedCallsBuilder).extend(id, idBuilder).extend(nonce, nonceBuilder).extend(timestamp, timestampBuilder).extend(blockNumber, blockNumberBuilder).extend(erc20TransferAmount, erc20TransferAmountBuilder).extend(erc20Streaming, erc20StreamingBuilder).extend(nativeTokenStreaming, nativeTokenStreamingBuilder).extend(erc721Transfer, erc721TransferBuilder).extend(nativeTokenTransferAmount, nativeTokenTransferAmountBuilder).extend(nativeBalanceChange, nativeBalanceChangeBuilder).extend(redeemer, redeemerBuilder).extend(nativeTokenPayment, nativeTokenPaymentBuilder).extend(argsEqualityCheck, argsEqualityCheckBuilder).extend(
1065
+ const caveatBuilder = new CaveatBuilder(environment, config).extend(allowedMethods, allowedMethodsBuilder).extend(allowedTargets, allowedTargetsBuilder).extend(approvalRevocation, approvalRevocationBuilder).extend(deployed, deployedBuilder).extend(allowedCalldata, allowedCalldataBuilder).extend(erc20BalanceChange, erc20BalanceChangeBuilder).extend(erc721BalanceChange, erc721BalanceChangeBuilder).extend(erc1155BalanceChange, erc1155BalanceChangeBuilder).extend(valueLte, valueLteBuilder).extend(limitedCalls, limitedCallsBuilder).extend(id, idBuilder).extend(nonce, nonceBuilder).extend(timestamp, timestampBuilder).extend(blockNumber, blockNumberBuilder).extend(erc20TransferAmount, erc20TransferAmountBuilder).extend(erc20Streaming, erc20StreamingBuilder).extend(nativeTokenStreaming, nativeTokenStreamingBuilder).extend(erc721Transfer, erc721TransferBuilder).extend(nativeTokenTransferAmount, nativeTokenTransferAmountBuilder).extend(nativeBalanceChange, nativeBalanceChangeBuilder).extend(redeemer, redeemerBuilder).extend(nativeTokenPayment, nativeTokenPaymentBuilder).extend(argsEqualityCheck, argsEqualityCheckBuilder).extend(
1045
1066
  specificActionERC20TransferBatch,
1046
1067
  specificActionERC20TransferBatchBuilder
1047
1068
  ).extend(erc20PeriodTransfer, erc20PeriodTransferBuilder).extend(nativeTokenPeriodTransfer, nativeTokenPeriodTransferBuilder).extend(exactCalldataBatch, exactCalldataBatchBuilder).extend(exactCalldata, exactCalldataBuilder).extend(exactExecution, exactExecutionBuilder).extend(exactExecutionBatch, exactExecutionBatchBuilder).extend(multiTokenPeriod, multiTokenPeriodBuilder).extend(ownershipTransfer, ownershipTransferBuilder);
@@ -1370,6 +1391,7 @@ import {
1370
1391
  decodeERC20StreamingTerms,
1371
1392
  decodeERC20TransferAmountTerms,
1372
1393
  decodeERC20BalanceChangeTerms,
1394
+ decodeApprovalRevocationTerms,
1373
1395
  decodeAllowedMethodsTerms,
1374
1396
  decodeAllowedTargetsTerms,
1375
1397
  decodeArgsEqualityCheckTerms,
@@ -1425,113 +1447,142 @@ var decodeCaveat = ({
1425
1447
  }) => {
1426
1448
  switch (enforcer.toLowerCase()) {
1427
1449
  case caveatEnforcers.AllowedCalldataEnforcer?.toLowerCase():
1428
- return { type: "allowedCalldata", ...decodeAllowedCalldataTerms(terms) };
1450
+ return {
1451
+ type: "allowedCalldata" /* AllowedCalldata */,
1452
+ ...decodeAllowedCalldataTerms(terms)
1453
+ };
1429
1454
  case caveatEnforcers.AllowedMethodsEnforcer?.toLowerCase():
1430
- return { type: "allowedMethods", ...decodeAllowedMethodsTerms(terms) };
1455
+ return {
1456
+ type: "allowedMethods" /* AllowedMethods */,
1457
+ ...decodeAllowedMethodsTerms(terms)
1458
+ };
1459
+ case caveatEnforcers.ApprovalRevocationEnforcer?.toLowerCase():
1460
+ return {
1461
+ type: "approvalRevocation" /* ApprovalRevocation */,
1462
+ ...decodeApprovalRevocationTerms(terms)
1463
+ };
1431
1464
  case caveatEnforcers.AllowedTargetsEnforcer?.toLowerCase():
1432
- return { type: "allowedTargets", ...decodeAllowedTargetsTerms(terms) };
1465
+ return {
1466
+ type: "allowedTargets" /* AllowedTargets */,
1467
+ ...decodeAllowedTargetsTerms(terms)
1468
+ };
1433
1469
  case caveatEnforcers.ArgsEqualityCheckEnforcer?.toLowerCase():
1434
1470
  return {
1435
- type: "argsEqualityCheck",
1471
+ type: "argsEqualityCheck" /* ArgsEqualityCheck */,
1436
1472
  ...decodeArgsEqualityCheckTerms(terms)
1437
1473
  };
1438
1474
  case caveatEnforcers.BlockNumberEnforcer?.toLowerCase():
1439
- return { type: "blockNumber", ...decodeBlockNumberTerms(terms) };
1475
+ return { type: "blockNumber" /* BlockNumber */, ...decodeBlockNumberTerms(terms) };
1440
1476
  case caveatEnforcers.DeployedEnforcer?.toLowerCase():
1441
- return { type: "deployed", ...decodeDeployedTerms(terms) };
1477
+ return { type: "deployed" /* Deployed */, ...decodeDeployedTerms(terms) };
1442
1478
  case caveatEnforcers.ERC20BalanceChangeEnforcer?.toLowerCase():
1443
1479
  return {
1444
- type: "erc20BalanceChange",
1480
+ type: "erc20BalanceChange" /* Erc20BalanceChange */,
1445
1481
  ...decodeERC20BalanceChangeTerms(terms)
1446
1482
  };
1447
1483
  case caveatEnforcers.ERC20TransferAmountEnforcer?.toLowerCase():
1448
1484
  return {
1449
- type: "erc20TransferAmount",
1485
+ type: "erc20TransferAmount" /* Erc20TransferAmount */,
1450
1486
  ...decodeERC20TransferAmountTerms(terms)
1451
1487
  };
1452
1488
  case caveatEnforcers.ERC20StreamingEnforcer?.toLowerCase():
1453
- return { type: "erc20Streaming", ...decodeERC20StreamingTerms(terms) };
1489
+ return {
1490
+ type: "erc20Streaming" /* Erc20Streaming */,
1491
+ ...decodeERC20StreamingTerms(terms)
1492
+ };
1454
1493
  case caveatEnforcers.ERC721BalanceChangeEnforcer?.toLowerCase():
1455
1494
  return {
1456
- type: "erc721BalanceChange",
1495
+ type: "erc721BalanceChange" /* Erc721BalanceChange */,
1457
1496
  ...decodeERC721BalanceChangeTerms(terms)
1458
1497
  };
1459
1498
  case caveatEnforcers.ERC721TransferEnforcer?.toLowerCase():
1460
- return { type: "erc721Transfer", ...decodeERC721TransferTerms(terms) };
1499
+ return {
1500
+ type: "erc721Transfer" /* Erc721Transfer */,
1501
+ ...decodeERC721TransferTerms(terms)
1502
+ };
1461
1503
  case caveatEnforcers.ERC1155BalanceChangeEnforcer?.toLowerCase():
1462
1504
  return {
1463
- type: "erc1155BalanceChange",
1505
+ type: "erc1155BalanceChange" /* Erc1155BalanceChange */,
1464
1506
  ...decodeERC1155BalanceChangeTerms(terms)
1465
1507
  };
1466
1508
  case caveatEnforcers.IdEnforcer?.toLowerCase():
1467
- return { type: "id", ...decodeIdTerms(terms) };
1509
+ return { type: "id" /* Id */, ...decodeIdTerms(terms) };
1468
1510
  case caveatEnforcers.LimitedCallsEnforcer?.toLowerCase():
1469
- return { type: "limitedCalls", ...decodeLimitedCallsTerms(terms) };
1511
+ return {
1512
+ type: "limitedCalls" /* LimitedCalls */,
1513
+ ...decodeLimitedCallsTerms(terms)
1514
+ };
1470
1515
  case caveatEnforcers.NonceEnforcer?.toLowerCase():
1471
- return { type: "nonce", ...decodeNonceTerms(terms) };
1516
+ return { type: "nonce" /* Nonce */, ...decodeNonceTerms(terms) };
1472
1517
  case caveatEnforcers.TimestampEnforcer?.toLowerCase():
1473
- return { type: "timestamp", ...decodeTimestampTerms(terms) };
1518
+ return { type: "timestamp" /* Timestamp */, ...decodeTimestampTerms(terms) };
1474
1519
  case caveatEnforcers.ValueLteEnforcer?.toLowerCase():
1475
- return { type: "valueLte", ...decodeValueLteTerms(terms) };
1520
+ return { type: "valueLte" /* ValueLte */, ...decodeValueLteTerms(terms) };
1476
1521
  case caveatEnforcers.NativeTokenTransferAmountEnforcer?.toLowerCase():
1477
1522
  return {
1478
- type: "nativeTokenTransferAmount",
1523
+ type: "nativeTokenTransferAmount" /* NativeTokenTransferAmount */,
1479
1524
  ...decodeNativeTokenTransferAmountTerms(terms)
1480
1525
  };
1481
1526
  case caveatEnforcers.NativeBalanceChangeEnforcer?.toLowerCase():
1482
1527
  return {
1483
- type: "nativeBalanceChange",
1528
+ type: "nativeBalanceChange" /* NativeBalanceChange */,
1484
1529
  ...decodeNativeBalanceChangeTerms(terms)
1485
1530
  };
1486
1531
  case caveatEnforcers.NativeTokenStreamingEnforcer?.toLowerCase():
1487
1532
  return {
1488
- type: "nativeTokenStreaming",
1533
+ type: "nativeTokenStreaming" /* NativeTokenStreaming */,
1489
1534
  ...decodeNativeTokenStreamingTerms(terms)
1490
1535
  };
1491
1536
  case caveatEnforcers.NativeTokenPaymentEnforcer?.toLowerCase():
1492
1537
  return {
1493
- type: "nativeTokenPayment",
1538
+ type: "nativeTokenPayment" /* NativeTokenPayment */,
1494
1539
  ...decodeNativeTokenPaymentTerms(terms)
1495
1540
  };
1496
1541
  case caveatEnforcers.RedeemerEnforcer?.toLowerCase():
1497
- return { type: "redeemer", ...decodeRedeemerTerms(terms) };
1542
+ return { type: "redeemer" /* Redeemer */, ...decodeRedeemerTerms(terms) };
1498
1543
  case caveatEnforcers.SpecificActionERC20TransferBatchEnforcer?.toLowerCase():
1499
1544
  return {
1500
- type: "specificActionERC20TransferBatch",
1545
+ type: "specificActionERC20TransferBatch" /* SpecificActionERC20TransferBatch */,
1501
1546
  ...decodeSpecificActionERC20TransferBatchTerms(terms)
1502
1547
  };
1503
1548
  case caveatEnforcers.ERC20PeriodTransferEnforcer?.toLowerCase():
1504
1549
  return {
1505
- type: "erc20PeriodTransfer",
1550
+ type: "erc20PeriodTransfer" /* Erc20PeriodTransfer */,
1506
1551
  ...decodeERC20TokenPeriodTransferTerms(terms)
1507
1552
  };
1508
1553
  case caveatEnforcers.NativeTokenPeriodTransferEnforcer?.toLowerCase():
1509
1554
  return {
1510
- type: "nativeTokenPeriodTransfer",
1555
+ type: "nativeTokenPeriodTransfer" /* NativeTokenPeriodTransfer */,
1511
1556
  ...decodeNativeTokenPeriodTransferTerms(terms)
1512
1557
  };
1513
1558
  case caveatEnforcers.ExactCalldataBatchEnforcer?.toLowerCase():
1514
1559
  return {
1515
- type: "exactCalldataBatch",
1560
+ type: "exactCalldataBatch" /* ExactCalldataBatch */,
1516
1561
  ...decodeExactCalldataBatchTerms(terms)
1517
1562
  };
1518
1563
  case caveatEnforcers.ExactCalldataEnforcer?.toLowerCase():
1519
- return { type: "exactCalldata", ...decodeExactCalldataTerms(terms) };
1564
+ return {
1565
+ type: "exactCalldata" /* ExactCalldata */,
1566
+ ...decodeExactCalldataTerms(terms)
1567
+ };
1520
1568
  case caveatEnforcers.ExactExecutionEnforcer?.toLowerCase():
1521
- return { type: "exactExecution", ...decodeExactExecutionTerms(terms) };
1569
+ return {
1570
+ type: "exactExecution" /* ExactExecution */,
1571
+ ...decodeExactExecutionTerms(terms)
1572
+ };
1522
1573
  case caveatEnforcers.ExactExecutionBatchEnforcer?.toLowerCase():
1523
1574
  return {
1524
- type: "exactExecutionBatch",
1575
+ type: "exactExecutionBatch" /* ExactExecutionBatch */,
1525
1576
  ...decodeExactExecutionBatchTerms(terms)
1526
1577
  };
1527
1578
  case caveatEnforcers.MultiTokenPeriodEnforcer?.toLowerCase():
1528
1579
  return {
1529
- type: "multiTokenPeriod",
1580
+ type: "multiTokenPeriod" /* MultiTokenPeriod */,
1530
1581
  ...decodeMultiTokenPeriodTerms(terms)
1531
1582
  };
1532
1583
  case caveatEnforcers.OwnershipTransferEnforcer?.toLowerCase():
1533
1584
  return {
1534
- type: "ownershipTransfer",
1585
+ type: "ownershipTransfer" /* OwnershipTransfer */,
1535
1586
  ...decodeOwnershipTransferTerms(terms)
1536
1587
  };
1537
1588
  default:
@@ -1699,7 +1750,7 @@ var Sender = class {
1699
1750
  };
1700
1751
 
1701
1752
  // package.json
1702
- var version = "1.5.0";
1753
+ var version = "1.6.0";
1703
1754
 
1704
1755
  // src/analytics/index.ts
1705
1756
  function isCompleteBase(value) {
@@ -2104,6 +2155,76 @@ var signDelegation = async ({
2104
2155
  });
2105
2156
  };
2106
2157
 
2158
+ // src/executions.ts
2159
+ import {
2160
+ encodeAbiParameters as encodeAbiParameters2,
2161
+ encodePacked
2162
+ } from "viem";
2163
+ var createExecution = ({
2164
+ target,
2165
+ value = 0n,
2166
+ callData = "0x"
2167
+ }) => {
2168
+ return {
2169
+ target,
2170
+ value,
2171
+ callData
2172
+ };
2173
+ };
2174
+ var ExecutionMode = /* @__PURE__ */ ((ExecutionMode2) => {
2175
+ ExecutionMode2["SingleDefault"] = "0x0000000000000000000000000000000000000000000000000000000000000000";
2176
+ ExecutionMode2["SingleTry"] = "0x0001000000000000000000000000000000000000000000000000000000000000";
2177
+ ExecutionMode2["BatchDefault"] = "0x0100000000000000000000000000000000000000000000000000000000000000";
2178
+ ExecutionMode2["BatchTry"] = "0x0101000000000000000000000000000000000000000000000000000000000000";
2179
+ return ExecutionMode2;
2180
+ })(ExecutionMode || {});
2181
+ var EXECUTION_ABI_TYPE_COMPONENTS = [
2182
+ { type: "address", name: "target" },
2183
+ { type: "uint256", name: "value" },
2184
+ { type: "bytes", name: "callData" }
2185
+ ];
2186
+ var encodeSingleExecution = (execution) => {
2187
+ return encodePacked(
2188
+ ["address", "uint256", "bytes"],
2189
+ [execution.target, execution.value, execution.callData]
2190
+ );
2191
+ };
2192
+ var encodeBatchExecution = (executions) => {
2193
+ return encodeAbiParameters2(
2194
+ [
2195
+ {
2196
+ components: EXECUTION_ABI_TYPE_COMPONENTS,
2197
+ name: "executions",
2198
+ type: "tuple[]"
2199
+ }
2200
+ ],
2201
+ [executions]
2202
+ );
2203
+ };
2204
+ var encodeExecutionCalldata = (executions) => {
2205
+ if (executions.length === 0) {
2206
+ throw new Error(
2207
+ "Error while getting the execution calldatas, executions is empty"
2208
+ );
2209
+ }
2210
+ if (executions.length === 1) {
2211
+ const execution = executions[0];
2212
+ if (!execution) {
2213
+ throw new Error("Execution not found");
2214
+ }
2215
+ return encodeSingleExecution(execution);
2216
+ }
2217
+ return encodeBatchExecution(executions);
2218
+ };
2219
+ var encodeExecutionCalldatas = (executionsBatch) => {
2220
+ if (executionsBatch.length === 0) {
2221
+ throw new Error(
2222
+ "Error while getting the execution calldatas, executionsBatch is empty"
2223
+ );
2224
+ }
2225
+ return executionsBatch.map(encodeExecutionCalldata);
2226
+ };
2227
+
2107
2228
  export {
2108
2229
  __export,
2109
2230
  trackSmartAccountsKitFunctionCall,
@@ -2115,6 +2236,7 @@ export {
2115
2236
  createCaveatBuilder,
2116
2237
  isDefined,
2117
2238
  toHexOrThrow,
2239
+ resolveCaveats,
2118
2240
  createCaveat,
2119
2241
  decodeCaveat,
2120
2242
  ANY_BENEFICIARY,
@@ -2134,6 +2256,12 @@ export {
2134
2256
  createDelegation,
2135
2257
  createOpenDelegation,
2136
2258
  prepareSignDelegationTypedData,
2137
- signDelegation
2259
+ signDelegation,
2260
+ createExecution,
2261
+ ExecutionMode,
2262
+ encodeSingleExecution,
2263
+ encodeBatchExecution,
2264
+ encodeExecutionCalldata,
2265
+ encodeExecutionCalldatas
2138
2266
  };
2139
- //# sourceMappingURL=chunk-MV2KHN75.mjs.map
2267
+ //# sourceMappingURL=chunk-TNGQTVSY.mjs.map