tenzro-wallet 0.1.0 → 0.2.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 (118) hide show
  1. package/README.md +10 -3
  2. package/dist/custody/internal-mpc.d.ts +10 -4
  3. package/dist/custody/internal-mpc.d.ts.map +1 -1
  4. package/dist/custody/internal-mpc.js +10 -4
  5. package/dist/custody/internal-mpc.js.map +1 -1
  6. package/dist/ports/axelar/adapter.d.ts +15 -0
  7. package/dist/ports/axelar/adapter.d.ts.map +1 -0
  8. package/dist/ports/axelar/adapter.js +22 -0
  9. package/dist/ports/axelar/adapter.js.map +1 -0
  10. package/dist/ports/axelar/axelar.d.ts +58 -0
  11. package/dist/ports/axelar/axelar.d.ts.map +1 -0
  12. package/dist/ports/axelar/axelar.js +14 -0
  13. package/dist/ports/axelar/axelar.js.map +1 -0
  14. package/dist/ports/axelar/index.d.ts +4 -0
  15. package/dist/ports/axelar/index.d.ts.map +1 -0
  16. package/dist/ports/axelar/index.js +2 -0
  17. package/dist/ports/axelar/index.js.map +1 -0
  18. package/dist/ports/caip/adapter.d.ts +14 -0
  19. package/dist/ports/caip/adapter.d.ts.map +1 -0
  20. package/dist/ports/caip/adapter.js +19 -0
  21. package/dist/ports/caip/adapter.js.map +1 -0
  22. package/dist/ports/caip/caip.d.ts +48 -0
  23. package/dist/ports/caip/caip.d.ts.map +1 -0
  24. package/dist/ports/caip/caip.js +19 -0
  25. package/dist/ports/caip/caip.js.map +1 -0
  26. package/dist/ports/caip/index.d.ts +4 -0
  27. package/dist/ports/caip/index.d.ts.map +1 -0
  28. package/dist/ports/caip/index.js +2 -0
  29. package/dist/ports/caip/index.js.map +1 -0
  30. package/dist/ports/capital/adapter.d.ts +32 -0
  31. package/dist/ports/capital/adapter.d.ts.map +1 -0
  32. package/dist/ports/capital/adapter.js +48 -0
  33. package/dist/ports/capital/adapter.js.map +1 -0
  34. package/dist/ports/capital/capital.d.ts +39 -0
  35. package/dist/ports/capital/capital.d.ts.map +1 -0
  36. package/dist/ports/capital/capital.js +19 -0
  37. package/dist/ports/capital/capital.js.map +1 -0
  38. package/dist/ports/capital/index.d.ts +4 -0
  39. package/dist/ports/capital/index.d.ts.map +1 -0
  40. package/dist/ports/capital/index.js +2 -0
  41. package/dist/ports/capital/index.js.map +1 -0
  42. package/dist/ports/eip7702/adapter.d.ts +17 -0
  43. package/dist/ports/eip7702/adapter.d.ts.map +1 -0
  44. package/dist/ports/eip7702/adapter.js +24 -0
  45. package/dist/ports/eip7702/adapter.js.map +1 -0
  46. package/dist/ports/eip7702/eip7702.d.ts +46 -0
  47. package/dist/ports/eip7702/eip7702.d.ts.map +1 -0
  48. package/dist/ports/eip7702/eip7702.js +16 -0
  49. package/dist/ports/eip7702/eip7702.js.map +1 -0
  50. package/dist/ports/eip7702/index.d.ts +4 -0
  51. package/dist/ports/eip7702/index.d.ts.map +1 -0
  52. package/dist/ports/eip7702/index.js +2 -0
  53. package/dist/ports/eip7702/index.js.map +1 -0
  54. package/dist/ports/erc7683/adapter.d.ts +16 -0
  55. package/dist/ports/erc7683/adapter.d.ts.map +1 -0
  56. package/dist/ports/erc7683/adapter.js +25 -0
  57. package/dist/ports/erc7683/adapter.js.map +1 -0
  58. package/dist/ports/erc7683/erc7683.d.ts +41 -0
  59. package/dist/ports/erc7683/erc7683.d.ts.map +1 -0
  60. package/dist/ports/erc7683/erc7683.js +13 -0
  61. package/dist/ports/erc7683/erc7683.js.map +1 -0
  62. package/dist/ports/erc7683/index.d.ts +4 -0
  63. package/dist/ports/erc7683/index.d.ts.map +1 -0
  64. package/dist/ports/erc7683/index.js +2 -0
  65. package/dist/ports/erc7683/index.js.map +1 -0
  66. package/dist/ports/hyperlane/adapter.d.ts +15 -0
  67. package/dist/ports/hyperlane/adapter.d.ts.map +1 -0
  68. package/dist/ports/hyperlane/adapter.js +22 -0
  69. package/dist/ports/hyperlane/adapter.js.map +1 -0
  70. package/dist/ports/hyperlane/hyperlane.d.ts +49 -0
  71. package/dist/ports/hyperlane/hyperlane.d.ts.map +1 -0
  72. package/dist/ports/hyperlane/hyperlane.js +11 -0
  73. package/dist/ports/hyperlane/hyperlane.js.map +1 -0
  74. package/dist/ports/hyperlane/index.d.ts +4 -0
  75. package/dist/ports/hyperlane/index.d.ts.map +1 -0
  76. package/dist/ports/hyperlane/index.js +2 -0
  77. package/dist/ports/hyperlane/index.js.map +1 -0
  78. package/dist/ports/index.d.ts +9 -0
  79. package/dist/ports/index.d.ts.map +1 -1
  80. package/dist/ports/index.js +24 -0
  81. package/dist/ports/index.js.map +1 -1
  82. package/dist/ports/permit2/adapter.d.ts +15 -0
  83. package/dist/ports/permit2/adapter.d.ts.map +1 -0
  84. package/dist/ports/permit2/adapter.js +22 -0
  85. package/dist/ports/permit2/adapter.js.map +1 -0
  86. package/dist/ports/permit2/index.d.ts +4 -0
  87. package/dist/ports/permit2/index.d.ts.map +1 -0
  88. package/dist/ports/permit2/index.js +2 -0
  89. package/dist/ports/permit2/index.js.map +1 -0
  90. package/dist/ports/permit2/permit2.d.ts +52 -0
  91. package/dist/ports/permit2/permit2.d.ts.map +1 -0
  92. package/dist/ports/permit2/permit2.js +13 -0
  93. package/dist/ports/permit2/permit2.js.map +1 -0
  94. package/dist/ports/secure-mint/adapter.d.ts +20 -0
  95. package/dist/ports/secure-mint/adapter.d.ts.map +1 -0
  96. package/dist/ports/secure-mint/adapter.js +31 -0
  97. package/dist/ports/secure-mint/adapter.js.map +1 -0
  98. package/dist/ports/secure-mint/index.d.ts +4 -0
  99. package/dist/ports/secure-mint/index.d.ts.map +1 -0
  100. package/dist/ports/secure-mint/index.js +2 -0
  101. package/dist/ports/secure-mint/index.js.map +1 -0
  102. package/dist/ports/secure-mint/secure-mint.d.ts +40 -0
  103. package/dist/ports/secure-mint/secure-mint.d.ts.map +1 -0
  104. package/dist/ports/secure-mint/secure-mint.js +11 -0
  105. package/dist/ports/secure-mint/secure-mint.js.map +1 -0
  106. package/dist/ports/workflow/adapter.d.ts +33 -0
  107. package/dist/ports/workflow/adapter.d.ts.map +1 -0
  108. package/dist/ports/workflow/adapter.js +64 -0
  109. package/dist/ports/workflow/adapter.js.map +1 -0
  110. package/dist/ports/workflow/index.d.ts +4 -0
  111. package/dist/ports/workflow/index.d.ts.map +1 -0
  112. package/dist/ports/workflow/index.js +2 -0
  113. package/dist/ports/workflow/index.js.map +1 -0
  114. package/dist/ports/workflow/workflow.d.ts +33 -0
  115. package/dist/ports/workflow/workflow.d.ts.map +1 -0
  116. package/dist/ports/workflow/workflow.js +11 -0
  117. package/dist/ports/workflow/workflow.js.map +1 -0
  118. package/package.json +18 -4
package/README.md CHANGED
@@ -9,7 +9,10 @@ The official wallet for [Tenzro Network](https://tenzro.com) — a browser-clean
9
9
  - **Passkey-quorum custody** — no seed phrases. Device share + node-TEE co-signer, FROST-signed Ed25519 + ML-DSA-65 (FIPS 204) post-quantum leg.
10
10
  - **Cross-VM moves on Tenzro are pointer ops, not bridges.** Native ↔ EVM ↔ SVM go through precompile `0x1003` / the `tenzro_cross_vm` SVM program — instant, no bridge risk.
11
11
  - **Agent payments built-in** — AP2 (Google), x402 (Coinbase), Visa TAP, Mastercard Agent Pay, OpenAI ACP, ERC-8004 trustless agent identity, ERC-7802 cross-chain mint/burn.
12
- - **Six-vendor bridge router** — LI.FI, Chainlink CCIP, LayerZero V2, Wormhole, deBridge, Canton HTLC. The kernel never picks a vendor for you; it surfaces all available quotes.
12
+ - **Capital markets + multi-party workflows** — Capital Intents (open / quote / assign / execute / verify / compensate / settle), reserve attestations + attested mints, saga workflows with AP2 / x402 / MPP / Stripe SPT / Visa TAP / Mastercard Agent Pay mandate binding.
13
+ - **EVM primitives, first-class** — EIP-7702 (Pectra Type-4) delegation, Permit2 SignatureTransfer with optional ERC-7683-witness binding, Secure-Mint registry (1:1 reserve invariant for tokenized RWAs), ERC-7683 cross-chain intents.
14
+ - **Eight-vendor bridge router** — LI.FI, Chainlink CCIP, LayerZero V2, Wormhole, deBridge, Canton HTLC, Hyperlane V3 (sovereign Tenzro-ISM), Axelar GMP (Cosmos / Move / Stellar / XRPL). The kernel never picks a vendor for you; it surfaces all available quotes.
15
+ - **Chain-agnostic discovery (CAIP)** — CAIP-2 / CAIP-10 / CAIP-19 per the submitted `tenzro` CASA namespace (`ChainAgnostic/namespaces#184`), so every dApp connect + agent handshake returns unambiguous chain + account + asset labels.
13
16
 
14
17
  ## Install
15
18
 
@@ -82,7 +85,10 @@ Six independent surfaces (Tenzro native, EVM-on-Tenzro, SVM-on-Tenzro, Canton in
82
85
  | `KernelEip1193Provider` | EIP-1193 `request(method, params)` provider built on top of a `WalletKernel`. |
83
86
  | Custody drivers | `frostEd25519Driver`, `frostSecp256k1Driver`, `hybridEd25519MlDsaDriver`, `mlDsaCoordinator`, passkey-share unwrappers (PRF/largeBlob/escrow). |
84
87
  | Agent ports | AP2, ACP, ERC-8004, ERC-7802, HTLC escrow, nanopayment channels, agent-bond, insurance, lifecycle, principal-chain, fee estimator, session-key, payment-rails (Visa/Mastercard/x402), TEE attestation. |
85
- | Bridge adapters | `LiFiBridgeAdapter`, `CcipBridgeAdapter`, `LayerZeroBridgeAdapter`, `WormholeBridgeAdapter`, `DebridgeAdapter`, `CantonBridgeAdapter`. |
88
+ | Bridge adapters | `LiFiBridgeAdapter`, `CcipBridgeAdapter`, `LayerZeroBridgeAdapter`, `WormholeBridgeAdapter`, `DebridgeAdapter`, `CantonBridgeAdapter`, `HyperlaneAdapter`, `AxelarAdapter`. |
89
+ | Capital + workflow ports | `CapitalIntentAdapter` (`open` / `quote` / `assign` / `execute` / `verify` / `compensate` / `settle` / `getIntent` + `submitReserveAttestation` / `getReserve` / `attestedMint`), `WorkflowAdapter` (`open` / `stepExecute` / `stepVerify` / `stepCompensate` / `finalize` / `getWorkflow` / `getSaga` / `getLifecycle` / `getReceipt` / `getOperationalMetrics` / `mirrorToCanton` / `verifyDidEnvelope` + listers). |
90
+ | EVM-primitive ports | `Eip7702Adapter` (signing hash + designator helpers), `Permit2Adapter` (`domainSeparator` / `digest` / `verifyAndConsume` / `nonceUsed` with optional ERC-7683-witness binding), `SecureMintAdapter` (per-token 1:1 reserve invariant for tokenized RWAs), `Erc7683Adapter` (origin-side reads + destination-side fill commits). |
91
+ | Discovery port | `CaipAdapter` — `caip2()` / `caip10(address)` / `caip19({ kind, token_id?, collection_id?, nft_token_id? })` per the submitted `tenzro` CASA namespace. |
86
92
  | Surfaces | `tenzroNativeSurface`, `evmOnTenzroSurface`, `svmOnTenzroSurface`, `cantonInternalSurface`, `cantonExternalSurface`, `cantonOnboardingSurface`. |
87
93
  | Router | `routeIntent()` — chooses the right surface (or bridge) for an intent and returns a typed plan. |
88
94
  | Balance aggregator | `BalanceAggregator` — single-pass cross-surface balance read. |
@@ -116,8 +122,9 @@ Testnet-functional today against the live Tenzro testnet at `rpc.tenzro.network`
116
122
  | M7 | Settlement (Visa TAP, Mastercard Agent Pay, x402) | Ports declared, SDK-pending |
117
123
  | M8 | Bridge router (six vendors) | Ports + six adapters shipped, SDK-pending |
118
124
  | M9 | TDIP integration (delegate sets, recovery flows) | Kernel orchestrators shipped |
125
+ | M10 | Capital markets + workflows + EVM primitives + extended cross-chain reach + CAIP discovery | Ports + nine adapters shipped against `tenzro-sdk@^0.4.0` |
119
126
 
120
- **395 unit tests** pass; 4 env-gated integration smokes exercise the live testnet end-to-end.
127
+ **404 unit tests** pass; 5 env-gated integration smokes exercise the live testnet end-to-end.
121
128
 
122
129
  ## Repository
123
130
 
@@ -1,9 +1,15 @@
1
1
  /**
2
- * In-memory 2-of-3 MPC stub. Stand-in for the real Shamir/threshold
3
- * implementation that lands in M2 alongside the Tenzro Cortex TEE driver.
2
+ * In-memory test stub for `SigningDriver`. Used by unit tests that need a
3
+ * driver-shaped object without touching real crypto.
4
4
  *
5
- * Returns deterministic mock signatures so tests can assert behavior without
6
- * pulling in real crypto in M1.
5
+ * Production code goes through `custody/frost/*` (FROST-Ed25519 +
6
+ * FROST-secp256k1 device drivers shipped in M5) and the hybrid
7
+ * `custody/mldsa/*` ML-DSA-65 coordinator. This stub is not on any
8
+ * production path and exists solely to keep tests fast and deterministic.
9
+ *
10
+ * Returns deterministic mock signatures sized to match real wire formats
11
+ * (Ed25519 64 B, secp256k1 65 B, ML-DSA-65 3293 B) so surface-level
12
+ * serialization tests round-trip correctly.
7
13
  */
8
14
  import type { SigningDriver } from '../types/signing-driver.js';
9
15
  export interface InternalMpcOptions {
@@ -1 +1 @@
1
- {"version":3,"file":"internal-mpc.d.ts","sourceRoot":"","sources":["../../src/custody/internal-mpc.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAiC,MAAM,4BAA4B,CAAC;AAE/F,MAAM,WAAW,kBAAkB;IACjC,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,iBAAiB,CAAC,IAAI,GAAE,kBAAuB,GAAG,aAAa,CAa9E"}
1
+ {"version":3,"file":"internal-mpc.d.ts","sourceRoot":"","sources":["../../src/custody/internal-mpc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAiC,MAAM,4BAA4B,CAAC;AAE/F,MAAM,WAAW,kBAAkB;IACjC,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,iBAAiB,CAAC,IAAI,GAAE,kBAAuB,GAAG,aAAa,CAa9E"}
@@ -1,9 +1,15 @@
1
1
  /**
2
- * In-memory 2-of-3 MPC stub. Stand-in for the real Shamir/threshold
3
- * implementation that lands in M2 alongside the Tenzro Cortex TEE driver.
2
+ * In-memory test stub for `SigningDriver`. Used by unit tests that need a
3
+ * driver-shaped object without touching real crypto.
4
4
  *
5
- * Returns deterministic mock signatures so tests can assert behavior without
6
- * pulling in real crypto in M1.
5
+ * Production code goes through `custody/frost/*` (FROST-Ed25519 +
6
+ * FROST-secp256k1 device drivers shipped in M5) and the hybrid
7
+ * `custody/mldsa/*` ML-DSA-65 coordinator. This stub is not on any
8
+ * production path and exists solely to keep tests fast and deterministic.
9
+ *
10
+ * Returns deterministic mock signatures sized to match real wire formats
11
+ * (Ed25519 64 B, secp256k1 65 B, ML-DSA-65 3293 B) so surface-level
12
+ * serialization tests round-trip correctly.
7
13
  */
8
14
  export function internalMpcDriver(opts = {}) {
9
15
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"internal-mpc.js","sourceRoot":"","sources":["../../src/custody/internal-mpc.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,MAAM,UAAU,iBAAiB,CAAC,OAA2B,EAAE;IAC7D,OAAO;QACL,EAAE,EAAE,cAAc;QAClB,KAAK,CAAC,IAAI,CAAC,GAAmB;YAC5B,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,KAAK,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAiB,EAAE,CAAC;YACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,QAAoB,EAAE,MAAc,EAAE,GAAW;IACtE,0EAA0E;IAC1E,sEAAsE;IACtE,kEAAkE;IAClE,MAAM,GAAG,GAAG,MAAM,KAAK,mBAAmB,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC;IAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,GAAG,CAAC,CAAC,CAAC;YACJ,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAClG,CAAC;IACD,0EAA0E;IAC1E,iDAAiD;IACjD,IAAI,MAAM,KAAK,WAAW;QAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"internal-mpc.js","sourceRoot":"","sources":["../../src/custody/internal-mpc.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AASH,MAAM,UAAU,iBAAiB,CAAC,OAA2B,EAAE;IAC7D,OAAO;QACL,EAAE,EAAE,cAAc;QAClB,KAAK,CAAC,IAAI,CAAC,GAAmB;YAC5B,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,KAAK,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAiB,EAAE,CAAC;YACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,QAAoB,EAAE,MAAc,EAAE,GAAW;IACtE,0EAA0E;IAC1E,sEAAsE;IACtE,kEAAkE;IAClE,MAAM,GAAG,GAAG,MAAM,KAAK,mBAAmB,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClG,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC;IAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,GAAG,CAAC,CAAC,CAAC;YACJ,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAClG,CAAC;IACD,0EAA0E;IAC1E,iDAAiD;IACjD,IAAI,MAAM,KAAK,WAAW;QAAE,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC;IACjD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * AxelarAdapter — `AxelarPort` backed by `tenzro-sdk` `AxelarClient`.
3
+ */
4
+ import type { AxelarClient } from 'tenzro-sdk';
5
+ import type { AxelarCallContractRequest, AxelarCallContractResult, AxelarChain, AxelarMessage, AxelarPayGasRequest, AxelarPayGasResult, AxelarPort } from './axelar.js';
6
+ export type AxelarClientLike = Pick<AxelarClient, 'listChains' | 'callContract' | 'payGas' | 'getMessage'>;
7
+ export declare class AxelarAdapter implements AxelarPort {
8
+ private readonly client;
9
+ constructor(client: AxelarClientLike);
10
+ listChains(): Promise<AxelarChain[]>;
11
+ callContract(req: AxelarCallContractRequest): Promise<AxelarCallContractResult>;
12
+ payGas(req: AxelarPayGasRequest): Promise<AxelarPayGasResult>;
13
+ getMessage(payloadHash: string): Promise<AxelarMessage | null>;
14
+ }
15
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/ports/axelar/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EACV,yBAAyB,EACzB,wBAAwB,EACxB,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACX,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,gBAAgB,GAAG,IAAI,CACjC,YAAY,EACZ,YAAY,GAAG,cAAc,GAAG,QAAQ,GAAG,YAAY,CACxD,CAAC;AAEF,qBAAa,aAAc,YAAW,UAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,gBAAgB;IAErD,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAGpC,YAAY,CAAC,GAAG,EAAE,yBAAyB,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAG/E,MAAM,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAG7D,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;CAG/D"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * AxelarAdapter — `AxelarPort` backed by `tenzro-sdk` `AxelarClient`.
3
+ */
4
+ export class AxelarAdapter {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ listChains() {
10
+ return this.client.listChains();
11
+ }
12
+ callContract(req) {
13
+ return this.client.callContract(req);
14
+ }
15
+ payGas(req) {
16
+ return this.client.payGas(req);
17
+ }
18
+ getMessage(payloadHash) {
19
+ return this.client.getMessage(payloadHash);
20
+ }
21
+ }
22
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/ports/axelar/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAkBH,MAAM,OAAO,aAAa;IACK;IAA7B,YAA6B,MAAwB;QAAxB,WAAM,GAAN,MAAM,CAAkB;IAAG,CAAC;IAEzD,UAAU;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,EAA4B,CAAC;IAC5D,CAAC;IACD,YAAY,CAAC,GAA8B;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,GAAY,CAAsC,CAAC;IACrF,CAAC;IACD,MAAM,CAAC,GAAwB;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAY,CAAgC,CAAC;IACzE,CAAC;IACD,UAAU,CAAC,WAAmB;QAC5B,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAkC,CAAC;IAC9E,CAAC;CACF"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * AxelarPort — Axelar GMP (General Message Passing) reach.
3
+ *
4
+ * Coverage: Cosmos (Osmosis, Cosmos Hub, Juno, Neutron, Injective,
5
+ * Kujira, Crescent, Evmos), Move (Aptos, Sui), Stellar, XRPL,
6
+ * Hyperliquid, Filecoin EVM, Kava, EVM mainline chains, and Tenzro.
7
+ *
8
+ * Wallet usage: an 8th vendor on the cross-chain route picker, used
9
+ * specifically when the destination is non-EVM. The wallet asks for a
10
+ * call-contract dispatch, optionally prepays gas, and tracks by payload
11
+ * hash (correlation id is `keccak256(payload)`).
12
+ */
13
+ export interface AxelarChain {
14
+ readonly chain_id: string;
15
+ readonly family: string;
16
+ readonly gateway?: string;
17
+ readonly gas_service?: string;
18
+ }
19
+ export interface AxelarCallContractRequest {
20
+ readonly source_chain: string;
21
+ readonly destination_chain: string;
22
+ readonly destination_address: string;
23
+ readonly payload_hex: string;
24
+ readonly gas_token?: string;
25
+ readonly gas_amount?: string;
26
+ }
27
+ export interface AxelarCallContractResult {
28
+ readonly payload_hash: string;
29
+ readonly source_chain: string;
30
+ readonly destination_chain: string;
31
+ }
32
+ export interface AxelarPayGasRequest {
33
+ readonly payload_hash: string;
34
+ readonly source_chain: string;
35
+ readonly destination_chain: string;
36
+ readonly destination_address: string;
37
+ readonly gas_token: string;
38
+ readonly gas_amount: string;
39
+ }
40
+ export interface AxelarPayGasResult {
41
+ readonly paid: boolean;
42
+ readonly gas_token: string;
43
+ readonly gas_amount: string;
44
+ }
45
+ export interface AxelarMessage {
46
+ readonly payload_hash: string;
47
+ readonly source_chain: string;
48
+ readonly destination_chain: string;
49
+ readonly destination_address: string;
50
+ readonly status: string;
51
+ }
52
+ export interface AxelarPort {
53
+ listChains(): Promise<AxelarChain[]>;
54
+ callContract(req: AxelarCallContractRequest): Promise<AxelarCallContractResult>;
55
+ payGas(req: AxelarPayGasRequest): Promise<AxelarPayGasResult>;
56
+ getMessage(payloadHash: string): Promise<AxelarMessage | null>;
57
+ }
58
+ //# sourceMappingURL=axelar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axelar.d.ts","sourceRoot":"","sources":["../../../src/ports/axelar/axelar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACrC,YAAY,CAAC,GAAG,EAAE,yBAAyB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAChF,MAAM,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC9D,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;CAChE"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * AxelarPort — Axelar GMP (General Message Passing) reach.
3
+ *
4
+ * Coverage: Cosmos (Osmosis, Cosmos Hub, Juno, Neutron, Injective,
5
+ * Kujira, Crescent, Evmos), Move (Aptos, Sui), Stellar, XRPL,
6
+ * Hyperliquid, Filecoin EVM, Kava, EVM mainline chains, and Tenzro.
7
+ *
8
+ * Wallet usage: an 8th vendor on the cross-chain route picker, used
9
+ * specifically when the destination is non-EVM. The wallet asks for a
10
+ * call-contract dispatch, optionally prepays gas, and tracks by payload
11
+ * hash (correlation id is `keccak256(payload)`).
12
+ */
13
+ export {};
14
+ //# sourceMappingURL=axelar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"axelar.js","sourceRoot":"","sources":["../../../src/ports/axelar/axelar.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG"}
@@ -0,0 +1,4 @@
1
+ export type { AxelarPort, AxelarChain, AxelarCallContractRequest, AxelarCallContractResult, AxelarPayGasRequest, AxelarPayGasResult, AxelarMessage, } from './axelar.js';
2
+ export { AxelarAdapter } from './adapter.js';
3
+ export type { AxelarClientLike } from './adapter.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ports/axelar/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,WAAW,EACX,yBAAyB,EACzB,wBAAwB,EACxB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,GACd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { AxelarAdapter } from "./adapter.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ports/axelar/index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * CaipAdapter — `CaipPort` backed by `tenzro-sdk` `CaipClient`.
3
+ */
4
+ import type { CaipClient } from 'tenzro-sdk';
5
+ import type { Caip10Info, Caip19Info, Caip19Request, Caip2Info, CaipPort } from './caip.js';
6
+ export type CaipClientLike = Pick<CaipClient, 'caip2' | 'caip10' | 'caip19'>;
7
+ export declare class CaipAdapter implements CaipPort {
8
+ private readonly client;
9
+ constructor(client: CaipClientLike);
10
+ caip2(): Promise<Caip2Info>;
11
+ caip10(address: string): Promise<Caip10Info>;
12
+ caip19(params: Caip19Request): Promise<Caip19Info>;
13
+ }
14
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/ports/caip/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAE5F,MAAM,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC,CAAC;AAE7E,qBAAa,WAAY,YAAW,QAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,cAAc;IAEnD,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC;IAG3B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAG5C,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC;CAGnD"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * CaipAdapter — `CaipPort` backed by `tenzro-sdk` `CaipClient`.
3
+ */
4
+ export class CaipAdapter {
5
+ client;
6
+ constructor(client) {
7
+ this.client = client;
8
+ }
9
+ caip2() {
10
+ return this.client.caip2();
11
+ }
12
+ caip10(address) {
13
+ return this.client.caip10(address);
14
+ }
15
+ caip19(params) {
16
+ return this.client.caip19(params);
17
+ }
18
+ }
19
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/ports/caip/adapter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAOH,MAAM,OAAO,WAAW;IACO;IAA7B,YAA6B,MAAsB;QAAtB,WAAM,GAAN,MAAM,CAAgB;IAAG,CAAC;IAEvD,KAAK;QACH,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAwB,CAAC;IACnD,CAAC;IACD,MAAM,CAAC,OAAe;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAwB,CAAC;IAC5D,CAAC;IACD,MAAM,CAAC,MAAqB;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAe,CAAwB,CAAC;IACpE,CAAC;CACF"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * CaipPort — chain-agnostic identifiers per the submitted `tenzro` CASA
3
+ * namespace (`ChainAgnostic/namespaces#184`).
4
+ *
5
+ * - CAIP-2 chain id: `tenzro:<lowercase hex of first 16 bytes of
6
+ * genesis block hash>`. An EVM-compatible `evm_chain_id` sidecar is
7
+ * returned for tooling that needs the 64-bit EIP-155 chain id.
8
+ * - CAIP-10 account id: accepts hex or base58btc input, normalises to
9
+ * canonical 64-hex Tenzro address form.
10
+ * - CAIP-19 asset id: `slip44` (SLIP-44 coin index 1414421071),
11
+ * `token` (Tenzro token registry id, 32-byte hex), or `nft`
12
+ * (collection id + nft_token_id suffix).
13
+ *
14
+ * Wallet usage: the dApp connect / agent handshake flows return CAIP
15
+ * identifiers so the host can present an unambiguous chain + account
16
+ * label in every UI surface.
17
+ */
18
+ export interface Caip2Info {
19
+ readonly chain_id: string;
20
+ readonly namespace: string;
21
+ readonly reference: string;
22
+ readonly evm_chain_id: number;
23
+ }
24
+ export interface Caip10Info {
25
+ readonly account_id: string;
26
+ readonly chain_id: string;
27
+ readonly address: string;
28
+ }
29
+ export interface Caip19Request {
30
+ /** One of `"slip44"`, `"token"`, `"nft"`. */
31
+ readonly kind: 'slip44' | 'token' | 'nft' | string;
32
+ readonly token_id?: string;
33
+ readonly collection_id?: string;
34
+ readonly nft_token_id?: string;
35
+ }
36
+ export interface Caip19Info {
37
+ readonly asset_id: string;
38
+ readonly chain_id: string;
39
+ readonly asset_namespace: string;
40
+ readonly asset_reference: string;
41
+ readonly token_id?: string | null;
42
+ }
43
+ export interface CaipPort {
44
+ caip2(): Promise<Caip2Info>;
45
+ caip10(address: string): Promise<Caip10Info>;
46
+ caip19(params: Caip19Request): Promise<Caip19Info>;
47
+ }
48
+ //# sourceMappingURL=caip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caip.d.ts","sourceRoot":"","sources":["../../../src/ports/caip/caip.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC5B,6CAA6C;IAC7C,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;IACnD,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACpD"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * CaipPort — chain-agnostic identifiers per the submitted `tenzro` CASA
3
+ * namespace (`ChainAgnostic/namespaces#184`).
4
+ *
5
+ * - CAIP-2 chain id: `tenzro:<lowercase hex of first 16 bytes of
6
+ * genesis block hash>`. An EVM-compatible `evm_chain_id` sidecar is
7
+ * returned for tooling that needs the 64-bit EIP-155 chain id.
8
+ * - CAIP-10 account id: accepts hex or base58btc input, normalises to
9
+ * canonical 64-hex Tenzro address form.
10
+ * - CAIP-19 asset id: `slip44` (SLIP-44 coin index 1414421071),
11
+ * `token` (Tenzro token registry id, 32-byte hex), or `nft`
12
+ * (collection id + nft_token_id suffix).
13
+ *
14
+ * Wallet usage: the dApp connect / agent handshake flows return CAIP
15
+ * identifiers so the host can present an unambiguous chain + account
16
+ * label in every UI surface.
17
+ */
18
+ export {};
19
+ //# sourceMappingURL=caip.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"caip.js","sourceRoot":"","sources":["../../../src/ports/caip/caip.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
@@ -0,0 +1,4 @@
1
+ export type { CaipPort, Caip2Info, Caip10Info, Caip19Request, Caip19Info } from './caip.js';
2
+ export { CaipAdapter } from './adapter.js';
3
+ export type { CaipClientLike } from './adapter.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ports/caip/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { CaipAdapter } from "./adapter.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ports/caip/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * CapitalIntentAdapter — `CapitalIntentPort` backed by the `tenzro-sdk`
3
+ * `CapitalClient`. Mirrors the wallet's strict ports + adapters
4
+ * discipline: this is the only file in the kernel allowed to import
5
+ * `tenzro-sdk` for capital intents.
6
+ *
7
+ * SDK shape this targets (`tenzro-sdk@^0.4.0`).
8
+ */
9
+ import type { CapitalClient } from 'tenzro-sdk';
10
+ import type { CapitalIntentPort } from './capital.js';
11
+ export type CapitalClientLike = Pick<CapitalClient, 'open' | 'quote' | 'assign' | 'execute' | 'verify' | 'compensate' | 'settle' | 'get' | 'submitReserveAttestation' | 'getReserve' | 'attestedMint'>;
12
+ export declare class CapitalIntentAdapter implements CapitalIntentPort {
13
+ private readonly client;
14
+ constructor(client: CapitalClientLike);
15
+ open(intent: unknown): Promise<unknown>;
16
+ quote(intentId: string, solverDid: string, plan: string, price: number, etaSecs: number): Promise<unknown>;
17
+ assign(intentId: string, opts?: {
18
+ solverDid?: string;
19
+ auto?: boolean;
20
+ payer?: string;
21
+ payee?: string;
22
+ }): Promise<unknown>;
23
+ execute(intentId: string, leg: unknown): Promise<unknown>;
24
+ verify(intentId: string): Promise<unknown>;
25
+ compensate(intentId: string): Promise<unknown>;
26
+ settle(intentId: string, payee?: string): Promise<unknown>;
27
+ getIntent(intentId: string): Promise<unknown>;
28
+ submitReserveAttestation(attestation: unknown): Promise<unknown>;
29
+ getReserve(assetId: string): Promise<unknown>;
30
+ attestedMint(tokenId: string, to: string, amount: string, caller: string): Promise<unknown>;
31
+ }
32
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/ports/capital/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,aAAa,EACX,MAAM,GACN,OAAO,GACP,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,QAAQ,GACR,KAAK,GACL,0BAA0B,GAC1B,YAAY,GACZ,cAAc,CACjB,CAAC;AAEF,qBAAa,oBAAqB,YAAW,iBAAiB;IAChD,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,iBAAiB;IAEtD,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAGvC,KAAK,CACH,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC;IAGnB,MAAM,CACJ,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAChF,OAAO,CAAC,OAAO,CAAC;IAGnB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAGzD,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAG1C,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAG9C,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAG1D,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAG7C,wBAAwB,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAGhE,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAG7C,YAAY,CACV,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC;CAGpB"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * CapitalIntentAdapter — `CapitalIntentPort` backed by the `tenzro-sdk`
3
+ * `CapitalClient`. Mirrors the wallet's strict ports + adapters
4
+ * discipline: this is the only file in the kernel allowed to import
5
+ * `tenzro-sdk` for capital intents.
6
+ *
7
+ * SDK shape this targets (`tenzro-sdk@^0.4.0`).
8
+ */
9
+ export class CapitalIntentAdapter {
10
+ client;
11
+ constructor(client) {
12
+ this.client = client;
13
+ }
14
+ open(intent) {
15
+ return this.client.open(intent);
16
+ }
17
+ quote(intentId, solverDid, plan, price, etaSecs) {
18
+ return this.client.quote(intentId, solverDid, plan, price, etaSecs);
19
+ }
20
+ assign(intentId, opts = {}) {
21
+ return this.client.assign(intentId, opts);
22
+ }
23
+ execute(intentId, leg) {
24
+ return this.client.execute(intentId, leg);
25
+ }
26
+ verify(intentId) {
27
+ return this.client.verify(intentId);
28
+ }
29
+ compensate(intentId) {
30
+ return this.client.compensate(intentId);
31
+ }
32
+ settle(intentId, payee) {
33
+ return this.client.settle(intentId, payee);
34
+ }
35
+ getIntent(intentId) {
36
+ return this.client.get(intentId);
37
+ }
38
+ submitReserveAttestation(attestation) {
39
+ return this.client.submitReserveAttestation(attestation);
40
+ }
41
+ getReserve(assetId) {
42
+ return this.client.getReserve(assetId);
43
+ }
44
+ attestedMint(tokenId, to, amount, caller) {
45
+ return this.client.attestedMint(tokenId, to, amount, caller);
46
+ }
47
+ }
48
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/ports/capital/adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAoBH,MAAM,OAAO,oBAAoB;IACF;IAA7B,YAA6B,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;IAAG,CAAC;IAE1D,IAAI,CAAC,MAAe;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAe,CAAC,CAAC;IAC3C,CAAC;IACD,KAAK,CACH,QAAgB,EAChB,SAAiB,EACjB,IAAY,EACZ,KAAa,EACb,OAAe;QAEf,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,CACJ,QAAgB,EAChB,OAA+E,EAAE;QAEjF,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,CAAC,QAAgB,EAAE,GAAY;QACpC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAY,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,CAAC,QAAgB;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IACD,UAAU,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IACD,MAAM,CAAC,QAAgB,EAAE,KAAc;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IACD,SAAS,CAAC,QAAgB;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IACD,wBAAwB,CAAC,WAAoB;QAC3C,OAAO,IAAI,CAAC,MAAM,CAAC,wBAAwB,CAAC,WAAoB,CAAC,CAAC;IACpE,CAAC;IACD,UAAU,CAAC,OAAe;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,YAAY,CACV,OAAe,EACf,EAAU,EACV,MAAc,EACd,MAAc;QAEd,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * CapitalIntentPort — regulated capital allocation over tokenized assets.
3
+ *
4
+ * Capital Intents are the capital-markets analog of an AP2 Intent Mandate:
5
+ * a signed, expiring authorization to acquire / exit / rebalance / hedge /
6
+ * yield a basket of tokenized assets subject to regulatory regime, KYA
7
+ * ceilings, and per-leg constraints. Solvers bid; an assigner (principal
8
+ * or delegate) picks a winner; lifecycle is
9
+ * Open → Quote → Assign → Execute → Verify (or Compensate) → Settle.
10
+ *
11
+ * 1:1 asset backing flows through `submitReserveAttestation` /
12
+ * `getReserve`, gating `attestedMint`.
13
+ *
14
+ * Wallet usage: the wallet does NOT pick solvers or score reputation; it
15
+ * just signs intents on behalf of the user/agent and surfaces the
16
+ * lifecycle in the UI.
17
+ */
18
+ export interface CapitalIntentLifecycle {
19
+ open(intent: unknown): Promise<unknown>;
20
+ quote(intentId: string, solverDid: string, plan: string, price: number, etaSecs: number): Promise<unknown>;
21
+ assign(intentId: string, opts?: {
22
+ solverDid?: string;
23
+ auto?: boolean;
24
+ payer?: string;
25
+ payee?: string;
26
+ }): Promise<unknown>;
27
+ execute(intentId: string, leg: unknown): Promise<unknown>;
28
+ verify(intentId: string): Promise<unknown>;
29
+ compensate(intentId: string): Promise<unknown>;
30
+ settle(intentId: string, payee?: string): Promise<unknown>;
31
+ getIntent(intentId: string): Promise<unknown>;
32
+ }
33
+ export interface ReserveAttestationPort {
34
+ submitReserveAttestation(attestation: unknown): Promise<unknown>;
35
+ getReserve(assetId: string): Promise<unknown>;
36
+ attestedMint(tokenId: string, to: string, amount: string, caller: string): Promise<unknown>;
37
+ }
38
+ export type CapitalIntentPort = CapitalIntentLifecycle & ReserveAttestationPort;
39
+ //# sourceMappingURL=capital.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capital.d.ts","sourceRoot":"","sources":["../../../src/ports/capital/capital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,WAAW,sBAAsB;IACrC,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,KAAK,CACH,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,MAAM,CACJ,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAC5E,OAAO,CAAC,OAAO,CAAC,CAAC;IACpB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3D,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED,MAAM,WAAW,sBAAsB;IACrC,wBAAwB,CAAC,WAAW,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjE,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9C,YAAY,CACV,OAAO,EAAE,MAAM,EACf,EAAE,EAAE,MAAM,EACV,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AAED,MAAM,MAAM,iBAAiB,GAAG,sBAAsB,GAAG,sBAAsB,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * CapitalIntentPort — regulated capital allocation over tokenized assets.
3
+ *
4
+ * Capital Intents are the capital-markets analog of an AP2 Intent Mandate:
5
+ * a signed, expiring authorization to acquire / exit / rebalance / hedge /
6
+ * yield a basket of tokenized assets subject to regulatory regime, KYA
7
+ * ceilings, and per-leg constraints. Solvers bid; an assigner (principal
8
+ * or delegate) picks a winner; lifecycle is
9
+ * Open → Quote → Assign → Execute → Verify (or Compensate) → Settle.
10
+ *
11
+ * 1:1 asset backing flows through `submitReserveAttestation` /
12
+ * `getReserve`, gating `attestedMint`.
13
+ *
14
+ * Wallet usage: the wallet does NOT pick solvers or score reputation; it
15
+ * just signs intents on behalf of the user/agent and surfaces the
16
+ * lifecycle in the UI.
17
+ */
18
+ export {};
19
+ //# sourceMappingURL=capital.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capital.js","sourceRoot":"","sources":["../../../src/ports/capital/capital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG"}
@@ -0,0 +1,4 @@
1
+ export type { CapitalIntentPort } from './capital.js';
2
+ export { CapitalIntentAdapter } from './adapter.js';
3
+ export type { CapitalClientLike } from './adapter.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/ports/capital/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,YAAY,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { CapitalIntentAdapter } from "./adapter.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ports/capital/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Eip7702Adapter — `Eip7702Port` backed by the `tenzro-sdk`
3
+ * `Eip7702Client`. Only file in the kernel allowed to import
4
+ * `tenzro-sdk` for EIP-7702 helpers.
5
+ */
6
+ import type { Eip7702Client } from 'tenzro-sdk';
7
+ import type { Eip7702Designator, Eip7702ParsedDesignator, Eip7702Port, Eip7702ProtocolInfo, Eip7702SigningHash } from './eip7702.js';
8
+ export type Eip7702ClientLike = Pick<Eip7702Client, 'signingHash' | 'buildDesignator' | 'parseDesignator' | 'protocolInfo'>;
9
+ export declare class Eip7702Adapter implements Eip7702Port {
10
+ private readonly client;
11
+ constructor(client: Eip7702ClientLike);
12
+ signingHash(chainId: number, delegateAddress: string, nonce: number): Promise<Eip7702SigningHash>;
13
+ buildDesignator(delegateAddress: string): Promise<Eip7702Designator>;
14
+ parseDesignator(code: string): Promise<Eip7702ParsedDesignator>;
15
+ protocolInfo(): Promise<Eip7702ProtocolInfo>;
16
+ }
17
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/ports/eip7702/adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EACV,iBAAiB,EACjB,uBAAuB,EACvB,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAClC,aAAa,EACb,aAAa,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,cAAc,CACvE,CAAC;AAEF,qBAAa,cAAe,YAAW,WAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,iBAAiB;IAEtD,WAAW,CACT,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,kBAAkB,CAAC;IAG9B,eAAe,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAGpE,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAG/D,YAAY,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAG7C"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Eip7702Adapter — `Eip7702Port` backed by the `tenzro-sdk`
3
+ * `Eip7702Client`. Only file in the kernel allowed to import
4
+ * `tenzro-sdk` for EIP-7702 helpers.
5
+ */
6
+ export class Eip7702Adapter {
7
+ client;
8
+ constructor(client) {
9
+ this.client = client;
10
+ }
11
+ signingHash(chainId, delegateAddress, nonce) {
12
+ return this.client.signingHash(chainId, delegateAddress, nonce);
13
+ }
14
+ buildDesignator(delegateAddress) {
15
+ return this.client.buildDesignator(delegateAddress);
16
+ }
17
+ parseDesignator(code) {
18
+ return this.client.parseDesignator(code);
19
+ }
20
+ protocolInfo() {
21
+ return this.client.protocolInfo();
22
+ }
23
+ }
24
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/ports/eip7702/adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgBH,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,MAAyB;QAAzB,WAAM,GAAN,MAAM,CAAmB;IAAG,CAAC;IAE1D,WAAW,CACT,OAAe,EACf,eAAuB,EACvB,KAAa;QAEb,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,CAAgC,CAAC;IACjG,CAAC;IACD,eAAe,CAAC,eAAuB;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,CAA+B,CAAC;IACpF,CAAC;IACD,eAAe,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAqC,CAAC;IAC/E,CAAC;IACD,YAAY;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,EAAkC,CAAC;IACpE,CAAC;CACF"}