@aibtc/mcp-server 1.23.0 → 1.24.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.
@@ -1,13 +1,16 @@
1
1
  import axios from "axios";
2
- import { wrapAxiosWithPayment, decodePaymentRequired, X402_HEADERS } from "x402-stacks";
2
+ import { makeSTXTokenTransfer, makeContractCall, uintCV, principalCV, noneCV, PostConditionMode, } from "@stacks/transactions";
3
+ import { decodePaymentRequired, encodePaymentPayload, X402_HEADERS, } from "../utils/x402-protocol.js";
3
4
  import { generateWallet, getStxAddress } from "@stacks/wallet-sdk";
4
- import { NETWORK, API_URL } from "../config/networks.js";
5
+ import { NETWORK, API_URL, getStacksNetwork } from "../config/networks.js";
6
+ import { getNetworkFromStacksChainId } from "../config/caip.js";
5
7
  import { getWalletManager } from "./wallet-manager.js";
6
8
  import { formatStx, formatSbtc } from "../utils/formatting.js";
7
9
  import { getSbtcService } from "./sbtc.service.js";
8
10
  import { getHiroApi } from "./hiro-api.js";
9
11
  import { createHash } from "crypto";
10
12
  import { InsufficientBalanceError } from "../utils/errors.js";
13
+ import { getContracts, parseContractId } from "../config/contracts.js";
11
14
  // Track payment attempts per client instance (auto-cleanup via WeakMap)
12
15
  const paymentAttempts = new WeakMap();
13
16
  // Transaction deduplication cache: {dedupKey -> {txid, timestamp}}
@@ -84,8 +87,9 @@ export async function createApiClient(baseUrl) {
84
87
  // Get account (from managed wallet or env mnemonic)
85
88
  const account = await getAccount();
86
89
  const axiosInstance = createBaseAxiosInstance(url);
87
- // Axios response interceptors run in the order they are added (FIFO),
88
- // so this guard will execute before the x402-stacks interceptor added by wrapAxiosWithPayment.
90
+ // Interceptor 1 (FIFO): max-1-payment-attempt guard.
91
+ // On the first 402, increments the counter and re-rejects so Interceptor 2 can handle it.
92
+ // On a second 402 (would-be retry loop), rejects with a user-facing error.
89
93
  axiosInstance.interceptors.response.use((response) => response, (error) => {
90
94
  // Only intercept 402 payment errors
91
95
  if (error.response?.status !== 402) {
@@ -97,13 +101,91 @@ export async function createApiClient(baseUrl) {
97
101
  // Reject retry - payment already attempted once
98
102
  return Promise.reject(new Error("Payment retry limit exceeded (max 1 attempt). This endpoint may have payment/settlement issues. Check balance and try again."));
99
103
  }
100
- // Increment counter and pass through to x402-stacks interceptor
104
+ // Increment counter and pass through to the native payment interceptor
101
105
  paymentAttempts.set(axiosInstance, attempts + 1);
102
106
  return Promise.reject(error);
103
107
  });
104
- // Wrap with x402-stacks payment interceptor
105
- const client = wrapAxiosWithPayment(axiosInstance, account);
106
- return client;
108
+ // Interceptor 2 (FIFO): native x402 payment handler.
109
+ // Decodes payment requirements, builds a sponsored signed transaction, encodes the
110
+ // PaymentPayloadV2 into the payment-signature header, and retries the original request.
111
+ axiosInstance.interceptors.response.use((response) => response, async (error) => {
112
+ if (error.response?.status !== 402) {
113
+ return Promise.reject(error);
114
+ }
115
+ try {
116
+ // Decode payment requirements from header
117
+ const headerValue = error.response?.headers?.[X402_HEADERS.PAYMENT_REQUIRED];
118
+ const paymentRequired = decodePaymentRequired(headerValue);
119
+ if (!paymentRequired || !paymentRequired.accepts || paymentRequired.accepts.length === 0) {
120
+ return Promise.reject(new Error("Invalid x402 402 response: missing or empty payment-required header"));
121
+ }
122
+ // Select first Stacks-compatible payment option
123
+ const selectedOption = paymentRequired.accepts.find((opt) => opt.network?.startsWith("stacks:"));
124
+ if (!selectedOption) {
125
+ const networks = paymentRequired.accepts.map((a) => a.network).join(", ");
126
+ return Promise.reject(new Error(`No compatible Stacks payment option found. Available networks: ${networks}`));
127
+ }
128
+ // Verify the payment network matches our configured network
129
+ const paymentNetwork = getNetworkFromStacksChainId(selectedOption.network);
130
+ if (paymentNetwork && paymentNetwork !== account.network) {
131
+ return Promise.reject(new Error(`Network mismatch: endpoint requires ${paymentNetwork} but wallet is configured for ${account.network}. ` +
132
+ `Switch to a ${paymentNetwork} wallet or use a ${account.network} endpoint.`));
133
+ }
134
+ // Build a sponsored signed transaction (relay pays gas; fee: 0n)
135
+ const tokenType = detectTokenType(selectedOption.asset);
136
+ const amount = BigInt(selectedOption.amount);
137
+ const networkName = getStacksNetwork(account.network);
138
+ let transaction;
139
+ if (tokenType === "sBTC") {
140
+ const contracts = getContracts(account.network);
141
+ const { address: contractAddress, name: contractName } = parseContractId(contracts.SBTC_TOKEN);
142
+ transaction = await makeContractCall({
143
+ contractAddress,
144
+ contractName,
145
+ functionName: "transfer",
146
+ functionArgs: [
147
+ uintCV(amount),
148
+ principalCV(account.address),
149
+ principalCV(selectedOption.payTo),
150
+ noneCV(),
151
+ ],
152
+ senderKey: account.privateKey,
153
+ network: networkName,
154
+ postConditionMode: PostConditionMode.Allow,
155
+ sponsored: true,
156
+ fee: 0n,
157
+ });
158
+ }
159
+ else {
160
+ transaction = await makeSTXTokenTransfer({
161
+ recipient: selectedOption.payTo,
162
+ amount,
163
+ senderKey: account.privateKey,
164
+ network: networkName,
165
+ memo: "",
166
+ sponsored: true,
167
+ fee: 0n,
168
+ });
169
+ }
170
+ const txHex = "0x" + transaction.serialize();
171
+ // Encode PaymentPayloadV2 into payment-signature header
172
+ const encodedPayload = encodePaymentPayload({
173
+ x402Version: 2,
174
+ resource: paymentRequired.resource,
175
+ accepted: selectedOption,
176
+ payload: { transaction: txHex },
177
+ });
178
+ // Retry the original request with the payment header
179
+ const originalRequest = error.config;
180
+ originalRequest.headers = originalRequest.headers || {};
181
+ originalRequest.headers[X402_HEADERS.PAYMENT_SIGNATURE] = encodedPayload;
182
+ return axiosInstance.request(originalRequest);
183
+ }
184
+ catch (paymentError) {
185
+ return Promise.reject(new Error(`x402 payment failed: ${paymentError instanceof Error ? paymentError.message : String(paymentError)}`));
186
+ }
187
+ });
188
+ return axiosInstance;
107
189
  }
108
190
  /**
109
191
  * Create a plain axios client without payment interceptor.
@@ -185,36 +267,18 @@ export async function probeEndpoint(options) {
185
267
  if (axiosError.response?.status === 402) {
186
268
  // Try to parse v2 payment-required header first
187
269
  const headerValue = axiosError.response.headers?.[X402_HEADERS.PAYMENT_REQUIRED];
188
- let paymentRequired = null;
189
- if (headerValue) {
190
- try {
191
- paymentRequired = decodePaymentRequired(headerValue);
192
- }
193
- catch {
194
- paymentRequired = null;
195
- }
196
- }
270
+ const paymentRequired = decodePaymentRequired(headerValue);
197
271
  // If v2 header is successfully parsed, use it
198
- if (paymentRequired && paymentRequired.accepts && paymentRequired.accepts.length > 0) {
272
+ if (paymentRequired?.accepts?.length) {
199
273
  const acceptedPayment = paymentRequired.accepts[0];
200
- // Convert CAIP-2 or simple network identifier to normalized format
201
- let network = acceptedPayment.network;
202
- if (network === 'stacks:1' || network === 'mainnet') {
203
- network = 'mainnet';
204
- }
205
- else if (network === 'stacks:2147483648' || network === 'testnet') {
206
- network = 'testnet';
207
- }
208
- else {
209
- // Fallback to configured default network if identifier is unrecognized
210
- network = NETWORK;
211
- }
274
+ // Convert CAIP-2 network identifier to human-readable format
275
+ const network = getNetworkFromStacksChainId(acceptedPayment.network) ?? NETWORK;
212
276
  return {
213
277
  type: 'payment_required',
214
278
  amount: acceptedPayment.amount,
215
279
  asset: acceptedPayment.asset,
216
280
  recipient: acceptedPayment.payTo,
217
- network: network,
281
+ network,
218
282
  endpoint: url,
219
283
  resource: paymentRequired.resource,
220
284
  maxTimeoutSeconds: acceptedPayment.maxTimeoutSeconds,
@@ -1 +1 @@
1
- {"version":3,"file":"x402.service.js","sourceRoot":"","sources":["../../src/services/x402.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"x402.service.js","sourceRoot":"","sources":["../../src/services/x402.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"inbox.tools.d.ts","sourceRoot":"","sources":["../../src/tools/inbox.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiEpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuL1D"}
1
+ {"version":3,"file":"inbox.tools.d.ts","sourceRoot":"","sources":["../../src/tools/inbox.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiEpE,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgK1D"}
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { makeContractCall, uintCV, principalCV, noneCV, } from "@stacks/transactions";
3
- import { decodePaymentRequired, encodePaymentPayload, X402_HEADERS } from "x402-stacks";
3
+ import { decodePaymentRequired, decodePaymentResponse, encodePaymentPayload, X402_HEADERS } from "../utils/x402-protocol.js";
4
4
  import { getAccount, NETWORK } from "../services/x402.service.js";
5
5
  import { getSbtcService } from "../services/sbtc.service.js";
6
6
  import { getStacksNetwork, getExplorerTxUrl } from "../config/networks.js";
@@ -113,26 +113,11 @@ Use this instead of execute_x402_endpoint for inbox messages — the generic too
113
113
  // Step 3: Build sponsored sBTC transfer
114
114
  const txHex = await buildSponsoredSbtcTransfer(account.privateKey, account.address, accept.payTo, amount);
115
115
  // Step 4: Encode PaymentPayloadV2
116
- const resourceUrl = paymentRequired.resource?.url || inboxUrl;
117
116
  const paymentSignature = encodePaymentPayload({
118
117
  x402Version: 2,
119
- resource: {
120
- url: resourceUrl,
121
- description: paymentRequired.resource?.description || "",
122
- mimeType: paymentRequired.resource?.mimeType || "application/json",
123
- },
124
- accepted: {
125
- scheme: accept.scheme || "exact",
126
- network: accept.network,
127
- asset: accept.asset,
128
- amount: accept.amount,
129
- payTo: accept.payTo,
130
- maxTimeoutSeconds: accept.maxTimeoutSeconds || 300,
131
- extra: accept.extra || {},
132
- },
133
- payload: {
134
- transaction: txHex,
135
- },
118
+ resource: paymentRequired.resource,
119
+ accepted: accept,
120
+ payload: { transaction: txHex },
136
121
  });
137
122
  // Step 5: Retry with payment
138
123
  const finalRes = await fetch(inboxUrl, {
@@ -153,17 +138,8 @@ Use this instead of execute_x402_endpoint for inbox messages — the generic too
153
138
  }
154
139
  if (finalRes.status === 201 || finalRes.status === 200) {
155
140
  // Extract payment response header for txid
156
- const paymentResponse = finalRes.headers.get(X402_HEADERS.PAYMENT_RESPONSE);
157
- let txid;
158
- if (paymentResponse) {
159
- try {
160
- const decoded = JSON.parse(Buffer.from(paymentResponse, "base64").toString());
161
- txid = decoded.transaction;
162
- }
163
- catch {
164
- // ignore parse errors
165
- }
166
- }
141
+ const settlement = decodePaymentResponse(finalRes.headers.get(X402_HEADERS.PAYMENT_RESPONSE));
142
+ const txid = settlement?.transaction;
167
143
  return createJsonResponse({
168
144
  success: true,
169
145
  message: "Message delivered",
@@ -1 +1 @@
1
- {"version":3,"file":"inbox.tools.js","sourceRoot":"","sources":["../../src/tools/inbox.tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inbox.tools.js","sourceRoot":"","sources":["../../src/tools/inbox.tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.tools.d.ts","sourceRoot":"","sources":["../../src/tools/scaffold.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAmCpE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsU7D"}
1
+ {"version":3,"file":"scaffold.tools.d.ts","sourceRoot":"","sources":["../../src/tools/scaffold.tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA4EpE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgR7D"}
@@ -23,6 +23,44 @@ async function isExistingX402Project(dir) {
23
23
  return false;
24
24
  }
25
25
  }
26
+ /**
27
+ * Validate that a project directory does not already exist.
28
+ * Returns an error response if it does, or null if the path is clear.
29
+ */
30
+ async function checkProjectConflict(projectPath) {
31
+ const exists = await fs.access(projectPath).then(() => true).catch(() => false);
32
+ if (!exists)
33
+ return null;
34
+ const isX402 = await isExistingX402Project(projectPath);
35
+ if (isX402) {
36
+ return createJsonResponse({
37
+ success: false,
38
+ error: "Project already exists",
39
+ message: `A project already exists at ${projectPath}. Adding endpoints to existing projects is not yet supported. Please choose a different project name or delete the existing project.`,
40
+ projectPath,
41
+ });
42
+ }
43
+ return createJsonResponse({
44
+ success: false,
45
+ error: "Directory already exists",
46
+ message: `A directory already exists at ${projectPath}. Please choose a different project name.`,
47
+ projectPath,
48
+ });
49
+ }
50
+ /**
51
+ * Resolve the recipient address: use the provided value, or fall back
52
+ * to the active wallet address, or return undefined.
53
+ */
54
+ async function resolveRecipientAddress(provided) {
55
+ if (provided)
56
+ return provided;
57
+ try {
58
+ return await getWalletAddress();
59
+ }
60
+ catch {
61
+ return undefined;
62
+ }
63
+ }
26
64
  export function registerScaffoldTools(server) {
27
65
  server.registerTool("scaffold_x402_endpoint", {
28
66
  description: `Create a complete x402 paid API project as a Cloudflare Worker.
@@ -36,9 +74,9 @@ This creates a NEW PROJECT FOLDER with everything needed to deploy a pay-per-use
36
74
 
37
75
  A folder named \`{projectName}\` containing:
38
76
  - src/index.ts - Hono app with your x402-protected endpoints
39
- - src/x402-middleware.ts - Payment verification (uses x402-stacks library)
77
+ - src/x402-middleware.ts - Payment verification (uses native relay fetch)
40
78
  - wrangler.jsonc - Cloudflare Worker config with staging/production envs
41
- - package.json - Dependencies including hono and x402-stacks
79
+ - package.json - Dependencies including hono (no x402-stacks dependency)
42
80
  - .dev.vars - Local dev variables (pre-filled if you have a wallet)
43
81
  - README.md - Documentation
44
82
 
@@ -97,54 +135,26 @@ npm run dev
97
135
  .optional()
98
136
  .default("mainnet")
99
137
  .describe("Network for payments (default: mainnet)"),
100
- facilitatorUrl: z
138
+ relayUrl: z
101
139
  .string()
102
140
  .url()
103
141
  .optional()
104
- .describe("Custom facilitator URL (default: https://facilitator.x402stacks.xyz)"),
142
+ .describe("Custom relay URL (default: https://x402-relay.aibtc.com)"),
105
143
  },
106
- }, async ({ outputDir, projectName, endpoints, recipientAddress, network, facilitatorUrl }) => {
144
+ }, async ({ outputDir, projectName, endpoints, recipientAddress, network, relayUrl }) => {
107
145
  try {
108
146
  const projectPath = path.join(outputDir, projectName);
109
- // Check if project already exists
110
- const projectExists = await fs.access(projectPath).then(() => true).catch(() => false);
111
- if (projectExists) {
112
- // Check if it's an x402 project we can add to
113
- const isX402 = await isExistingX402Project(projectPath);
114
- if (isX402) {
115
- return createJsonResponse({
116
- success: false,
117
- error: "Project already exists",
118
- message: `A project already exists at ${projectPath}. Adding endpoints to existing projects is not yet supported. Please choose a different project name or delete the existing project.`,
119
- projectPath,
120
- });
121
- }
122
- else {
123
- return createJsonResponse({
124
- success: false,
125
- error: "Directory already exists",
126
- message: `A directory already exists at ${projectPath}. Please choose a different project name.`,
127
- projectPath,
128
- });
129
- }
130
- }
131
- // Try to auto-fill recipient address from configured wallet if not provided
132
- let finalRecipientAddress = recipientAddress;
133
- if (!finalRecipientAddress) {
134
- try {
135
- finalRecipientAddress = await getWalletAddress();
136
- }
137
- catch {
138
- // No wallet configured - that's OK, user will need to set it manually
139
- }
140
- }
147
+ const conflict = await checkProjectConflict(projectPath);
148
+ if (conflict)
149
+ return conflict;
150
+ const finalRecipientAddress = await resolveRecipientAddress(recipientAddress);
141
151
  const result = await scaffoldProject({
142
152
  outputDir,
143
153
  projectName,
144
154
  endpoints: endpoints,
145
155
  recipientAddress: finalRecipientAddress,
146
156
  network: network || "mainnet",
147
- facilitatorUrl: facilitatorUrl || "https://facilitator.x402stacks.xyz",
157
+ relayUrl: relayUrl || "https://x402-relay.aibtc.com",
148
158
  });
149
159
  const responseEndpoints = endpoints.map((ep) => {
150
160
  const cost = ep.tier
@@ -183,7 +193,7 @@ This creates a NEW PROJECT FOLDER with everything needed to deploy a pay-per-use
183
193
 
184
194
  A folder named \`{projectName}\` containing:
185
195
  - src/index.ts - Hono app with your x402-protected AI endpoints
186
- - src/x402-middleware.ts - Payment verification (uses x402-stacks library)
196
+ - src/x402-middleware.ts - Payment verification (uses native relay fetch)
187
197
  - src/openrouter.ts - OpenRouter API client
188
198
  - wrangler.jsonc - Cloudflare Worker config
189
199
  - .dev.vars - Local dev variables (needs OPENROUTER_API_KEY)
@@ -249,59 +259,31 @@ npm run dev
249
259
  .optional()
250
260
  .default("mainnet")
251
261
  .describe("Network for payments (default: mainnet)"),
252
- facilitatorUrl: z
262
+ relayUrl: z
253
263
  .string()
254
264
  .url()
255
265
  .optional()
256
- .describe("Custom facilitator URL (default: https://facilitator.x402stacks.xyz)"),
266
+ .describe("Custom relay URL (default: https://x402-relay.aibtc.com)"),
257
267
  defaultModel: z
258
268
  .string()
259
269
  .optional()
260
270
  .default("anthropic/claude-3-haiku")
261
271
  .describe("Default OpenRouter model for all endpoints (default: anthropic/claude-3-haiku)"),
262
272
  },
263
- }, async ({ outputDir, projectName, endpoints, recipientAddress, network, facilitatorUrl, defaultModel, }) => {
273
+ }, async ({ outputDir, projectName, endpoints, recipientAddress, network, relayUrl, defaultModel, }) => {
264
274
  try {
265
275
  const projectPath = path.join(outputDir, projectName);
266
- // Check if project already exists
267
- const projectExists = await fs.access(projectPath).then(() => true).catch(() => false);
268
- if (projectExists) {
269
- // Check if it's an x402 project we can add to
270
- const isX402 = await isExistingX402Project(projectPath);
271
- if (isX402) {
272
- return createJsonResponse({
273
- success: false,
274
- error: "Project already exists",
275
- message: `A project already exists at ${projectPath}. Adding endpoints to existing projects is not yet supported. Please choose a different project name or delete the existing project.`,
276
- projectPath,
277
- });
278
- }
279
- else {
280
- return createJsonResponse({
281
- success: false,
282
- error: "Directory already exists",
283
- message: `A directory already exists at ${projectPath}. Please choose a different project name.`,
284
- projectPath,
285
- });
286
- }
287
- }
288
- // Try to auto-fill recipient address from configured wallet if not provided
289
- let finalRecipientAddress = recipientAddress;
290
- if (!finalRecipientAddress) {
291
- try {
292
- finalRecipientAddress = await getWalletAddress();
293
- }
294
- catch {
295
- // No wallet configured - that's OK, user will need to set it manually
296
- }
297
- }
276
+ const conflict = await checkProjectConflict(projectPath);
277
+ if (conflict)
278
+ return conflict;
279
+ const finalRecipientAddress = await resolveRecipientAddress(recipientAddress);
298
280
  const result = await scaffoldAIProject({
299
281
  outputDir,
300
282
  projectName,
301
283
  endpoints: endpoints,
302
284
  recipientAddress: finalRecipientAddress,
303
285
  network: network || "mainnet",
304
- facilitatorUrl: facilitatorUrl || "https://facilitator.x402stacks.xyz",
286
+ relayUrl: relayUrl || "https://x402-relay.aibtc.com",
305
287
  defaultModel: defaultModel || "anthropic/claude-3-haiku",
306
288
  });
307
289
  return createJsonResponse({
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold.tools.js","sourceRoot":"","sources":["../../src/tools/scaffold.tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold.tools.js","sourceRoot":"","sources":["../../src/tools/scaffold.tools.ts"],"names":[],"mappings":"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"}
@@ -7,4 +7,5 @@ export * from "./redact.js";
7
7
  export * from "./bitcoin.js";
8
8
  export * from "./tokens.js";
9
9
  export * from "./fee.js";
10
+ export * from "./x402-protocol.js";
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC"}
@@ -7,4 +7,5 @@ export * from "./redact.js";
7
7
  export * from "./bitcoin.js";
8
8
  export * from "./tokens.js";
9
9
  export * from "./fee.js";
10
+ export * from "./x402-protocol.js";
10
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC"}
@@ -38,10 +38,10 @@ export declare const networkSchema: z.ZodEnum<{
38
38
  * Zod schema for HTTP method
39
39
  */
40
40
  export declare const httpMethodSchema: z.ZodEnum<{
41
- POST: "POST";
42
41
  GET: "GET";
43
- DELETE: "DELETE";
42
+ POST: "POST";
44
43
  PUT: "PUT";
44
+ DELETE: "DELETE";
45
45
  }>;
46
46
  /**
47
47
  * Zod schema for post condition mode