@oobe-protocol-labs/synapse-sap-sdk 0.9.2 → 0.10.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 (68) hide show
  1. package/dist/cjs/constants/index.js +9 -1
  2. package/dist/cjs/constants/index.js.map +1 -1
  3. package/dist/cjs/constants/payments.js +87 -0
  4. package/dist/cjs/constants/payments.js.map +1 -0
  5. package/dist/cjs/constants/seeds.js +9 -1
  6. package/dist/cjs/constants/seeds.js.map +1 -1
  7. package/dist/cjs/idl/synapse_agent_sap.json +270 -2
  8. package/dist/cjs/modules/escrow-v2.js +10 -0
  9. package/dist/cjs/modules/escrow-v2.js.map +1 -1
  10. package/dist/cjs/modules/escrow.js +29 -4
  11. package/dist/cjs/modules/escrow.js.map +1 -1
  12. package/dist/cjs/pda/index.js +31 -1
  13. package/dist/cjs/pda/index.js.map +1 -1
  14. package/dist/cjs/plugin/index.js +3 -1
  15. package/dist/cjs/plugin/index.js.map +1 -1
  16. package/dist/cjs/registries/metaplex-bridge.js +236 -6
  17. package/dist/cjs/registries/metaplex-bridge.js.map +1 -1
  18. package/dist/cjs/utils/hash.js +52 -1
  19. package/dist/cjs/utils/hash.js.map +1 -1
  20. package/dist/esm/constants/index.js +2 -0
  21. package/dist/esm/constants/index.js.map +1 -1
  22. package/dist/esm/constants/payments.js +82 -0
  23. package/dist/esm/constants/payments.js.map +1 -0
  24. package/dist/esm/constants/seeds.js +9 -1
  25. package/dist/esm/constants/seeds.js.map +1 -1
  26. package/dist/esm/idl/synapse_agent_sap.json +270 -2
  27. package/dist/esm/modules/escrow-v2.js +11 -1
  28. package/dist/esm/modules/escrow-v2.js.map +1 -1
  29. package/dist/esm/modules/escrow.js +30 -5
  30. package/dist/esm/modules/escrow.js.map +1 -1
  31. package/dist/esm/pda/index.js +29 -0
  32. package/dist/esm/pda/index.js.map +1 -1
  33. package/dist/esm/plugin/index.js +3 -1
  34. package/dist/esm/plugin/index.js.map +1 -1
  35. package/dist/esm/registries/metaplex-bridge.js +236 -6
  36. package/dist/esm/registries/metaplex-bridge.js.map +1 -1
  37. package/dist/esm/utils/hash.js +50 -0
  38. package/dist/esm/utils/hash.js.map +1 -1
  39. package/dist/types/constants/index.d.ts +1 -0
  40. package/dist/types/constants/index.d.ts.map +1 -1
  41. package/dist/types/constants/payments.d.ts +78 -0
  42. package/dist/types/constants/payments.d.ts.map +1 -0
  43. package/dist/types/constants/seeds.d.ts +9 -1
  44. package/dist/types/constants/seeds.d.ts.map +1 -1
  45. package/dist/types/modules/escrow-v2.d.ts.map +1 -1
  46. package/dist/types/modules/escrow.d.ts +9 -1
  47. package/dist/types/modules/escrow.d.ts.map +1 -1
  48. package/dist/types/pda/index.d.ts +21 -0
  49. package/dist/types/pda/index.d.ts.map +1 -1
  50. package/dist/types/plugin/index.d.ts.map +1 -1
  51. package/dist/types/registries/index.d.ts +1 -1
  52. package/dist/types/registries/index.d.ts.map +1 -1
  53. package/dist/types/registries/metaplex-bridge.d.ts +224 -1
  54. package/dist/types/registries/metaplex-bridge.d.ts.map +1 -1
  55. package/dist/types/utils/hash.d.ts +27 -0
  56. package/dist/types/utils/hash.d.ts.map +1 -1
  57. package/package.json +1 -1
  58. package/src/constants/index.ts +11 -1
  59. package/src/constants/payments.ts +92 -0
  60. package/src/constants/seeds.ts +9 -1
  61. package/src/idl/synapse_agent_sap.json +270 -2
  62. package/src/modules/escrow-v2.ts +15 -0
  63. package/src/modules/escrow.ts +36 -3
  64. package/src/pda/index.ts +39 -0
  65. package/src/plugin/index.ts +2 -0
  66. package/src/registries/index.ts +8 -0
  67. package/src/registries/metaplex-bridge.ts +464 -5
  68. package/src/utils/hash.ts +56 -0
@@ -176,6 +176,148 @@ export class MetaplexBridge {
176
176
  return this.firstWeb3Ix(builder, "updateExternalPluginAdapterV1");
177
177
  }
178
178
  // ─────────────────────────────────────────────────────
179
+ // Write side — combined SAP × MPL register flows (v0.9.3)
180
+ // ─────────────────────────────────────────────────────
181
+ /**
182
+ * @name buildMintAndAttachIxs
183
+ * @description Build the two MPL Core instructions needed to mint a new
184
+ * asset for an existing SAP agent and immediately bind it via the
185
+ * `AgentIdentity` plugin (URI = canonical EIP-8004 URL).
186
+ *
187
+ * Flow:
188
+ * 1. Generate a fresh asset keypair (returned as `assetSecretKey`).
189
+ * 2. Build `mpl_core::create` with the new asset as signer.
190
+ * 3. Build `addExternalPluginAdapterV1` for the AgentIdentity URI.
191
+ *
192
+ * The returned `instructions` are deterministic order. The caller
193
+ * partial-signs the assembled transaction with `assetSecretKey` and the
194
+ * authority/payer wallet.
195
+ *
196
+ * @since v0.9.3
197
+ */
198
+ async buildMintAndAttachIxs(opts) {
199
+ const { mplCore, umiBundle, umiCore } = await loadMplCore();
200
+ const umi = umiBundle.createUmi(opts.rpcUrl).use(mplCore.mplCore());
201
+ const [sapPda] = deriveAgent(opts.sapAgentOwner);
202
+ const registrationUrl = this.deriveRegistrationUrl(sapPda, opts.registrationBaseUrl);
203
+ const assetUmiSigner = umiCore.generateSigner(umi);
204
+ const assetAddress = new PublicKey(assetUmiSigner.publicKey.toString());
205
+ const assetSecretKey = assetUmiSigner.secretKey;
206
+ const authority = umiCore.createNoopSigner(umiCore.publicKey(opts.authority.toBase58()));
207
+ const payer = umiCore.createNoopSigner(umiCore.publicKey((opts.payer ?? opts.authority).toBase58()));
208
+ const ownerUmi = opts.owner
209
+ ? umiCore.publicKey(opts.owner.toBase58())
210
+ : umiCore.publicKey(opts.authority.toBase58());
211
+ const createBuilder = mplCore.create(umi, {
212
+ asset: assetUmiSigner,
213
+ collection: opts.collection
214
+ ? { publicKey: umiCore.publicKey(opts.collection.toBase58()) }
215
+ : undefined,
216
+ authority,
217
+ payer,
218
+ owner: ownerUmi,
219
+ name: opts.name,
220
+ uri: opts.metadataUri,
221
+ });
222
+ const mintIx = await this.firstWeb3Ix(createBuilder, "mpl_core::create");
223
+ const attachIx = await this.buildAddExternalPluginIx({
224
+ asset: assetAddress,
225
+ authority: opts.authority,
226
+ payer: opts.payer ?? opts.authority,
227
+ uri: registrationUrl,
228
+ rpcUrl: opts.rpcUrl,
229
+ });
230
+ return {
231
+ assetAddress,
232
+ assetSecretKey,
233
+ registrationUrl,
234
+ instructions: [mintIx, attachIx],
235
+ };
236
+ }
237
+ /**
238
+ * @name buildRegisterSapForMplOwnerIx
239
+ * @description Given an existing MPL Core asset, resolve its on-chain
240
+ * owner and build the SAP `registerAgent` instruction the owner must
241
+ * sign. Idempotent: if a SAP agent already exists for that owner the
242
+ * method returns `instruction: null` with `alreadyRegistered: true`.
243
+ *
244
+ * Use after a wallet has minted (or holds) an MPL Core agent NFT and
245
+ * wants to back-fill a SAP identity at the canonical PDA so the bridge's
246
+ * EIP-8004 URL becomes resolvable.
247
+ *
248
+ * @since v0.9.3
249
+ */
250
+ async buildRegisterSapForMplOwnerIx(opts) {
251
+ const snap = await this.fetchMplSnapshot(opts.asset, opts.rpcUrl);
252
+ if (!snap) {
253
+ throw new Error(`buildRegisterSapForMplOwnerIx: MPL Core asset ${opts.asset.toBase58()} not readable`);
254
+ }
255
+ const [sapPda] = deriveAgent(snap.owner);
256
+ const existing = await this.fetchAgentNullable(sapPda);
257
+ if (existing) {
258
+ return {
259
+ assetOwner: snap.owner,
260
+ sapAgentPda: sapPda,
261
+ alreadyRegistered: true,
262
+ currentAgentIdentityUri: snap.agentIdentityUri,
263
+ instruction: null,
264
+ };
265
+ }
266
+ const ix = await this.buildRegisterAgentIx({
267
+ wallet: snap.owner,
268
+ args: opts.registerArgs,
269
+ });
270
+ return {
271
+ assetOwner: snap.owner,
272
+ sapAgentPda: sapPda,
273
+ alreadyRegistered: false,
274
+ currentAgentIdentityUri: snap.agentIdentityUri,
275
+ instruction: ix,
276
+ };
277
+ }
278
+ /**
279
+ * @name buildRegisterBothIxs
280
+ * @description Atomic 3-instruction bundle for a wallet that owns
281
+ * neither side: `[SAP registerAgent, MPL Core create, MPL AgentIdentity attach]`.
282
+ * Single transaction, single user signature (plus the ephemeral asset
283
+ * keypair returned in `assetSecretKey`).
284
+ *
285
+ * Throws if a SAP agent already exists for `wallet` — callers should
286
+ * fall through to {@link MetaplexBridge.buildMintAndAttachIxs} instead.
287
+ *
288
+ * @since v0.9.3
289
+ */
290
+ async buildRegisterBothIxs(opts) {
291
+ const [sapPda] = deriveAgent(opts.wallet);
292
+ const existing = await this.fetchAgentNullable(sapPda);
293
+ if (existing) {
294
+ throw new Error(`buildRegisterBothIxs: SAP agent already exists at ${sapPda.toBase58()}; ` +
295
+ `use buildMintAndAttachIxs instead`);
296
+ }
297
+ const sapIx = await this.buildRegisterAgentIx({
298
+ wallet: opts.wallet,
299
+ args: opts.registerArgs,
300
+ });
301
+ const mint = await this.buildMintAndAttachIxs({
302
+ sapAgentOwner: opts.wallet,
303
+ authority: opts.wallet,
304
+ payer: opts.payer ?? opts.wallet,
305
+ owner: opts.wallet,
306
+ name: opts.mintName,
307
+ metadataUri: opts.mintMetadataUri,
308
+ registrationBaseUrl: opts.registrationBaseUrl,
309
+ rpcUrl: opts.rpcUrl,
310
+ collection: opts.collection,
311
+ });
312
+ return {
313
+ sapAgentPda: sapPda,
314
+ assetAddress: mint.assetAddress,
315
+ assetSecretKey: mint.assetSecretKey,
316
+ registrationUrl: mint.registrationUrl,
317
+ instructions: [sapIx, ...mint.instructions],
318
+ };
319
+ }
320
+ // ─────────────────────────────────────────────────────
179
321
  // Read side
180
322
  // ─────────────────────────────────────────────────────
181
323
  /**
@@ -199,7 +341,7 @@ export class MetaplexBridge {
199
341
  }
200
342
  let mpl = null;
201
343
  if (input.asset) {
202
- mpl = await this.fetchMplSnapshot(input.asset, input.rpcUrl);
344
+ mpl = await this.fetchMplSnapshot(input.asset, input.rpcUrl, input.rpcHeaders);
203
345
  if (!sapPda && mpl?.registration?.synapseAgent) {
204
346
  try {
205
347
  sapPda = new PublicKey(mpl.registration.synapseAgent);
@@ -263,7 +405,7 @@ export class MetaplexBridge {
263
405
  };
264
406
  }
265
407
  // 2) MPL Core asset resolution
266
- const mpl = await this.fetchMplSnapshot(asPubkey, input.rpcUrl);
408
+ const mpl = await this.fetchMplSnapshot(asPubkey, input.rpcUrl, input.rpcHeaders);
267
409
  if (!mpl) {
268
410
  return {
269
411
  input: input.identifier,
@@ -296,7 +438,7 @@ export class MetaplexBridge {
296
438
  * @since v0.9.0
297
439
  */
298
440
  async verifyLink(args) {
299
- const snap = await this.fetchMplSnapshot(args.asset, args.rpcUrl);
441
+ const snap = await this.fetchMplSnapshot(args.asset, args.rpcUrl, args.rpcHeaders);
300
442
  if (!snap?.agentIdentityUri || !snap.registration)
301
443
  return false;
302
444
  const expectedSuffix = `/agents/${args.sapAgentPda.toBase58()}/eip-8004.json`;
@@ -304,6 +446,61 @@ export class MetaplexBridge {
304
446
  return false;
305
447
  return snap.registration.synapseAgent === args.sapAgentPda.toBase58();
306
448
  }
449
+ /**
450
+ * @name tripleCheckLink
451
+ * @description Explicit 3-layer verification for explorer/host badges.
452
+ * Returns one struct enumerating each check independently so UIs can
453
+ * present partial trust states (e.g. "MPL plugin present, JSON pending").
454
+ *
455
+ * Layers:
456
+ * 1. **mplOnChain** — Asset + AgentIdentity URI fetched on-chain.
457
+ * 2. **eip8004Json** — JSON fetched and `synapseAgent` matches PDA.
458
+ * 3. **sapOnChain** — `AgentAccount` PDA exists on the SAP program.
459
+ *
460
+ * @since v0.9.3
461
+ */
462
+ async tripleCheckLink(args) {
463
+ const snap = await this.fetchMplSnapshot(args.asset, args.rpcUrl, args.rpcHeaders);
464
+ if (!snap) {
465
+ const fallbackPda = args.expectedOwner
466
+ ? deriveAgent(args.expectedOwner)[0]
467
+ : args.asset;
468
+ return {
469
+ asset: args.asset,
470
+ sapAgentPda: fallbackPda,
471
+ mplOnChain: false,
472
+ eip8004Json: false,
473
+ sapOnChain: false,
474
+ linked: false,
475
+ agentIdentityUri: null,
476
+ registration: null,
477
+ identity: null,
478
+ error: "MPL Core asset not readable on-chain",
479
+ };
480
+ }
481
+ const owner = args.expectedOwner ?? snap.owner;
482
+ const [sapPda] = deriveAgent(owner);
483
+ const expectedSuffix = `/agents/${sapPda.toBase58()}/eip-8004.json`;
484
+ const mplOnChain = !!snap.agentIdentityUri;
485
+ const eip8004Json = !!snap.registration &&
486
+ !!snap.agentIdentityUri &&
487
+ snap.agentIdentityUri.endsWith(expectedSuffix) &&
488
+ snap.registration.synapseAgent === sapPda.toBase58();
489
+ const identity = await this.fetchAgentNullable(sapPda);
490
+ const sapOnChain = !!identity;
491
+ return {
492
+ asset: args.asset,
493
+ sapAgentPda: sapPda,
494
+ mplOnChain,
495
+ eip8004Json,
496
+ sapOnChain,
497
+ linked: mplOnChain && eip8004Json && sapOnChain,
498
+ agentIdentityUri: snap.agentIdentityUri,
499
+ registration: snap.registration,
500
+ identity,
501
+ error: null,
502
+ };
503
+ }
307
504
  // ═════════════════════════════════════════════════════
308
505
  // Private — SAP fetching
309
506
  // ═════════════════════════════════════════════════════
@@ -350,9 +547,17 @@ export class MetaplexBridge {
350
547
  // ═════════════════════════════════════════════════════
351
548
  // Private — MPL fetching
352
549
  // ═════════════════════════════════════════════════════
353
- async fetchMplSnapshot(asset, rpcUrl) {
354
- const { mplCore, umiBundle, umiCore } = await loadMplCore();
355
- const umi = umiBundle.createUmi(rpcUrl).use(mplCore.mplCore());
550
+ async buildUmi(rpcUrl, rpcHeaders) {
551
+ const { mplCore, umiBundle } = await loadMplCore();
552
+ // umi-bundle-defaults.createUmi accepts an options object with httpHeaders
553
+ // since umi 1.x — required for gated providers like Synapse RPC that
554
+ // enforce `x-api-key`. Without it `getAccountInfo` returns 401 silently.
555
+ const umi = umiBundle.createUmi(rpcUrl, rpcHeaders ? { httpHeaders: rpcHeaders } : undefined).use(mplCore.mplCore());
556
+ return umi;
557
+ }
558
+ async fetchMplSnapshot(asset, rpcUrl, rpcHeaders) {
559
+ const { mplCore, umiCore } = await loadMplCore();
560
+ const umi = await this.buildUmi(rpcUrl, rpcHeaders);
356
561
  try {
357
562
  const fetched = await mplCore.fetchAsset(umi, umiCore.publicKey(asset.toBase58()));
358
563
  const owner = new PublicKey(fetched.owner.toString());
@@ -433,6 +638,31 @@ export class MetaplexBridge {
433
638
  });
434
639
  return this.firstWeb3Ix(builder, "addExternalPluginAdapterV1");
435
640
  }
641
+ // ═════════════════════════════════════════════════════
642
+ // Private — SAP instruction building (v0.9.3)
643
+ // ═════════════════════════════════════════════════════
644
+ async buildRegisterAgentIx(args) {
645
+ // Lazy import to avoid a hard cycle with `pda/index.ts`.
646
+ const { deriveGlobalRegistry } = await import("../pda");
647
+ const { SystemProgram } = await import("@solana/web3.js");
648
+ const [agentPda] = deriveAgent(args.wallet);
649
+ const [statsPda] = deriveAgentStats(agentPda);
650
+ const [globalPda] = deriveGlobalRegistry();
651
+ const a = args.args;
652
+ // Cast to `any` to sidestep Anchor's deep generic IDL inference, which
653
+ // otherwise blows TS recursion budget here. Same pattern as BaseModule.
654
+ const methods = this.program.methods;
655
+ return await methods
656
+ .registerAgent(a.name, a.description, a.capabilities, a.pricing, a.protocols, a.agentId ?? null, a.agentUri ?? null, a.x402Endpoint ?? null)
657
+ .accounts({
658
+ wallet: args.wallet,
659
+ agent: agentPda,
660
+ agentStats: statsPda,
661
+ globalRegistry: globalPda,
662
+ systemProgram: SystemProgram.programId,
663
+ })
664
+ .instruction();
665
+ }
436
666
  async firstWeb3Ix(builder, name) {
437
667
  const items = builder.getInstructions();
438
668
  const first = items[0];
@@ -1 +1 @@
1
- {"version":3,"file":"metaplex-bridge.js","sourceRoot":"","sources":["../../../src/registries/metaplex-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metaplex-bridge.js","sourceRoot":"","sources":["../../../src/registries/metaplex-bridge.ts"],"names":[],"mappings":"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"}
@@ -50,4 +50,54 @@ export const sha256 = (input) => {
50
50
  * ```
51
51
  */
52
52
  export const hashToArray = (hash) => Array.from(hash);
53
+ /**
54
+ * Compute the deterministic batch root used by `settle_batch` (v0.10.0).
55
+ *
56
+ * The on-chain program enforces:
57
+ * `batch_root == sha256(s_0 || s_1 || ... || s_{N-1})`
58
+ * where each `s_i` is a 32-byte service hash, in the same order as the
59
+ * `settlements: Settlement[]` array passed to the instruction.
60
+ *
61
+ * Use this helper to derive the seed for the {@link deriveSettlementReceipt}
62
+ * PDA when batching settlements.
63
+ *
64
+ * @name computeBatchRoot
65
+ * @param serviceHashes - Array of 32-byte service hashes (Buffer/Uint8Array/number[]).
66
+ * @returns {Uint8Array} 32-byte batch root.
67
+ * @throws If any `serviceHashes[i]` is not exactly 32 bytes long.
68
+ * @category Utils
69
+ * @since v0.10.0
70
+ *
71
+ * @example
72
+ * ```ts
73
+ * import { computeBatchRoot, hashToArray } from "@synapse-sap/sdk/utils";
74
+ *
75
+ * const root = computeBatchRoot([h1, h2, h3]);
76
+ * await client.escrow.settleBatch(depositor, settlements, root);
77
+ * ```
78
+ */
79
+ export const computeBatchRoot = (serviceHashes) => {
80
+ if (serviceHashes.length === 0) {
81
+ throw new Error("computeBatchRoot: serviceHashes must not be empty");
82
+ }
83
+ const hash = createHash("sha256");
84
+ for (let i = 0; i < serviceHashes.length; i++) {
85
+ const h = serviceHashes[i];
86
+ let buf;
87
+ if (h instanceof Uint8Array) {
88
+ buf = Buffer.from(h);
89
+ }
90
+ else if (Array.isArray(h)) {
91
+ buf = Buffer.from(h);
92
+ }
93
+ else {
94
+ throw new Error(`computeBatchRoot: serviceHashes[${i}] is undefined or unsupported type`);
95
+ }
96
+ if (buf.length !== 32) {
97
+ throw new Error(`computeBatchRoot: serviceHashes[${i}] must be 32 bytes, got ${buf.length}`);
98
+ }
99
+ hash.update(buf);
100
+ }
101
+ return new Uint8Array(hash.digest());
102
+ };
53
103
  //# sourceMappingURL=hash.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../src/utils/hash.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAmC,EAAc,EAAE;IACxE,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CACT,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAChE,CAAC;IACF,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAY,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"hash.js","sourceRoot":"","sources":["../../../src/utils/hash.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAmC,EAAc,EAAE;IACxE,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CACT,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAChE,CAAC;IACF,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AACvC,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAgB,EAAY,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,aAA4D,EAChD,EAAE;IACd,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,GAAW,CAAC;QAChB,IAAI,CAAC,YAAY,UAAU,EAAE,CAAC;YAC5B,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CACb,mCAAmC,CAAC,oCAAoC,CACzE,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,mCAAmC,CAAC,2BAA2B,GAAG,CAAC,MAAM,EAAE,CAC5E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IACD,OAAO,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;AACvC,CAAC,CAAC"}
@@ -27,4 +27,5 @@ export { LIMITS, AGENT_VERSION, VAULT_PROTOCOL_VERSION, TOOL_CATEGORY_VALUES, HT
27
27
  export { SapNetwork } from "./network";
28
28
  export type { SapNetworkId } from "./network";
29
29
  export { SAP_PROGRAM, SAP_UPGRADE_AUTHORITY, GLOBAL_REGISTRY_ADDRESS, GLOBAL_REGISTRY_BUMP, IDL_ACCOUNT_ADDRESS, PROGRAM_METADATA_PROGRAM, TOOL_CATEGORY_ADDRESSES, TOOL_CATEGORY_ADDRESS_LIST, } from "./addresses";
30
+ export { USDC_MINT_MAINNET, USDC_MINT_DEVNET, MIN_AGENT_STAKE_LAMPORTS, MAX_DELEGATE_DURATION_SECS, isAcceptedUsdcMint, isAcceptedPaymentToken, } from "./payments";
30
31
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGvC,OAAO,EACL,MAAM,EACN,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/constants/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,GACf,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAGvC,OAAO,EACL,MAAM,EACN,aAAa,EACb,sBAAsB,EACtB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAG9C,OAAO,EACL,WAAW,EACX,qBAAqB,EACrB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,wBAAwB,EACxB,uBAAuB,EACvB,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAGrB,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,EAC1B,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * @module constants/payments
3
+ * @description Payment-token allowlist + agent stake collateral constants
4
+ * mirroring the on-chain v0.10.0 hardening.
5
+ *
6
+ * The on-chain program now accepts only:
7
+ * - **Native SOL** — signalled by `tokenMint = null` on escrow creation.
8
+ * - **USDC mainnet** — `EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v`.
9
+ * - **USDC devnet** — `4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU`.
10
+ *
11
+ * Any other SPL mint passed to `createEscrow` / `createEscrowV2` is
12
+ * rejected on-chain with `PaymentTokenNotAllowed` (error code 6093).
13
+ *
14
+ * Additionally, the agent owner MUST have an `AgentStake` PDA with
15
+ * `staked_amount >= MIN_AGENT_STAKE_LAMPORTS` (0.1 SOL) BEFORE any
16
+ * client can create a new escrow against that agent. Use
17
+ * {@link StakingModule.initStake} + {@link StakingModule.deposit}
18
+ * to satisfy the requirement.
19
+ *
20
+ * @category Constants
21
+ * @since v0.10.0
22
+ */
23
+ import { PublicKey } from "@solana/web3.js";
24
+ /**
25
+ * USDC mint on Solana mainnet-beta (Circle).
26
+ *
27
+ * @name USDC_MINT_MAINNET
28
+ * @category Constants
29
+ * @since v0.10.0
30
+ */
31
+ export declare const USDC_MINT_MAINNET: PublicKey;
32
+ /**
33
+ * USDC mint on Solana devnet (Circle test mint).
34
+ *
35
+ * @name USDC_MINT_DEVNET
36
+ * @category Constants
37
+ * @since v0.10.0
38
+ */
39
+ export declare const USDC_MINT_DEVNET: PublicKey;
40
+ /**
41
+ * Minimum agent stake required to gate escrow creation, expressed in lamports.
42
+ * Mirrors `AgentStake::MIN_STAKE` on-chain (`100_000_000` = 0.1 SOL).
43
+ *
44
+ * @name MIN_AGENT_STAKE_LAMPORTS
45
+ * @category Constants
46
+ * @since v0.10.0
47
+ */
48
+ export declare const MIN_AGENT_STAKE_LAMPORTS: bigint;
49
+ /**
50
+ * Maximum delegate duration (seconds) accepted by `add_vault_delegate`.
51
+ * Mirrors `VaultDelegate::MAX_DELEGATE_DURATION_SECS` on-chain
52
+ * (`365 * 86_400` = 1 year).
53
+ *
54
+ * @name MAX_DELEGATE_DURATION_SECS
55
+ * @category Constants
56
+ * @since v0.10.0
57
+ */
58
+ export declare const MAX_DELEGATE_DURATION_SECS: number;
59
+ /**
60
+ * Returns true when `mint` is an accepted USDC mint (mainnet or devnet).
61
+ *
62
+ * @name isAcceptedUsdcMint
63
+ * @param mint - Candidate SPL token mint.
64
+ * @category Constants
65
+ * @since v0.10.0
66
+ */
67
+ export declare function isAcceptedUsdcMint(mint: PublicKey): boolean;
68
+ /**
69
+ * Returns true when the (optional) `tokenMint` is acceptable as escrow payment.
70
+ * `null` represents native SOL and is always accepted.
71
+ *
72
+ * @name isAcceptedPaymentToken
73
+ * @param tokenMint - The mint passed to `createEscrow*`. `null` = SOL.
74
+ * @category Constants
75
+ * @since v0.10.0
76
+ */
77
+ export declare function isAcceptedPaymentToken(tokenMint: PublicKey | null): boolean;
78
+ //# sourceMappingURL=payments.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payments.d.ts","sourceRoot":"","sources":["../../../src/constants/payments.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,WAE7B,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,WAE5B,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,QAAsB,CAAC;AAE5D;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,QAAe,CAAC;AAEvD;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAE3D;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,GAAG,OAAO,CAE3E"}
@@ -56,7 +56,15 @@ export declare const SEEDS: {
56
56
  readonly SUBSCRIPTION: "sap_sub";
57
57
  readonly SHARD: "sap_shard";
58
58
  readonly INDEX_PAGE: "sap_idx_page";
59
- /** @since v0.7.0 — Receipt batch merkle root PDA */
59
+ /**
60
+ * @since v0.10.0 — Anti-replay receipt PDA bound to (escrow, service_hash) or (escrow, batch_root).
61
+ * Created via `init` on every settle_calls / settle_batch / settle_calls_v2; replays fail.
62
+ */
63
+ readonly SETTLEMENT_RECEIPT: "sap_recv";
64
+ /**
65
+ * @deprecated v0.10.0 — Was reserved for receipt batch merkle root (never used on-chain).
66
+ * Use {@link SEEDS.SETTLEMENT_RECEIPT} (`sap_recv`) instead. Will be removed in v0.11.0.
67
+ */
60
68
  readonly RECEIPT: "sap_receipt";
61
69
  };
62
70
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"seeds.d.ts","sourceRoot":"","sources":["../../../src/constants/seeds.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BhB,oDAAoD;;CAE5C,CAAC;AAEX;;;;;;;;GAQG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,KAAK,CAAC"}
1
+ {"version":3,"file":"seeds.d.ts","sourceRoot":"","sources":["../../../src/constants/seeds.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA8BhB;;;OAGG;;IAEH;;;OAGG;;CAEK,CAAC;AAEX;;;;;;;;GAQG;AACH,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,KAAK,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"escrow-v2.d.ts","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"escrow-v2.d.ts","sourceRoot":"","sources":["../../../src/modules/escrow-v2.ts"],"names":[],"mappings":"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"}
@@ -117,15 +117,23 @@ export declare class EscrowModule extends BaseModule {
117
117
  * @name settleBatch
118
118
  * @description Batch settlement — process up to 10 settlements in a single
119
119
  * transaction. Must be called by the agent owner wallet.
120
+ *
120
121
  * @param depositorWallet - The wallet of the client who funded the escrow.
121
122
  * @param settlements - Array of settlement entries (up to 10).
123
+ * @param batchRoot - Optional pre-computed batch root
124
+ * (`sha256(s_0 || s_1 || ... || s_{N-1})`). When omitted the SDK
125
+ * computes it from `settlements[*].serviceHash`. **Required on-chain
126
+ * since v0.10.0** to seed the anti-replay receipt PDA.
122
127
  * @param splAccounts - Remaining accounts for SPL token transfers. Defaults to `[]`.
123
128
  * @param opts - Optional {@link SettleOptions} for priority fees and RPC tuning.
124
129
  * @returns {Promise<TransactionSignature>} The transaction signature.
130
+ *
125
131
  * @since v0.1.0
126
132
  * @updated v0.6.2 — Added optional `opts` parameter for priority fees.
133
+ * @updated v0.10.0 — Added `batchRoot` argument and required
134
+ * `settlementReceipt` PDA on-chain (anti-replay).
127
135
  */
128
- settleBatch(depositorWallet: PublicKey, settlements: Settlement[], splAccounts?: AccountMeta[], opts?: SettleOptions): Promise<TransactionSignature>;
136
+ settleBatch(depositorWallet: PublicKey, settlements: Settlement[], batchRoot?: Uint8Array | number[] | null, splAccounts?: AccountMeta[], opts?: SettleOptions): Promise<TransactionSignature>;
129
137
  /**
130
138
  * @name fetch
131
139
  * @description Fetch a deserialized `EscrowAccount`.
@@ -1 +1 @@
1
- {"version":3,"file":"escrow.d.ts","sourceRoot":"","sources":["../../../src/modules/escrow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,WAAW,EACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAMpC,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACX,MAAM,UAAU,CAAC;AAKlB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAG1C;;;;;;;;OAQG;IACH,YAAY,CACV,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,SAAS,GACpB,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAM/B;;;;;;;;;;;;;;OAcG;IACG,MAAM,CACV,WAAW,EAAE,SAAS,EACtB,IAAI,EAAE,gBAAgB,EACtB,WAAW,GAAE,WAAW,EAAO,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IA0BhC;;;;;;;;OAQG;IACG,OAAO,CACX,WAAW,EAAE,SAAS,EACtB,MAAM,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,EAC5B,WAAW,GAAE,WAAW,EAAO,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAehC;;;;;;;;;;;;OAYG;IACG,MAAM,CACV,eAAe,EAAE,SAAS,EAC1B,aAAa,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,EACnC,WAAW,EAAE,MAAM,EAAE,EACrB,WAAW,GAAE,WAAW,EAAO,EAC/B,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,oBAAoB,CAAC;IA0BhC;;;;;;;;OAQG;IACG,QAAQ,CACZ,WAAW,EAAE,SAAS,EACtB,MAAM,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,EAC5B,WAAW,GAAE,WAAW,EAAO,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAehC;;;;;;OAMG;IACG,KAAK,CAAC,WAAW,EAAE,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAalE;;;;;;;;;;;OAWG;IACG,WAAW,CACf,eAAe,EAAE,SAAS,EAC1B,WAAW,EAAE,UAAU,EAAE,EACzB,WAAW,GAAE,WAAW,EAAO,EAC/B,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,oBAAoB,CAAC;IA4BhC;;;;;;;;OAQG;IACG,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAKnF;;;;;;;;OAQG;IACG,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAKlG;;;;;;;;OAQG;IACG,UAAU,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGnE"}
1
+ {"version":3,"file":"escrow.d.ts","sourceRoot":"","sources":["../../../src/modules/escrow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAEL,KAAK,SAAS,EACd,KAAK,oBAAoB,EACzB,KAAK,WAAW,EACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAQpC,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,EACX,MAAM,UAAU,CAAC;AAKlB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAI3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,YAAa,SAAQ,UAAU;IAG1C;;;;;;;;OAQG;IACH,YAAY,CACV,QAAQ,EAAE,SAAS,EACnB,SAAS,CAAC,EAAE,SAAS,GACpB,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAM/B;;;;;;;;;;;;;;OAcG;IACG,MAAM,CACV,WAAW,EAAE,SAAS,EACtB,IAAI,EAAE,gBAAgB,EACtB,WAAW,GAAE,WAAW,EAAO,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAkChC;;;;;;;;OAQG;IACG,OAAO,CACX,WAAW,EAAE,SAAS,EACtB,MAAM,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,EAC5B,WAAW,GAAE,WAAW,EAAO,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAehC;;;;;;;;;;;;OAYG;IACG,MAAM,CACV,eAAe,EAAE,SAAS,EAC1B,aAAa,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,EACnC,WAAW,EAAE,MAAM,EAAE,EACrB,WAAW,GAAE,WAAW,EAAO,EAC/B,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,oBAAoB,CAAC;IA4BhC;;;;;;;;OAQG;IACG,QAAQ,CACZ,WAAW,EAAE,SAAS,EACtB,MAAM,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,EAC5B,WAAW,GAAE,WAAW,EAAO,GAC9B,OAAO,CAAC,oBAAoB,CAAC;IAehC;;;;;;OAMG;IACG,KAAK,CAAC,WAAW,EAAE,SAAS,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAalE;;;;;;;;;;;;;;;;;;;OAmBG;IACG,WAAW,CACf,eAAe,EAAE,SAAS,EAC1B,WAAW,EAAE,UAAU,EAAE,EACzB,SAAS,CAAC,EAAE,UAAU,GAAG,MAAM,EAAE,GAAG,IAAI,EACxC,WAAW,GAAE,WAAW,EAAO,EAC/B,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,oBAAoB,CAAC;IAsChC;;;;;;;;OAQG;IACG,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAKnF;;;;;;;;OAQG;IACG,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAKlG;;;;;;;;OAQG;IACG,UAAU,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGnE"}
@@ -485,5 +485,26 @@ export declare const deriveIndexPage: (parentIndexPda: PublicKey, pageIndex: num
485
485
  * @since v0.7.0
486
486
  */
487
487
  export declare const deriveReceiptBatch: (escrowV2Pda: PublicKey, batchIndex: number, programId?: PublicKey) => PdaResult;
488
+ /**
489
+ * Derive the **SettlementReceipt** PDA (v0.10.0 anti-replay).
490
+ *
491
+ * Seeds: `["sap_recv", escrow_pda, service_hash_or_batch_root]`
492
+ *
493
+ * Created via `init` on every `settle_calls`, `settle_batch`, and
494
+ * `settle_calls_v2`. The PDA's existence after the first call blocks
495
+ * any future replay of the same `service_hash` (or `batch_root`)
496
+ * against the same escrow.
497
+ *
498
+ * @name deriveSettlementReceipt
499
+ * @description Compute the receipt PDA that gates settlement replay.
500
+ * @param escrowPda - Parent escrow PDA (V1 `EscrowAccount` or V2 `EscrowAccountV2`).
501
+ * @param receiptKey - 32-byte `service_hash` (single settle / V2 settle)
502
+ * or `batch_root = sha256(s_0 || ... || s_{N-1})` (settle_batch).
503
+ * @param programId - Override program ID.
504
+ * @returns {PdaResult} `[pda, bump]` tuple.
505
+ * @category PDA
506
+ * @since v0.10.0
507
+ */
508
+ export declare const deriveSettlementReceipt: (escrowPda: PublicKey, receiptKey: Uint8Array | number[] | Buffer, programId?: PublicKey) => PdaResult;
488
509
  export {};
489
510
  //# sourceMappingURL=index.d.ts.map