@compose-market/sdk 0.8.2 → 0.8.3

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 (128) hide show
  1. package/.speakeasy/a2a.arazzo.yaml +1 -1
  2. package/.speakeasy/memory.arazzo.yaml +1 -1
  3. package/.speakeasy/tests.arazzo.yaml +1 -1
  4. package/dist/errors.d.ts +2 -0
  5. package/dist/errors.d.ts.map +1 -0
  6. package/dist/errors.js +2 -0
  7. package/dist/errors.js.map +1 -0
  8. package/dist/events.d.ts +202 -0
  9. package/dist/events.d.ts.map +1 -0
  10. package/dist/events.js +70 -0
  11. package/dist/events.js.map +1 -0
  12. package/dist/index.d.ts +277 -0
  13. package/dist/index.d.ts.map +1 -0
  14. package/dist/index.js +551 -0
  15. package/dist/index.js.map +1 -0
  16. package/dist/resources/accounts.d.ts +32 -0
  17. package/dist/resources/accounts.d.ts.map +1 -0
  18. package/dist/resources/accounts.js +128 -0
  19. package/dist/resources/accounts.js.map +1 -0
  20. package/dist/resources/agent.d.ts +58 -0
  21. package/dist/resources/agent.d.ts.map +1 -0
  22. package/dist/resources/agent.js +787 -0
  23. package/dist/resources/agent.js.map +1 -0
  24. package/dist/resources/channels.d.ts +24 -0
  25. package/dist/resources/channels.d.ts.map +1 -0
  26. package/dist/resources/channels.js +74 -0
  27. package/dist/resources/channels.js.map +1 -0
  28. package/dist/resources/directory.d.ts +43 -0
  29. package/dist/resources/directory.d.ts.map +1 -0
  30. package/dist/resources/directory.js +97 -0
  31. package/dist/resources/directory.js.map +1 -0
  32. package/dist/resources/dispenser.d.ts +25 -0
  33. package/dist/resources/dispenser.d.ts.map +1 -0
  34. package/dist/resources/dispenser.js +56 -0
  35. package/dist/resources/dispenser.js.map +1 -0
  36. package/dist/resources/feedback.d.ts +35 -0
  37. package/dist/resources/feedback.d.ts.map +1 -0
  38. package/dist/resources/feedback.js +127 -0
  39. package/dist/resources/feedback.js.map +1 -0
  40. package/dist/resources/inference.d.ts +206 -0
  41. package/dist/resources/inference.d.ts.map +1 -0
  42. package/dist/resources/inference.js +1049 -0
  43. package/dist/resources/inference.js.map +1 -0
  44. package/dist/resources/instrumentation.d.ts +29 -0
  45. package/dist/resources/instrumentation.d.ts.map +1 -0
  46. package/dist/resources/instrumentation.js +43 -0
  47. package/dist/resources/instrumentation.js.map +1 -0
  48. package/dist/resources/keys.d.ts +56 -0
  49. package/dist/resources/keys.d.ts.map +1 -0
  50. package/dist/resources/keys.js +186 -0
  51. package/dist/resources/keys.js.map +1 -0
  52. package/dist/resources/local.d.ts +56 -0
  53. package/dist/resources/local.d.ts.map +1 -0
  54. package/dist/resources/local.js +163 -0
  55. package/dist/resources/local.js.map +1 -0
  56. package/dist/resources/memory.d.ts +249 -0
  57. package/dist/resources/memory.d.ts.map +1 -0
  58. package/dist/resources/memory.js +217 -0
  59. package/dist/resources/memory.js.map +1 -0
  60. package/dist/resources/models.d.ts +45 -0
  61. package/dist/resources/models.d.ts.map +1 -0
  62. package/dist/resources/models.js +101 -0
  63. package/dist/resources/models.js.map +1 -0
  64. package/dist/resources/permissions.d.ts +23 -0
  65. package/dist/resources/permissions.d.ts.map +1 -0
  66. package/dist/resources/permissions.js +69 -0
  67. package/dist/resources/permissions.js.map +1 -0
  68. package/dist/resources/receipts.d.ts +23 -0
  69. package/dist/resources/receipts.d.ts.map +1 -0
  70. package/dist/resources/receipts.js +48 -0
  71. package/dist/resources/receipts.js.map +1 -0
  72. package/dist/resources/session-events.d.ts +51 -0
  73. package/dist/resources/session-events.d.ts.map +1 -0
  74. package/dist/resources/session-events.js +404 -0
  75. package/dist/resources/session-events.js.map +1 -0
  76. package/dist/resources/settlement.d.ts +21 -0
  77. package/dist/resources/settlement.d.ts.map +1 -0
  78. package/dist/resources/settlement.js +30 -0
  79. package/dist/resources/settlement.js.map +1 -0
  80. package/dist/resources/system.d.ts +9 -0
  81. package/dist/resources/system.d.ts.map +1 -0
  82. package/dist/resources/system.js +19 -0
  83. package/dist/resources/system.js.map +1 -0
  84. package/dist/resources/webhooks.d.ts +27 -0
  85. package/dist/resources/webhooks.d.ts.map +1 -0
  86. package/dist/resources/webhooks.js +78 -0
  87. package/dist/resources/webhooks.js.map +1 -0
  88. package/dist/resources/workflow.d.ts +49 -0
  89. package/dist/resources/workflow.d.ts.map +1 -0
  90. package/dist/resources/workflow.js +364 -0
  91. package/dist/resources/workflow.js.map +1 -0
  92. package/dist/resources/x402.d.ts +113 -0
  93. package/dist/resources/x402.d.ts.map +1 -0
  94. package/dist/resources/x402.js +231 -0
  95. package/dist/resources/x402.js.map +1 -0
  96. package/dist/tools/index.d.ts +55 -0
  97. package/dist/tools/index.d.ts.map +1 -0
  98. package/dist/tools/index.js +51 -0
  99. package/dist/tools/index.js.map +1 -0
  100. package/dist/types/index.d.ts +1859 -0
  101. package/dist/types/index.d.ts.map +1 -0
  102. package/dist/types/index.js +14 -0
  103. package/dist/types/index.js.map +1 -0
  104. package/dist/version.d.ts +9 -0
  105. package/dist/version.d.ts.map +1 -0
  106. package/dist/version.js +9 -0
  107. package/dist/version.js.map +1 -0
  108. package/generated/inference/esm/lib/config.d.ts +3 -3
  109. package/generated/inference/esm/lib/config.js +3 -3
  110. package/generated/inference/package.json +1 -1
  111. package/generated/inference/src/lib/config.ts +3 -3
  112. package/generated/manowar/esm/lib/config.d.ts +3 -3
  113. package/generated/manowar/esm/lib/config.js +3 -3
  114. package/generated/manowar/package.json +1 -1
  115. package/generated/manowar/src/lib/config.ts +3 -3
  116. package/generated/memory/esm/lib/config.d.ts +3 -3
  117. package/generated/memory/esm/lib/config.js +3 -3
  118. package/generated/memory/package.json +1 -1
  119. package/generated/memory/src/lib/config.ts +3 -3
  120. package/generated/x402/esm/lib/config.d.ts +3 -3
  121. package/generated/x402/esm/lib/config.js +3 -3
  122. package/generated/x402/package.json +1 -1
  123. package/generated/x402/src/lib/config.ts +3 -3
  124. package/package.json +2 -2
  125. package/specs/inference.openapi.yaml +1 -1
  126. package/specs/manowar.openapi.yaml +1 -1
  127. package/specs/memory.openapi.yaml +1 -1
  128. package/specs/x402.openapi.yaml +1 -1
@@ -0,0 +1,364 @@
1
+ /**
2
+ * Compose workflow runtime stream resource.
3
+ *
4
+ * Subscribes to POST /workflow/:wallet/chat on the Compose runtime and yields
5
+ * typed workflow events. The workflow orchestrator emits its
6
+ * own vocabulary (`start`, `step`, `agent`, `progress`, `tool_start`,
7
+ * `tool_end`, `result`, `error`, `complete`, `done`) via named SSE events;
8
+ * each frame carries a JSON payload with an optional `message` field.
9
+ *
10
+ * Same normalisation contract as `AgentResource`:
11
+ * - Tool lifecycle fires on `sdk.events.toolCallStart` / `toolCallEnd`.
12
+ * - Workflow-level start/end fires on `workflowStreamStart` / `workflowStreamEnd`.
13
+ * - Budget / receipt / sessionInvalid come from response headers + streamed
14
+ * `receipt` frames.
15
+ */
16
+ import { Error } from "../errors.js";
17
+ import { applySdkClientHeaders } from "@compose-market/core/http";
18
+ import { parseSSEStream } from "@compose-market/core/transport";
19
+ import { extractReceiptFromResponse, parseReceiptEvent } from "@compose-market/core/sse/receipt";
20
+ import { extractSessionBudgetFromResponse } from "@compose-market/core/sse/budget";
21
+ import { decode as decodeActivityEvent } from "@compose-market/core/activity";
22
+ import { decode as decodeModelEvent } from "@compose-market/core/model";
23
+ import { buildCallHeaders, StreamIterator, requestResponseWithPayment, } from "./inference.js";
24
+ export class WorkflowResource {
25
+ ctx;
26
+ constructor(ctx) {
27
+ this.ctx = ctx;
28
+ }
29
+ stream(params, options = {}) {
30
+ return new StreamIterator(driveWorkflowStream(this.ctx, params, options));
31
+ }
32
+ /**
33
+ * Fire-and-forget stop signal for an in-flight workflow execution.
34
+ * Returns the raw Response so callers can inspect status.
35
+ */
36
+ async stop(workflowWallet, threadId, options = {}) {
37
+ const url = `${this.ctx.baseUrl}/workflow/${encodeURIComponent(workflowWallet)}/stop`;
38
+ const wallet = this.ctx.getWalletMaybe();
39
+ const token = this.ctx.getTokenMaybe();
40
+ const headers = new Headers({
41
+ "Content-Type": "application/json",
42
+ });
43
+ applySdkClientHeaders(headers, this.ctx.userAgent);
44
+ if (token)
45
+ headers.set("Authorization", `Bearer ${token}`);
46
+ if (wallet.address)
47
+ headers.set("x-session-user-address", wallet.address);
48
+ if (wallet.chainId !== null)
49
+ headers.set("x-chain-id", String(wallet.chainId));
50
+ return this.ctx.fetch(url, {
51
+ method: "POST",
52
+ headers,
53
+ body: JSON.stringify({ threadId }),
54
+ signal: options.signal,
55
+ });
56
+ }
57
+ }
58
+ async function* driveWorkflowStream(ctx, params, options) {
59
+ const path = `/workflow/${encodeURIComponent(params.workflowWallet)}/chat`;
60
+ const wallet = ctx.getWalletMaybe();
61
+ const token = ctx.getTokenMaybe();
62
+ const body = {
63
+ message: params.message,
64
+ threadId: params.threadId,
65
+ userAddress: params.userAddress,
66
+ };
67
+ if (params.runId)
68
+ body.runId = params.runId;
69
+ if (typeof params.lastEventIndex === "number")
70
+ body.lastEventIndex = params.lastEventIndex;
71
+ if (typeof params.continuous === "boolean")
72
+ body.continuous = params.continuous;
73
+ if (params.attachment)
74
+ body.attachment = params.attachment;
75
+ if (params.attachments)
76
+ body.attachments = params.attachments;
77
+ const timeoutController = new AbortController();
78
+ const timeoutMs = options.timeoutMs ?? 10 * 60 * 1000;
79
+ const timer = setTimeout(() => timeoutController.abort(), timeoutMs);
80
+ ctx.events.emit("workflowStreamStart", {
81
+ userAddress: wallet.address,
82
+ chainId: wallet.chainId,
83
+ requestId: null,
84
+ workflowWallet: params.workflowWallet,
85
+ threadId: params.threadId,
86
+ runId: params.runId,
87
+ });
88
+ const requestSignal = mergeSignals(options.signal, timeoutController.signal);
89
+ let response;
90
+ try {
91
+ response = await requestResponseWithPayment(ctx.http, ctx, {
92
+ method: "POST",
93
+ path,
94
+ body,
95
+ headers: {
96
+ ...buildCallHeaders(options, wallet, token),
97
+ runId: params.runId ?? options.runId,
98
+ },
99
+ signal: requestSignal.signal,
100
+ timeoutMs,
101
+ expectStream: true,
102
+ }, options);
103
+ }
104
+ catch (fetchError) {
105
+ requestSignal.cleanup();
106
+ clearTimeout(timer);
107
+ if (fetchError instanceof Error)
108
+ throw fetchError;
109
+ throw new Error({
110
+ code: "network_error",
111
+ message: fetchError instanceof Error ? fetchError.message : String(fetchError),
112
+ });
113
+ }
114
+ requestSignal.cleanup();
115
+ clearTimeout(timer);
116
+ if (!response.ok) {
117
+ const text = await response.text().catch(() => "");
118
+ throw new Error({
119
+ code: "upstream_error",
120
+ message: `Workflow runtime returned ${response.status}: ${text.slice(0, 500)}`,
121
+ status: response.status,
122
+ });
123
+ }
124
+ if (!response.body) {
125
+ throw new Error({ code: "upstream_error", message: "Workflow runtime stream had no body" });
126
+ }
127
+ const requestId = response.headers.get("x-request-id") ?? response.headers.get("X-Request-Id");
128
+ const headerReceipt = extractReceiptFromResponse(response);
129
+ const { budget, sessionInvalidReason } = extractSessionBudgetFromResponse(response);
130
+ if (headerReceipt) {
131
+ ctx.events.emit("receipt", {
132
+ userAddress: wallet.address,
133
+ chainId: wallet.chainId,
134
+ receipt: headerReceipt,
135
+ requestId,
136
+ source: "response-header",
137
+ });
138
+ }
139
+ if (budget) {
140
+ ctx.events.emit("budget", {
141
+ userAddress: wallet.address,
142
+ chainId: wallet.chainId,
143
+ snapshot: budget,
144
+ requestId,
145
+ });
146
+ }
147
+ if (sessionInvalidReason) {
148
+ ctx.events.emit("sessionInvalid", {
149
+ userAddress: wallet.address,
150
+ chainId: wallet.chainId,
151
+ reason: sessionInvalidReason,
152
+ requestId,
153
+ });
154
+ }
155
+ let text = "";
156
+ let structuredOutput = null;
157
+ let streamReceipt = null;
158
+ let emittedDone = false;
159
+ const toolCalls = [];
160
+ const decodeOptions = { runId: params.runId };
161
+ try {
162
+ for await (const frame of parseSSEStream(response.body, { signal: options.signal })) {
163
+ const data = frame.data.trim();
164
+ if (!data || data === "[DONE]") {
165
+ if (data === "[DONE]" && !emittedDone) {
166
+ emittedDone = true;
167
+ }
168
+ continue;
169
+ }
170
+ if (isReceiptEvent(frame.event)) {
171
+ try {
172
+ streamReceipt = parseReceiptEvent(frame.data);
173
+ ctx.events.emit("receipt", {
174
+ userAddress: wallet.address,
175
+ chainId: wallet.chainId,
176
+ receipt: streamReceipt,
177
+ requestId,
178
+ source: "stream",
179
+ });
180
+ }
181
+ catch { /* skip malformed */ }
182
+ continue;
183
+ }
184
+ if (emittedDone)
185
+ continue;
186
+ let payload;
187
+ try {
188
+ payload = JSON.parse(data);
189
+ }
190
+ catch {
191
+ continue;
192
+ }
193
+ const eventName = frame.event || "";
194
+ if (payload.domain === "model") {
195
+ const decoded = decodeModelEvent(payload, decodeOptions);
196
+ if (decoded)
197
+ yield decoded;
198
+ continue;
199
+ }
200
+ if (payload.domain === "activity") {
201
+ const decoded = decodeActivityEvent(payload, decodeOptions);
202
+ if (decoded)
203
+ yield decoded;
204
+ continue;
205
+ }
206
+ if (eventName === "start") {
207
+ const decoded = decodeActivityEvent(frame, decodeOptions);
208
+ if (decoded)
209
+ yield decoded;
210
+ continue;
211
+ }
212
+ if (eventName === "step") {
213
+ const decoded = decodeActivityEvent(frame, decodeOptions);
214
+ if (decoded)
215
+ yield decoded;
216
+ continue;
217
+ }
218
+ if (eventName === "agent") {
219
+ const decoded = decodeActivityEvent(frame, decodeOptions);
220
+ if (decoded)
221
+ yield decoded;
222
+ continue;
223
+ }
224
+ if (eventName === "progress") {
225
+ const decoded = decodeActivityEvent(frame, decodeOptions);
226
+ if (decoded)
227
+ yield decoded;
228
+ continue;
229
+ }
230
+ if (eventName === "tool_start") {
231
+ const toolName = asString(payload.toolName, "tool");
232
+ const summary = typeof payload.content === "string"
233
+ ? payload.content
234
+ : typeof payload.message === "string" ? payload.message : undefined;
235
+ const content = typeof payload.content === "string" ? payload.content : undefined;
236
+ ctx.events.emit("toolCallStart", {
237
+ userAddress: wallet.address,
238
+ chainId: wallet.chainId,
239
+ requestId,
240
+ source: "workflow",
241
+ toolCallId: toolName,
242
+ toolName,
243
+ summary,
244
+ });
245
+ const decoded = decodeActivityEvent({ type: "tool-start", toolName, summary, content }, decodeOptions);
246
+ if (decoded)
247
+ yield decoded;
248
+ continue;
249
+ }
250
+ if (eventName === "tool_end") {
251
+ const toolName = asString(payload.toolName, "tool");
252
+ const summary = typeof payload.message === "string" ? payload.message : undefined;
253
+ const failed = typeof payload.error === "string" && payload.error.length > 0;
254
+ const error = failed ? payload.error : undefined;
255
+ toolCalls.push({ toolName, summary, failed, error });
256
+ ctx.events.emit("toolCallEnd", {
257
+ userAddress: wallet.address,
258
+ chainId: wallet.chainId,
259
+ requestId,
260
+ source: "workflow",
261
+ toolCallId: toolName,
262
+ toolName,
263
+ summary,
264
+ failed,
265
+ error,
266
+ });
267
+ const decoded = decodeActivityEvent({ type: "tool-end", toolName, summary, failed, error }, decodeOptions);
268
+ if (decoded)
269
+ yield decoded;
270
+ continue;
271
+ }
272
+ if (eventName === "result") {
273
+ const output = payload.output;
274
+ structuredOutput = output;
275
+ const coerced = typeof output === "string"
276
+ ? output
277
+ : typeof output === "object" && output !== null
278
+ ? JSON.stringify(output)
279
+ : "";
280
+ if (coerced)
281
+ text = coerced;
282
+ const decoded = decodeActivityEvent(frame, decodeOptions);
283
+ if (decoded)
284
+ yield decoded;
285
+ continue;
286
+ }
287
+ if (eventName === "error") {
288
+ const code = typeof payload.code === "string" ? payload.code : undefined;
289
+ const message = typeof payload.error === "string"
290
+ ? payload.error
291
+ : typeof payload.message === "string"
292
+ ? payload.message
293
+ : "Workflow stream error";
294
+ const decoded = decodeActivityEvent({ type: "error", code, message }, decodeOptions);
295
+ if (decoded)
296
+ yield decoded;
297
+ continue;
298
+ }
299
+ if (eventName === "complete") {
300
+ const decoded = decodeActivityEvent(frame, decodeOptions);
301
+ if (decoded)
302
+ yield decoded;
303
+ continue;
304
+ }
305
+ if (eventName === "done") {
306
+ if (!emittedDone) {
307
+ emittedDone = true;
308
+ const decoded = decodeActivityEvent(frame, decodeOptions);
309
+ if (decoded)
310
+ yield decoded;
311
+ }
312
+ continue;
313
+ }
314
+ // Unknown runtime frame — ignore rather than crash.
315
+ }
316
+ }
317
+ finally {
318
+ try {
319
+ response.body?.cancel();
320
+ }
321
+ catch { /* best-effort */ }
322
+ ctx.events.emit("workflowStreamEnd", {
323
+ userAddress: wallet.address,
324
+ chainId: wallet.chainId,
325
+ requestId,
326
+ workflowWallet: params.workflowWallet,
327
+ threadId: params.threadId,
328
+ runId: params.runId,
329
+ });
330
+ }
331
+ return {
332
+ text,
333
+ structuredOutput,
334
+ toolCalls,
335
+ requestId,
336
+ receipt: streamReceipt ?? headerReceipt,
337
+ budget,
338
+ sessionInvalidReason,
339
+ };
340
+ }
341
+ function asString(value, fallback) {
342
+ return typeof value === "string" && value.length > 0 ? value : fallback;
343
+ }
344
+ function isReceiptEvent(event) {
345
+ return event === "receipt" || event === "compose.receipt";
346
+ }
347
+ function mergeSignals(a, b) {
348
+ if (!a)
349
+ return { signal: b, cleanup: () => { } };
350
+ const c = new AbortController();
351
+ const forward = () => c.abort();
352
+ if (a.aborted || b.aborted)
353
+ c.abort();
354
+ a.addEventListener("abort", forward, { once: true });
355
+ b.addEventListener("abort", forward, { once: true });
356
+ return {
357
+ signal: c.signal,
358
+ cleanup: () => {
359
+ a.removeEventListener("abort", forward);
360
+ b.removeEventListener("abort", forward);
361
+ },
362
+ };
363
+ }
364
+ //# sourceMappingURL=workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/resources/workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAmC,MAAM,2BAA2B,CAAC;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACjG,OAAO,EAAE,gCAAgC,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAAE,MAAM,IAAI,mBAAmB,EAAsB,MAAM,+BAA+B,CAAC;AAClG,OAAO,EAAE,MAAM,IAAI,gBAAgB,EAAmB,MAAM,4BAA4B,CAAC;AAQzF,OAAO,EACH,gBAAgB,EAEhB,cAAc,EACd,0BAA0B,GAC7B,MAAM,gBAAgB,CAAC;AAexB,MAAM,OAAO,gBAAgB;IACI;IAA7B,YAA6B,GAA4B;QAA5B,QAAG,GAAH,GAAG,CAAyB;IAAI,CAAC;IAE9D,MAAM,CACF,MAAkC,EAClC,UAAuB,EAAE;QAEzB,OAAO,IAAI,cAAc,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI,CAAC,cAAsB,EAAE,QAAgB,EAAE,UAAoC,EAAE;QACvF,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,aAAa,kBAAkB,CAAC,cAAc,CAAC,OAAO,CAAC;QACtF,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;QACzC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;YACxB,cAAc,EAAE,kBAAkB;SACrC,CAAC,CAAC;QACH,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnD,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,KAAK,EAAE,CAAC,CAAC;QAC3D,IAAI,MAAM,CAAC,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1E,IAAI,MAAM,CAAC,OAAO,KAAK,IAAI;YAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/E,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;YACvB,MAAM,EAAE,MAAM;YACd,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;YAClC,MAAM,EAAE,OAAO,CAAC,MAAM;SACzB,CAAC,CAAC;IACP,CAAC;CACJ;AAED,KAAK,SAAS,CAAC,CAAC,mBAAmB,CAC/B,GAA4B,EAC5B,MAAkC,EAClC,OAAoB;IAEpB,MAAM,IAAI,GAAG,aAAa,kBAAkB,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC;IAC3E,MAAM,MAAM,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;IAElC,MAAM,IAAI,GAA4B;QAClC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,WAAW,EAAE,MAAM,CAAC,WAAW;KAClC,CAAC;IACF,IAAI,MAAM,CAAC,KAAK;QAAE,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC5C,IAAI,OAAO,MAAM,CAAC,cAAc,KAAK,QAAQ;QAAE,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC3F,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,SAAS;QAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAChF,IAAI,MAAM,CAAC,UAAU;QAAE,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAC3D,IAAI,MAAM,CAAC,WAAW;QAAE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;IAE9D,MAAM,iBAAiB,GAAG,IAAI,eAAe,EAAE,CAAC;IAChD,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IACtD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;IAErE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;QACnC,WAAW,EAAE,MAAM,CAAC,OAAO;QAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,SAAS,EAAE,IAAI;QACf,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,KAAK,EAAE,MAAM,CAAC,KAAK;KACtB,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC7E,IAAI,QAAkB,CAAC;IACvB,IAAI,CAAC;QACD,QAAQ,GAAG,MAAM,0BAA0B,CAAU,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE;YAChE,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,IAAI;YACJ,OAAO,EAAE;gBACL,GAAG,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;gBAC3C,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK;aACvC;YACD,MAAM,EAAE,aAAa,CAAC,MAAM;YAC5B,SAAS;YACT,YAAY,EAAE,IAAI;SACrB,EAAE,OAAO,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,UAAU,EAAE,CAAC;QAClB,aAAa,CAAC,OAAO,EAAE,CAAC;QACxB,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,IAAI,UAAU,YAAY,KAAK;YAAE,MAAM,UAAU,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC;YACZ,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,UAAU,YAAY,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;SACjF,CAAC,CAAC;IACP,CAAC;IAED,aAAa,CAAC,OAAO,EAAE,CAAC;IACxB,YAAY,CAAC,KAAK,CAAC,CAAC;IAEpB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACnD,MAAM,IAAI,KAAK,CAAC;YACZ,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,6BAA6B,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;YAC9E,MAAM,EAAE,QAAQ,CAAC,MAAM;SAC1B,CAAC,CAAC;IACP,CAAC;IAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;IAChG,CAAC;IAED,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAC/F,MAAM,aAAa,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IAC3D,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE,GAAG,gCAAgC,CAAC,QAAQ,CAAC,CAAC;IAEpF,IAAI,aAAa,EAAE,CAAC;QAChB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE;YACvB,WAAW,EAAE,MAAM,CAAC,OAAO;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,aAAa;YACtB,SAAS;YACT,MAAM,EAAE,iBAAiB;SAC5B,CAAC,CAAC;IACP,CAAC;IACD,IAAI,MAAM,EAAE,CAAC;QACT,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE;YACtB,WAAW,EAAE,MAAM,CAAC,OAAO;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,MAAM;YAChB,SAAS;SACZ,CAAC,CAAC;IACP,CAAC;IACD,IAAI,oBAAoB,EAAE,CAAC;QACvB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC9B,WAAW,EAAE,MAAM,CAAC,OAAO;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,oBAAoB;YAC5B,SAAS;SACZ,CAAC,CAAC;IACP,CAAC;IAED,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,gBAAgB,GAAY,IAAI,CAAC;IACrC,IAAI,aAAa,GAAmB,IAAI,CAAC;IACzC,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,MAAM,SAAS,GAA2C,EAAE,CAAC;IAC7D,MAAM,aAAa,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;IAE9C,IAAI,CAAC;QACD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;YAClF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,IAAI,IAAI,KAAK,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;oBACpC,WAAW,GAAG,IAAI,CAAC;gBACvB,CAAC;gBACD,SAAS;YACb,CAAC;YAED,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC;oBACD,aAAa,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;oBAC9C,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE;wBACvB,WAAW,EAAE,MAAM,CAAC,OAAO;wBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,OAAO,EAAE,aAAa;wBACtB,SAAS;wBACT,MAAM,EAAE,QAAQ;qBACnB,CAAC,CAAC;gBACP,CAAC;gBAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBAChC,SAAS;YACb,CAAC;YACD,IAAI,WAAW;gBAAE,SAAS;YAE1B,IAAI,OAAgC,CAAC;YACrC,IAAI,CAAC;gBACD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;YAC1D,CAAC;YAAC,MAAM,CAAC;gBACL,SAAS;YACb,CAAC;YAED,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;YAEpC,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;gBACzD,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAChC,MAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;gBAC5D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YAED,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBACxB,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC1D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACvB,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC1D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBACxB,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC1D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC1D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,YAAY,EAAE,CAAC;gBAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;oBAC/C,CAAC,CAAC,OAAO,CAAC,OAAO;oBACjB,CAAC,CAAC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;gBACxE,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;gBAClF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE;oBAC7B,WAAW,EAAE,MAAM,CAAC,OAAO;oBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,SAAS;oBACT,MAAM,EAAE,UAAU;oBAClB,UAAU,EAAE,QAAQ;oBACpB,QAAQ;oBACR,OAAO;iBACV,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,aAAa,CAAC,CAAC;gBACvG,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC3B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACpD,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;gBAClF,MAAM,MAAM,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;gBAC7E,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAE,OAAO,CAAC,KAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC7D,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBACrD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE;oBAC3B,WAAW,EAAE,MAAM,CAAC,OAAO;oBAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;oBACvB,SAAS;oBACT,MAAM,EAAE,UAAU;oBAClB,UAAU,EAAE,QAAQ;oBACpB,QAAQ;oBACR,OAAO;oBACP,MAAM;oBACN,KAAK;iBACR,CAAC,CAAC;gBACH,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,aAAa,CAAC,CAAC;gBAC3G,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;gBAC9B,gBAAgB,GAAG,MAAM,CAAC;gBAC1B,MAAM,OAAO,GAAG,OAAO,MAAM,KAAK,QAAQ;oBACtC,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;wBAC3C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;wBACxB,CAAC,CAAC,EAAE,CAAC;gBACb,IAAI,OAAO;oBAAE,IAAI,GAAG,OAAO,CAAC;gBAC5B,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC1D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;gBACxB,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;gBACzE,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ;oBAC7C,CAAC,CAAC,OAAO,CAAC,KAAK;oBACf,CAAC,CAAC,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ;wBACjC,CAAC,CAAC,OAAO,CAAC,OAAO;wBACjB,CAAC,CAAC,uBAAuB,CAAC;gBAClC,MAAM,OAAO,GAAG,mBAAmB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,aAAa,CAAC,CAAC;gBACrF,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC3B,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;gBAC1D,IAAI,OAAO;oBAAE,MAAM,OAAO,CAAC;gBAC3B,SAAS;YACb,CAAC;YACD,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBACvB,IAAI,CAAC,WAAW,EAAE,CAAC;oBACf,WAAW,GAAG,IAAI,CAAC;oBACnB,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;oBAC1D,IAAI,OAAO;wBAAE,MAAM,OAAO,CAAC;gBAC/B,CAAC;gBACD,SAAS;YACb,CAAC;YAED,oDAAoD;QACxD,CAAC;IACL,CAAC;YAAS,CAAC;QACP,IAAI,CAAC;YAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC5D,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;YACjC,WAAW,EAAE,MAAM,CAAC,OAAO;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS;YACT,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,KAAK,EAAE,MAAM,CAAC,KAAK;SACtB,CAAC,CAAC;IACP,CAAC;IAED,OAAO;QACH,IAAI;QACJ,gBAAgB;QAChB,SAAS;QACT,SAAS;QACT,OAAO,EAAE,aAAa,IAAI,aAAa;QACvC,MAAM;QACN,oBAAoB;KACvB,CAAC;AACN,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc,EAAE,QAAgB;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC5E,CAAC;AAED,SAAS,cAAc,CAAC,KAAyB;IAC7C,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,iBAAiB,CAAC;AAC9D,CAAC;AAED,SAAS,YAAY,CAAC,CAA0B,EAAE,CAAc;IAC5D,IAAI,CAAC,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IACjD,MAAM,CAAC,GAAG,IAAI,eAAe,EAAE,CAAC;IAChC,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IAChC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO;QAAE,CAAC,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,OAAO;QACH,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,OAAO,EAAE,GAAG,EAAE;YACV,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACxC,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC5C,CAAC;KACJ,CAAC;AACN,CAAC"}
@@ -0,0 +1,113 @@
1
+ import type { APIPromise, HttpClient } from "@compose-market/core/http";
2
+ import { type ClientEvmSigner } from "@x402/evm";
3
+ import type { PaymentMode, Receipt, FacilitatorChainsResponse, FacilitatorSupportedResponse, ModelMeterInput, ModelMeterQuote, PaymentAbortInput, PaymentAbortResponse, PaymentPayload, PaymentPrepareInput, PaymentPrepareResponse, PaymentRequired, PaymentRequirements, PaymentSettleInput, PaymentSettleResponse, SettleResponse, VerifyResponse, X402PaymentSigner } from "../types/index.js";
4
+ export declare function encodePaymentPayload(payload: PaymentPayload): string;
5
+ export declare function encodePaymentSignature(value: string | PaymentPayload): string;
6
+ export declare function createX402EvmSigner(signer: ClientEvmSigner, options?: {
7
+ rpcUrl?: string;
8
+ schemes?: Array<"batch-settlement" | "upto" | "exact">;
9
+ }): X402PaymentSigner;
10
+ export declare function createPrivateKeyX402EvmSigner(input: {
11
+ privateKey: string;
12
+ rpcUrl?: string;
13
+ schemes?: Array<"batch-settlement" | "upto" | "exact">;
14
+ }): X402PaymentSigner;
15
+ export declare function createPrivateKeyX402EvmWallet(input: {
16
+ privateKey: string;
17
+ rpcUrl?: string;
18
+ schemes?: Array<"batch-settlement" | "upto" | "exact">;
19
+ }): {
20
+ address: `0x${string}`;
21
+ x402Signer: X402PaymentSigner;
22
+ };
23
+ export declare class FacilitatorResource {
24
+ private readonly client;
25
+ constructor(client: HttpClient);
26
+ supported(): APIPromise<FacilitatorSupportedResponse>;
27
+ chains(): APIPromise<FacilitatorChainsResponse>;
28
+ verify(body: {
29
+ x402Version: 2;
30
+ paymentPayload: PaymentPayload;
31
+ paymentRequirements: PaymentRequirements;
32
+ }): APIPromise<VerifyResponse>;
33
+ settle(body: {
34
+ x402Version: 2;
35
+ paymentPayload: PaymentPayload;
36
+ paymentRequirements: PaymentRequirements;
37
+ }): APIPromise<SettleResponse>;
38
+ }
39
+ export declare class PaymentsResource {
40
+ private readonly client;
41
+ private readonly ctx;
42
+ constructor(client: HttpClient, ctx: {
43
+ getWalletMaybe(): {
44
+ address: string | null;
45
+ chainId: number | null;
46
+ };
47
+ getTokenMaybe(): string | null;
48
+ });
49
+ /**
50
+ * Authorize a reusable Compose Key payment intent. The server owns budget
51
+ * reservation, idempotency, x402 challenge headers, and live budget headers.
52
+ */
53
+ prepare(input: PaymentPrepareInput, options?: {
54
+ signal?: AbortSignal;
55
+ timeoutMs?: number;
56
+ }): APIPromise<PaymentPrepareResponse>;
57
+ /**
58
+ * Settle a prepared payment intent with either an explicit final amount or
59
+ * an authoritative meter. The API rejects settlement above the authorized
60
+ * cap; the SDK only forwards the typed contract.
61
+ */
62
+ settle(input: PaymentSettleInput, options?: {
63
+ signal?: AbortSignal;
64
+ timeoutMs?: number;
65
+ }): APIPromise<PaymentSettleResponse>;
66
+ abort(input: PaymentAbortInput, options?: {
67
+ signal?: AbortSignal;
68
+ timeoutMs?: number;
69
+ }): APIPromise<PaymentAbortResponse>;
70
+ /**
71
+ * Ask the server to resolve the authoritative model-meter quote from the
72
+ * catalog and metering telemetry. No model/provider allowlists live here.
73
+ */
74
+ meterModel(input: ModelMeterInput, options?: {
75
+ signal?: AbortSignal;
76
+ timeoutMs?: number;
77
+ }): APIPromise<ModelMeterQuote>;
78
+ }
79
+ export declare class X402Resource {
80
+ private readonly fetchWithPayment?;
81
+ readonly facilitator: FacilitatorResource;
82
+ readonly payments: PaymentsResource;
83
+ constructor(client: HttpClient, ctx: {
84
+ getWalletMaybe(): {
85
+ address: string | null;
86
+ chainId: number | null;
87
+ };
88
+ getTokenMaybe(): string | null;
89
+ }, fetchWithPayment?: ((input: RequestInfo | URL, init?: RequestInit & {
90
+ paymentMode?: PaymentMode;
91
+ }) => Promise<Response>) | undefined);
92
+ fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
93
+ /**
94
+ * Decode the base64-url PAYMENT-REQUIRED header into a typed
95
+ * `PaymentRequired` body. Throws on malformed input.
96
+ */
97
+ decodePaymentRequired(headerValue: string): PaymentRequired;
98
+ /**
99
+ * Decode the base64-url PAYMENT-RESPONSE header into a typed
100
+ * `SettleResponse` body. Throws on malformed input.
101
+ */
102
+ decodePaymentResponse(headerValue: string): SettleResponse;
103
+ /**
104
+ * Encode a signed x402 `PaymentPayload` for the PAYMENT-SIGNATURE header.
105
+ * If a signer already returned a string, this returns it unchanged.
106
+ */
107
+ encodePaymentSignature(value: string | PaymentPayload): string;
108
+ /**
109
+ * Decode the base64-url X-Receipt header. Throws on malformed input.
110
+ */
111
+ decodeReceipt(headerValue: string): Receipt;
112
+ }
113
+ //# sourceMappingURL=x402.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"x402.d.ts","sourceRoot":"","sources":["../../src/resources/x402.ts"],"names":[],"mappings":"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"}