mppx 0.8.15 → 0.8.18
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.
- package/CHANGELOG.md +91 -0
- package/README.md +15 -0
- package/dist/Challenge.js +61 -39
- package/dist/Constants.d.ts +17 -17
- package/dist/Errors.d.ts +3 -3
- package/dist/Method.d.ts +35 -5
- package/dist/Method.js +7 -22
- package/dist/Store.d.ts +19 -0
- package/dist/Store.js +43 -0
- package/dist/attestation/Client.d.ts +17 -0
- package/dist/attestation/Client.js +28 -0
- package/dist/attestation/Constants.d.ts +15 -0
- package/dist/attestation/Constants.js +15 -0
- package/dist/attestation/Server.d.ts +4 -0
- package/dist/attestation/Server.js +8 -0
- package/dist/attestation/Types.d.ts +76 -0
- package/dist/attestation/Types.js +2 -0
- package/dist/attestation/index.d.ts +6 -0
- package/dist/attestation/index.js +6 -0
- package/dist/attestation/internal/HttpMessageSignature.d.ts +73 -0
- package/dist/attestation/internal/HttpMessageSignature.js +320 -0
- package/dist/attestation/internal/SigningContext.d.ts +4 -0
- package/dist/attestation/internal/SigningContext.js +11 -0
- package/dist/bin.js +3 -3
- package/dist/cli/THIRD-PARTY-LICENSES.txt +328 -0
- package/dist/cli/account.d.ts +14 -14
- package/dist/cli/cli.d.ts +6 -6
- package/dist/cli/cli.js +253 -1504
- package/dist/cli/plugins/index.js +19 -5
- package/dist/cli/plugins/tempo.js +7 -3
- package/dist/cli/sessions/Manager.js +7 -4
- package/dist/cli/sessions/commands.d.ts +4 -4
- package/dist/cli/sessions/request.d.ts +2 -0
- package/dist/cli/sessions/request.js +18 -0
- package/dist/cli/sessions/store.js +28 -14
- package/dist/cli/utils.d.ts +1 -1
- package/dist/cli/validate/index.d.ts +3 -3
- package/dist/client/Mppx.d.ts +3 -0
- package/dist/client/Mppx.js +13 -5
- package/dist/client/Transport.d.ts +3 -5
- package/dist/client/Transport.js +1 -17
- package/dist/client/internal/Fetch.js +2 -6
- package/dist/discovery/Discovery.js +2 -1
- package/dist/discovery/OpenApi.d.ts +3 -5
- package/dist/discovery/OpenApi.js +13 -34
- package/dist/discovery/internal/Metadata.d.ts +20 -0
- package/dist/discovery/internal/Metadata.js +36 -0
- package/dist/evm/Methods.d.ts +11 -11
- package/dist/evm/Types.d.ts +17 -17
- package/dist/evm/client/Charge.d.ts +11 -11
- package/dist/evm/client/Charge.js +8 -0
- package/dist/evm/client/Methods.d.ts +11 -11
- package/dist/evm/server/Charge.d.ts +1 -1
- package/dist/evm/server/Charge.js +2 -0
- package/dist/evm/server/Methods.d.ts +11 -11
- package/dist/internal/HeaderCodec.d.ts +2 -2
- package/dist/internal/types.d.ts +6 -0
- package/dist/proxy/Proxy.d.ts +2 -0
- package/dist/proxy/Proxy.js +117 -9
- package/dist/proxy/Service.d.ts +36 -1
- package/dist/proxy/Service.js +9 -8
- package/dist/proxy/services/anthropic.js +1 -0
- package/dist/proxy/services/openai.js +1 -0
- package/dist/proxy/services/stripe.js +1 -0
- package/dist/server/Mppx.d.ts +75 -13
- package/dist/server/Mppx.js +201 -23
- package/dist/server/core.d.ts +9 -0
- package/dist/server/core.js +9 -0
- package/dist/server/internal/html/config.d.ts +9 -9
- package/dist/server/internal/html/constants.d.ts +17 -17
- package/dist/stripe/Methods.d.ts +10 -10
- package/dist/stripe/client/Charge.d.ts +10 -10
- package/dist/stripe/client/Methods.d.ts +10 -10
- package/dist/stripe/internal/constants.d.ts +1 -1
- package/dist/stripe/internal/constants.js +1 -1
- package/dist/stripe/internal/types.d.ts +1 -0
- package/dist/stripe/server/Charge.d.ts +11 -11
- package/dist/stripe/server/Charge.js +51 -5
- package/dist/stripe/server/Methods.d.ts +137 -48
- package/dist/stripe/server/Methods.js +265 -4
- package/dist/stripe/server/internal/deposit-address.d.ts +13 -0
- package/dist/stripe/server/internal/deposit-address.js +28 -0
- package/dist/stripe/server/internal/html.gen.d.ts +1 -1
- package/dist/stripe/server/internal/html.gen.js +1 -1
- package/dist/stripe/server/internal/record-payment.d.ts +15 -0
- package/dist/stripe/server/internal/record-payment.js +42 -0
- package/dist/stripe/server/internal/request.d.ts +25 -0
- package/dist/stripe/server/internal/request.js +29 -0
- package/dist/stripe/server/spt.d.ts +8 -0
- package/dist/stripe/server/spt.js +8 -0
- package/dist/tap/Constants.d.ts +28 -0
- package/dist/tap/Constants.js +32 -0
- package/dist/tap/Types.d.ts +11 -0
- package/dist/tap/Types.js +2 -0
- package/dist/tap/client/index.d.ts +26 -0
- package/dist/tap/client/index.js +33 -0
- package/dist/tap/index.d.ts +5 -0
- package/dist/tap/index.js +5 -0
- package/dist/tap/server/index.d.ts +20 -0
- package/dist/tap/server/index.js +36 -0
- package/dist/tempo/Attribution.d.ts +1 -1
- package/dist/tempo/Methods.d.ts +73 -60
- package/dist/tempo/Methods.js +14 -3
- package/dist/tempo/Proof.d.ts +16 -16
- package/dist/tempo/client/Charge.d.ts +22 -19
- package/dist/tempo/client/Charge.js +32 -16
- package/dist/tempo/client/Methods.d.ts +51 -38
- package/dist/tempo/client/Subscription.d.ts +23 -23
- package/dist/tempo/internal/address.d.ts +2 -1
- package/dist/tempo/internal/address.js +3 -1
- package/dist/tempo/internal/auto-swap.js +4 -19
- package/dist/tempo/internal/defaults.d.ts +17 -6
- package/dist/tempo/internal/defaults.js +11 -0
- package/dist/tempo/internal/fee-payer.d.ts +12 -12
- package/dist/tempo/internal/machine-token-charge.d.ts +51 -0
- package/dist/tempo/internal/machine-token-charge.js +113 -0
- package/dist/tempo/internal/machine-token-session.d.ts +88 -0
- package/dist/tempo/internal/machine-token-session.js +173 -0
- package/dist/tempo/internal/proof.d.ts +17 -17
- package/dist/tempo/internal/signature-envelope.d.ts +14 -0
- package/dist/tempo/internal/signature-envelope.js +28 -0
- package/dist/tempo/legacy/client/ChannelOps.d.ts +2 -2
- package/dist/tempo/legacy/client/ChannelOps.js +11 -5
- package/dist/tempo/legacy/client/Session.d.ts +33 -21
- package/dist/tempo/legacy/client/Session.js +3 -3
- package/dist/tempo/legacy/client/SessionManager.d.ts +3 -1
- package/dist/tempo/legacy/client/SessionManager.js +2 -0
- package/dist/tempo/legacy/index.d.ts +1 -3
- package/dist/tempo/legacy/index.js +1 -3
- package/dist/tempo/legacy/session/escrow.abi.d.ts +374 -374
- package/dist/tempo/server/Charge.d.ts +28 -11
- package/dist/tempo/server/Charge.js +101 -55
- package/dist/tempo/server/Methods.d.ts +58 -56
- package/dist/tempo/server/Methods.js +8 -18
- package/dist/tempo/server/Relay.d.ts +1 -1
- package/dist/tempo/server/Relay.js +2 -2
- package/dist/tempo/server/Subscription.d.ts +25 -25
- package/dist/tempo/server/Subscription.js +2 -0
- package/dist/tempo/server/index.d.ts +1 -1
- package/dist/tempo/server/index.js +1 -1
- package/dist/tempo/server/internal/html.gen.d.ts +1 -1
- package/dist/tempo/server/internal/html.gen.js +1 -1
- package/dist/tempo/server/internal/transport.d.ts +2 -0
- package/dist/tempo/server/internal/transport.js +9 -2
- package/dist/tempo/session/client/ChannelOps.d.ts +18 -3
- package/dist/tempo/session/client/ChannelOps.js +35 -6
- package/dist/tempo/session/client/ChannelStore.d.ts +0 -5
- package/dist/tempo/session/client/ChannelStore.js +2 -2
- package/dist/tempo/session/client/CredentialState.d.ts +18 -3
- package/dist/tempo/session/client/CredentialState.js +77 -76
- package/dist/tempo/session/client/Runtime.d.ts +4 -2
- package/dist/tempo/session/client/Runtime.js +21 -5
- package/dist/tempo/session/client/Session.d.ts +34 -22
- package/dist/tempo/session/client/Session.js +186 -63
- package/dist/tempo/session/client/SessionManager.d.ts +3 -1
- package/dist/tempo/session/client/SessionManager.js +35 -11
- package/dist/tempo/session/client/Transports.d.ts +2 -0
- package/dist/tempo/session/client/Transports.js +12 -2
- package/dist/tempo/session/precompile/Chain.d.ts +37 -2
- package/dist/tempo/session/precompile/Chain.js +116 -15
- package/dist/tempo/session/precompile/Protocol.d.ts +15 -0
- package/dist/tempo/session/precompile/Protocol.js +7 -0
- package/dist/tempo/session/precompile/Voucher.d.ts +7 -5
- package/dist/tempo/session/precompile/Voucher.js +6 -12
- package/dist/tempo/session/precompile/escrow.abi.d.ts +306 -306
- package/dist/tempo/session/server/ChannelStore.d.ts +15 -0
- package/dist/tempo/session/server/ChannelStore.js +27 -12
- package/dist/tempo/session/server/CredentialVerification.d.ts +39 -20
- package/dist/tempo/session/server/CredentialVerification.js +359 -89
- package/dist/tempo/session/server/MeteredStream.d.ts +4 -1
- package/dist/tempo/session/server/MeteredStream.js +8 -5
- package/dist/tempo/session/server/RequestState.d.ts +19 -0
- package/dist/tempo/session/server/RequestState.js +61 -15
- package/dist/tempo/session/server/Session.d.ts +46 -23
- package/dist/tempo/session/server/Session.js +150 -56
- package/dist/tempo/session/server/Settlement.d.ts +11 -4
- package/dist/tempo/session/server/Settlement.js +53 -21
- package/dist/tempo/session/server/Sse.d.ts +3 -1
- package/dist/tempo/session/server/Sse.js +2 -1
- package/dist/tempo/session/server/Transports.d.ts +1 -1
- package/dist/tempo/session/server/Transports.js +1 -0
- package/dist/tempo/session/server/Ws.d.ts +6 -1
- package/dist/tempo/session/server/Ws.js +1 -0
- package/dist/tempo/subscription/KeyAuthorization.d.ts +39 -39
- package/dist/web-bot-auth/Constants.d.ts +20 -0
- package/dist/web-bot-auth/Constants.js +24 -0
- package/dist/web-bot-auth/Types.d.ts +10 -0
- package/dist/web-bot-auth/Types.js +2 -0
- package/dist/web-bot-auth/client/index.d.ts +29 -0
- package/dist/web-bot-auth/client/index.js +64 -0
- package/dist/web-bot-auth/index.d.ts +7 -0
- package/dist/web-bot-auth/index.js +7 -0
- package/dist/web-bot-auth/internal/JwkThumbprint.d.ts +5 -0
- package/dist/web-bot-auth/internal/JwkThumbprint.js +20 -0
- package/dist/web-bot-auth/internal/SignatureAgent.d.ts +3 -0
- package/dist/web-bot-auth/internal/SignatureAgent.js +18 -0
- package/dist/web-bot-auth/server/index.d.ts +35 -0
- package/dist/web-bot-auth/server/index.js +88 -0
- package/dist/x402/Types.d.ts +6 -6
- package/dist/x402/client/Exact.d.ts +8 -0
- package/dist/x402/client/Exact.js +40 -10
- package/dist/x402/server/EvmCharge.d.ts +22 -0
- package/dist/x402/server/EvmCharge.js +54 -20
- package/package.json +28 -34
- package/dist/BodyDigest.d.ts.map +0 -1
- package/dist/BodyDigest.js.map +0 -1
- package/dist/Challenge.d.ts.map +0 -1
- package/dist/Challenge.js.map +0 -1
- package/dist/Constants.d.ts.map +0 -1
- package/dist/Constants.js.map +0 -1
- package/dist/Credential.d.ts.map +0 -1
- package/dist/Credential.js.map +0 -1
- package/dist/Errors.d.ts.map +0 -1
- package/dist/Errors.js.map +0 -1
- package/dist/Expires.d.ts.map +0 -1
- package/dist/Expires.js.map +0 -1
- package/dist/Html.d.ts.map +0 -1
- package/dist/Html.js.map +0 -1
- package/dist/Mcp.d.ts.map +0 -1
- package/dist/Mcp.js.map +0 -1
- package/dist/Method.d.ts.map +0 -1
- package/dist/Method.js.map +0 -1
- package/dist/PaymentRequest.d.ts.map +0 -1
- package/dist/PaymentRequest.js.map +0 -1
- package/dist/Receipt.d.ts.map +0 -1
- package/dist/Receipt.js.map +0 -1
- package/dist/Store.d.ts.map +0 -1
- package/dist/Store.js.map +0 -1
- package/dist/bin.d.ts.map +0 -1
- package/dist/bin.js.map +0 -1
- package/dist/cli/account.d.ts.map +0 -1
- package/dist/cli/account.js.map +0 -1
- package/dist/cli/cli.d.ts.map +0 -1
- package/dist/cli/cli.js.map +0 -1
- package/dist/cli/config.d.ts.map +0 -1
- package/dist/cli/config.js.map +0 -1
- package/dist/cli/internal.d.ts.map +0 -1
- package/dist/cli/internal.js.map +0 -1
- package/dist/cli/plugins/evm.d.ts.map +0 -1
- package/dist/cli/plugins/evm.js.map +0 -1
- package/dist/cli/plugins/index.d.ts.map +0 -1
- package/dist/cli/plugins/index.js.map +0 -1
- package/dist/cli/plugins/plugin.d.ts.map +0 -1
- package/dist/cli/plugins/plugin.js.map +0 -1
- package/dist/cli/plugins/stripe.d.ts.map +0 -1
- package/dist/cli/plugins/stripe.js.map +0 -1
- package/dist/cli/plugins/tempo.d.ts.map +0 -1
- package/dist/cli/plugins/tempo.js.map +0 -1
- package/dist/cli/sessions/Manager.d.ts.map +0 -1
- package/dist/cli/sessions/Manager.js.map +0 -1
- package/dist/cli/sessions/commands.d.ts.map +0 -1
- package/dist/cli/sessions/commands.js.map +0 -1
- package/dist/cli/sessions/request.d.ts.map +0 -1
- package/dist/cli/sessions/request.js.map +0 -1
- package/dist/cli/sessions/store.d.ts.map +0 -1
- package/dist/cli/sessions/store.js.map +0 -1
- package/dist/cli/utils.d.ts.map +0 -1
- package/dist/cli/utils.js.map +0 -1
- package/dist/cli/validate/challenge.d.ts.map +0 -1
- package/dist/cli/validate/challenge.js.map +0 -1
- package/dist/cli/validate/discovery.d.ts.map +0 -1
- package/dist/cli/validate/discovery.js.map +0 -1
- package/dist/cli/validate/helpers.d.ts.map +0 -1
- package/dist/cli/validate/helpers.js.map +0 -1
- package/dist/cli/validate/index.d.ts.map +0 -1
- package/dist/cli/validate/index.js.map +0 -1
- package/dist/cli/validate/messages.d.ts.map +0 -1
- package/dist/cli/validate/messages.js.map +0 -1
- package/dist/cli/validate/payment.d.ts.map +0 -1
- package/dist/cli/validate/payment.js.map +0 -1
- package/dist/client/Methods.d.ts.map +0 -1
- package/dist/client/Methods.js.map +0 -1
- package/dist/client/Mppx.d.ts.map +0 -1
- package/dist/client/Mppx.js.map +0 -1
- package/dist/client/Transport.d.ts.map +0 -1
- package/dist/client/Transport.js.map +0 -1
- package/dist/client/index.d.ts.map +0 -1
- package/dist/client/index.js.map +0 -1
- package/dist/client/internal/Fetch.d.ts.map +0 -1
- package/dist/client/internal/Fetch.js.map +0 -1
- package/dist/client/internal/MethodChallenge.d.ts.map +0 -1
- package/dist/client/internal/MethodChallenge.js.map +0 -1
- package/dist/client/internal/MethodResponse.d.ts.map +0 -1
- package/dist/client/internal/MethodResponse.js.map +0 -1
- package/dist/client/internal/protocols/Mcp.d.ts.map +0 -1
- package/dist/client/internal/protocols/Mcp.js.map +0 -1
- package/dist/client/internal/protocols/Mpp.d.ts.map +0 -1
- package/dist/client/internal/protocols/Mpp.js.map +0 -1
- package/dist/client/internal/protocols/Protocol.d.ts.map +0 -1
- package/dist/client/internal/protocols/Protocol.js.map +0 -1
- package/dist/client/internal/protocols/Shared.d.ts.map +0 -1
- package/dist/client/internal/protocols/Shared.js.map +0 -1
- package/dist/client/internal/protocols/X402.d.ts.map +0 -1
- package/dist/client/internal/protocols/X402.js.map +0 -1
- package/dist/client/node.d.ts.map +0 -1
- package/dist/client/node.js.map +0 -1
- package/dist/discovery/Discovery.d.ts.map +0 -1
- package/dist/discovery/Discovery.js.map +0 -1
- package/dist/discovery/OpenApi.d.ts.map +0 -1
- package/dist/discovery/OpenApi.js.map +0 -1
- package/dist/discovery/Validate.d.ts.map +0 -1
- package/dist/discovery/Validate.js.map +0 -1
- package/dist/discovery/index.d.ts.map +0 -1
- package/dist/discovery/index.js.map +0 -1
- package/dist/evm/Assets.d.ts.map +0 -1
- package/dist/evm/Assets.js.map +0 -1
- package/dist/evm/Chains.d.ts.map +0 -1
- package/dist/evm/Chains.js.map +0 -1
- package/dist/evm/Methods.d.ts.map +0 -1
- package/dist/evm/Methods.js.map +0 -1
- package/dist/evm/Types.d.ts.map +0 -1
- package/dist/evm/Types.js.map +0 -1
- package/dist/evm/client/Charge.d.ts.map +0 -1
- package/dist/evm/client/Charge.js.map +0 -1
- package/dist/evm/client/Methods.d.ts.map +0 -1
- package/dist/evm/client/Methods.js.map +0 -1
- package/dist/evm/client/index.d.ts.map +0 -1
- package/dist/evm/client/index.js.map +0 -1
- package/dist/evm/index.d.ts.map +0 -1
- package/dist/evm/index.js.map +0 -1
- package/dist/evm/server/Charge.d.ts.map +0 -1
- package/dist/evm/server/Charge.js.map +0 -1
- package/dist/evm/server/Methods.d.ts.map +0 -1
- package/dist/evm/server/Methods.js.map +0 -1
- package/dist/evm/server/index.d.ts.map +0 -1
- package/dist/evm/server/index.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/internal/AcceptPayment.d.ts.map +0 -1
- package/dist/internal/AcceptPayment.js.map +0 -1
- package/dist/internal/HeaderCodec.d.ts.map +0 -1
- package/dist/internal/HeaderCodec.js.map +0 -1
- package/dist/internal/constantTimeEqual.d.ts.map +0 -1
- package/dist/internal/constantTimeEqual.js.map +0 -1
- package/dist/internal/env.d.ts.map +0 -1
- package/dist/internal/env.js.map +0 -1
- package/dist/internal/types.d.ts.map +0 -1
- package/dist/internal/types.js.map +0 -1
- package/dist/mcp/client/McpClient.d.ts.map +0 -1
- package/dist/mcp/client/McpClient.js.map +0 -1
- package/dist/mcp/client/index.d.ts.map +0 -1
- package/dist/mcp/client/index.js.map +0 -1
- package/dist/mcp/server/Transport.d.ts.map +0 -1
- package/dist/mcp/server/Transport.js.map +0 -1
- package/dist/mcp/server/index.d.ts.map +0 -1
- package/dist/mcp/server/index.js.map +0 -1
- package/dist/middlewares/elysia.d.ts.map +0 -1
- package/dist/middlewares/elysia.js.map +0 -1
- package/dist/middlewares/express.d.ts.map +0 -1
- package/dist/middlewares/express.js.map +0 -1
- package/dist/middlewares/hono.d.ts.map +0 -1
- package/dist/middlewares/hono.js.map +0 -1
- package/dist/middlewares/internal/mppx.d.ts.map +0 -1
- package/dist/middlewares/internal/mppx.js.map +0 -1
- package/dist/middlewares/nextjs.d.ts.map +0 -1
- package/dist/middlewares/nextjs.js.map +0 -1
- package/dist/proxy/Proxy.d.ts.map +0 -1
- package/dist/proxy/Proxy.js.map +0 -1
- package/dist/proxy/Service.d.ts.map +0 -1
- package/dist/proxy/Service.js.map +0 -1
- package/dist/proxy/index.d.ts.map +0 -1
- package/dist/proxy/index.js.map +0 -1
- package/dist/proxy/internal/Headers.d.ts.map +0 -1
- package/dist/proxy/internal/Headers.js.map +0 -1
- package/dist/proxy/internal/Route.d.ts.map +0 -1
- package/dist/proxy/internal/Route.js.map +0 -1
- package/dist/proxy/services/anthropic.d.ts.map +0 -1
- package/dist/proxy/services/anthropic.js.map +0 -1
- package/dist/proxy/services/openai.d.ts.map +0 -1
- package/dist/proxy/services/openai.js.map +0 -1
- package/dist/proxy/services/stripe.d.ts.map +0 -1
- package/dist/proxy/services/stripe.js.map +0 -1
- package/dist/server/Methods.d.ts.map +0 -1
- package/dist/server/Methods.js.map +0 -1
- package/dist/server/Mppx.d.ts.map +0 -1
- package/dist/server/Mppx.js.map +0 -1
- package/dist/server/NodeListener.d.ts.map +0 -1
- package/dist/server/NodeListener.js.map +0 -1
- package/dist/server/Request.d.ts.map +0 -1
- package/dist/server/Request.js.map +0 -1
- package/dist/server/Response.d.ts.map +0 -1
- package/dist/server/Response.js.map +0 -1
- package/dist/server/Transport.d.ts.map +0 -1
- package/dist/server/Transport.js.map +0 -1
- package/dist/server/index.d.ts.map +0 -1
- package/dist/server/index.js.map +0 -1
- package/dist/server/internal/html/compose.main.gen.d.ts.map +0 -1
- package/dist/server/internal/html/compose.main.gen.js.map +0 -1
- package/dist/server/internal/html/config.d.ts.map +0 -1
- package/dist/server/internal/html/config.js.map +0 -1
- package/dist/server/internal/html/constants.d.ts.map +0 -1
- package/dist/server/internal/html/constants.js.map +0 -1
- package/dist/server/internal/html/serviceWorker.client.d.ts.map +0 -1
- package/dist/server/internal/html/serviceWorker.client.js.map +0 -1
- package/dist/server/internal/html/serviceWorker.gen.d.ts.map +0 -1
- package/dist/server/internal/html/serviceWorker.gen.js.map +0 -1
- package/dist/server/internal/scope.d.ts.map +0 -1
- package/dist/server/internal/scope.js.map +0 -1
- package/dist/stripe/Methods.d.ts.map +0 -1
- package/dist/stripe/Methods.js.map +0 -1
- package/dist/stripe/client/Charge.d.ts.map +0 -1
- package/dist/stripe/client/Charge.js.map +0 -1
- package/dist/stripe/client/Methods.d.ts.map +0 -1
- package/dist/stripe/client/Methods.js.map +0 -1
- package/dist/stripe/client/index.d.ts.map +0 -1
- package/dist/stripe/client/index.js.map +0 -1
- package/dist/stripe/index.d.ts.map +0 -1
- package/dist/stripe/index.js.map +0 -1
- package/dist/stripe/internal/constants.d.ts.map +0 -1
- package/dist/stripe/internal/constants.js.map +0 -1
- package/dist/stripe/internal/types.d.ts.map +0 -1
- package/dist/stripe/internal/types.js.map +0 -1
- package/dist/stripe/server/Charge.d.ts.map +0 -1
- package/dist/stripe/server/Charge.js.map +0 -1
- package/dist/stripe/server/Methods.d.ts.map +0 -1
- package/dist/stripe/server/Methods.js.map +0 -1
- package/dist/stripe/server/index.d.ts.map +0 -1
- package/dist/stripe/server/index.js.map +0 -1
- package/dist/stripe/server/internal/html/types.d.ts.map +0 -1
- package/dist/stripe/server/internal/html/types.js.map +0 -1
- package/dist/stripe/server/internal/html.gen.d.ts.map +0 -1
- package/dist/stripe/server/internal/html.gen.js.map +0 -1
- package/dist/tempo/Attribution.d.ts.map +0 -1
- package/dist/tempo/Attribution.js.map +0 -1
- package/dist/tempo/Methods.d.ts.map +0 -1
- package/dist/tempo/Methods.js.map +0 -1
- package/dist/tempo/Proof.d.ts.map +0 -1
- package/dist/tempo/Proof.js.map +0 -1
- package/dist/tempo/client/Charge.d.ts.map +0 -1
- package/dist/tempo/client/Charge.js.map +0 -1
- package/dist/tempo/client/Methods.d.ts.map +0 -1
- package/dist/tempo/client/Methods.js.map +0 -1
- package/dist/tempo/client/ResolveAccount.d.ts.map +0 -1
- package/dist/tempo/client/ResolveAccount.js.map +0 -1
- package/dist/tempo/client/Subscription.d.ts.map +0 -1
- package/dist/tempo/client/Subscription.js.map +0 -1
- package/dist/tempo/client/index.d.ts.map +0 -1
- package/dist/tempo/client/index.js.map +0 -1
- package/dist/tempo/index.d.ts.map +0 -1
- package/dist/tempo/index.js.map +0 -1
- package/dist/tempo/internal/account.d.ts.map +0 -1
- package/dist/tempo/internal/account.js.map +0 -1
- package/dist/tempo/internal/address.d.ts.map +0 -1
- package/dist/tempo/internal/address.js.map +0 -1
- package/dist/tempo/internal/auto-swap.d.ts.map +0 -1
- package/dist/tempo/internal/auto-swap.js.map +0 -1
- package/dist/tempo/internal/charge.d.ts.map +0 -1
- package/dist/tempo/internal/charge.js.map +0 -1
- package/dist/tempo/internal/defaults.d.ts.map +0 -1
- package/dist/tempo/internal/defaults.js.map +0 -1
- package/dist/tempo/internal/fee-payer.d.ts.map +0 -1
- package/dist/tempo/internal/fee-payer.js.map +0 -1
- package/dist/tempo/internal/fee-token.d.ts.map +0 -1
- package/dist/tempo/internal/fee-token.js.map +0 -1
- package/dist/tempo/internal/proof.d.ts.map +0 -1
- package/dist/tempo/internal/proof.js.map +0 -1
- package/dist/tempo/internal/selectors.d.ts.map +0 -1
- package/dist/tempo/internal/selectors.js.map +0 -1
- package/dist/tempo/internal/types.d.ts.map +0 -1
- package/dist/tempo/internal/types.js.map +0 -1
- package/dist/tempo/legacy/client/ChannelOps.d.ts.map +0 -1
- package/dist/tempo/legacy/client/ChannelOps.js.map +0 -1
- package/dist/tempo/legacy/client/Session.d.ts.map +0 -1
- package/dist/tempo/legacy/client/Session.js.map +0 -1
- package/dist/tempo/legacy/client/SessionManager.d.ts.map +0 -1
- package/dist/tempo/legacy/client/SessionManager.js.map +0 -1
- package/dist/tempo/legacy/client/index.d.ts.map +0 -1
- package/dist/tempo/legacy/client/index.js.map +0 -1
- package/dist/tempo/legacy/index.d.ts.map +0 -1
- package/dist/tempo/legacy/index.js.map +0 -1
- package/dist/tempo/legacy/server/Session.d.ts +0 -208
- package/dist/tempo/legacy/server/Session.d.ts.map +0 -1
- package/dist/tempo/legacy/server/Session.js +0 -698
- package/dist/tempo/legacy/server/Session.js.map +0 -1
- package/dist/tempo/legacy/server/index.d.ts +0 -5
- package/dist/tempo/legacy/server/index.d.ts.map +0 -1
- package/dist/tempo/legacy/server/index.js +0 -5
- package/dist/tempo/legacy/server/index.js.map +0 -1
- package/dist/tempo/legacy/session/Chain.d.ts.map +0 -1
- package/dist/tempo/legacy/session/Chain.js.map +0 -1
- package/dist/tempo/legacy/session/Channel.d.ts.map +0 -1
- package/dist/tempo/legacy/session/Channel.js.map +0 -1
- package/dist/tempo/legacy/session/ChannelStore.d.ts +0 -22
- package/dist/tempo/legacy/session/ChannelStore.d.ts.map +0 -1
- package/dist/tempo/legacy/session/ChannelStore.js +0 -6
- package/dist/tempo/legacy/session/ChannelStore.js.map +0 -1
- package/dist/tempo/legacy/session/Types.d.ts.map +0 -1
- package/dist/tempo/legacy/session/Types.js.map +0 -1
- package/dist/tempo/legacy/session/Voucher.d.ts.map +0 -1
- package/dist/tempo/legacy/session/Voucher.js.map +0 -1
- package/dist/tempo/legacy/session/escrow.abi.d.ts.map +0 -1
- package/dist/tempo/legacy/session/escrow.abi.js.map +0 -1
- package/dist/tempo/legacy/session/index.d.ts.map +0 -1
- package/dist/tempo/legacy/session/index.js.map +0 -1
- package/dist/tempo/server/Charge.d.ts.map +0 -1
- package/dist/tempo/server/Charge.js.map +0 -1
- package/dist/tempo/server/Methods.d.ts.map +0 -1
- package/dist/tempo/server/Methods.js.map +0 -1
- package/dist/tempo/server/Relay.d.ts.map +0 -1
- package/dist/tempo/server/Relay.js.map +0 -1
- package/dist/tempo/server/SponsorBudget.d.ts.map +0 -1
- package/dist/tempo/server/SponsorBudget.js.map +0 -1
- package/dist/tempo/server/Subscription.d.ts.map +0 -1
- package/dist/tempo/server/Subscription.js.map +0 -1
- package/dist/tempo/server/index.d.ts.map +0 -1
- package/dist/tempo/server/index.js.map +0 -1
- package/dist/tempo/server/internal/html.gen.d.ts.map +0 -1
- package/dist/tempo/server/internal/html.gen.js.map +0 -1
- package/dist/tempo/server/internal/request-body.d.ts.map +0 -1
- package/dist/tempo/server/internal/request-body.js.map +0 -1
- package/dist/tempo/server/internal/transport.d.ts.map +0 -1
- package/dist/tempo/server/internal/transport.js.map +0 -1
- package/dist/tempo/session/Snapshot.d.ts.map +0 -1
- package/dist/tempo/session/Snapshot.js.map +0 -1
- package/dist/tempo/session/client/ChannelOps.d.ts.map +0 -1
- package/dist/tempo/session/client/ChannelOps.js.map +0 -1
- package/dist/tempo/session/client/ChannelStore.d.ts.map +0 -1
- package/dist/tempo/session/client/ChannelStore.js.map +0 -1
- package/dist/tempo/session/client/CredentialState.d.ts.map +0 -1
- package/dist/tempo/session/client/CredentialState.js.map +0 -1
- package/dist/tempo/session/client/ReceiptCoordinator.d.ts.map +0 -1
- package/dist/tempo/session/client/ReceiptCoordinator.js.map +0 -1
- package/dist/tempo/session/client/Runtime.d.ts.map +0 -1
- package/dist/tempo/session/client/Runtime.js.map +0 -1
- package/dist/tempo/session/client/Session.d.ts.map +0 -1
- package/dist/tempo/session/client/Session.js.map +0 -1
- package/dist/tempo/session/client/SessionManager.d.ts.map +0 -1
- package/dist/tempo/session/client/SessionManager.js.map +0 -1
- package/dist/tempo/session/client/Transports.d.ts.map +0 -1
- package/dist/tempo/session/client/Transports.js.map +0 -1
- package/dist/tempo/session/client/index.d.ts.map +0 -1
- package/dist/tempo/session/client/index.js.map +0 -1
- package/dist/tempo/session/client/internal/SessionManager.d.ts.map +0 -1
- package/dist/tempo/session/client/internal/SessionManager.js.map +0 -1
- package/dist/tempo/session/index.d.ts.map +0 -1
- package/dist/tempo/session/index.js.map +0 -1
- package/dist/tempo/session/precompile/Chain.d.ts.map +0 -1
- package/dist/tempo/session/precompile/Chain.js.map +0 -1
- package/dist/tempo/session/precompile/Channel.d.ts.map +0 -1
- package/dist/tempo/session/precompile/Channel.js.map +0 -1
- package/dist/tempo/session/precompile/Protocol.d.ts.map +0 -1
- package/dist/tempo/session/precompile/Protocol.js.map +0 -1
- package/dist/tempo/session/precompile/Voucher.d.ts.map +0 -1
- package/dist/tempo/session/precompile/Voucher.js.map +0 -1
- package/dist/tempo/session/precompile/escrow.abi.d.ts.map +0 -1
- package/dist/tempo/session/precompile/escrow.abi.js.map +0 -1
- package/dist/tempo/session/precompile/index.d.ts.map +0 -1
- package/dist/tempo/session/precompile/index.js.map +0 -1
- package/dist/tempo/session/server/ChannelOps.d.ts.map +0 -1
- package/dist/tempo/session/server/ChannelOps.js.map +0 -1
- package/dist/tempo/session/server/ChannelStore.d.ts.map +0 -1
- package/dist/tempo/session/server/ChannelStore.js.map +0 -1
- package/dist/tempo/session/server/CredentialVerification.d.ts.map +0 -1
- package/dist/tempo/session/server/CredentialVerification.js.map +0 -1
- package/dist/tempo/session/server/MeteredStream.d.ts.map +0 -1
- package/dist/tempo/session/server/MeteredStream.js.map +0 -1
- package/dist/tempo/session/server/RequestState.d.ts.map +0 -1
- package/dist/tempo/session/server/RequestState.js.map +0 -1
- package/dist/tempo/session/server/Session.d.ts.map +0 -1
- package/dist/tempo/session/server/Session.js.map +0 -1
- package/dist/tempo/session/server/Settlement.d.ts.map +0 -1
- package/dist/tempo/session/server/Settlement.js.map +0 -1
- package/dist/tempo/session/server/Sse.d.ts.map +0 -1
- package/dist/tempo/session/server/Sse.js.map +0 -1
- package/dist/tempo/session/server/Transports.d.ts.map +0 -1
- package/dist/tempo/session/server/Transports.js.map +0 -1
- package/dist/tempo/session/server/Ws.d.ts.map +0 -1
- package/dist/tempo/session/server/Ws.js.map +0 -1
- package/dist/tempo/session/server/index.d.ts.map +0 -1
- package/dist/tempo/session/server/index.js.map +0 -1
- package/dist/tempo/subscription/KeyAuthorization.d.ts.map +0 -1
- package/dist/tempo/subscription/KeyAuthorization.js.map +0 -1
- package/dist/tempo/subscription/Receipt.d.ts.map +0 -1
- package/dist/tempo/subscription/Receipt.js.map +0 -1
- package/dist/tempo/subscription/Store.d.ts.map +0 -1
- package/dist/tempo/subscription/Store.js.map +0 -1
- package/dist/tempo/subscription/Types.d.ts.map +0 -1
- package/dist/tempo/subscription/Types.js.map +0 -1
- package/dist/tempo/subscription/index.d.ts.map +0 -1
- package/dist/tempo/subscription/index.js.map +0 -1
- package/dist/validation/core.d.ts.map +0 -1
- package/dist/validation/core.js.map +0 -1
- package/dist/validation/index.d.ts.map +0 -1
- package/dist/validation/index.js.map +0 -1
- package/dist/viem/Account.d.ts.map +0 -1
- package/dist/viem/Account.js.map +0 -1
- package/dist/viem/Client.d.ts.map +0 -1
- package/dist/viem/Client.js.map +0 -1
- package/dist/x402/Assets.d.ts.map +0 -1
- package/dist/x402/Assets.js.map +0 -1
- package/dist/x402/Header.d.ts.map +0 -1
- package/dist/x402/Header.js.map +0 -1
- package/dist/x402/Types.d.ts.map +0 -1
- package/dist/x402/Types.js.map +0 -1
- package/dist/x402/client/Exact.d.ts.map +0 -1
- package/dist/x402/client/Exact.js.map +0 -1
- package/dist/x402/index.d.ts.map +0 -1
- package/dist/x402/index.js.map +0 -1
- package/dist/x402/internal/ChallengeBrand.d.ts.map +0 -1
- package/dist/x402/internal/ChallengeBrand.js.map +0 -1
- package/dist/x402/internal/RouteBinding.d.ts.map +0 -1
- package/dist/x402/internal/RouteBinding.js.map +0 -1
- package/dist/x402/server/EvmCharge.d.ts.map +0 -1
- package/dist/x402/server/EvmCharge.js.map +0 -1
- package/dist/x402/server/Facilitator.d.ts.map +0 -1
- package/dist/x402/server/Facilitator.js.map +0 -1
- package/dist/zod.d.ts.map +0 -1
- package/dist/zod.js.map +0 -1
- package/src/BodyDigest.test.ts +0 -43
- package/src/BodyDigest.ts +0 -55
- package/src/Challenge.fuzz.test.ts +0 -121
- package/src/Challenge.test-d.ts +0 -82
- package/src/Challenge.test.ts +0 -995
- package/src/Challenge.ts +0 -683
- package/src/Constants.ts +0 -58
- package/src/Credential.fuzz.test.ts +0 -62
- package/src/Credential.test.ts +0 -378
- package/src/Credential.ts +0 -217
- package/src/Errors.test.ts +0 -520
- package/src/Errors.ts +0 -448
- package/src/Expires.test.ts +0 -112
- package/src/Expires.ts +0 -59
- package/src/Html.ts +0 -67
- package/src/Mcp.ts +0 -85
- package/src/Method.test.ts +0 -177
- package/src/Method.ts +0 -617
- package/src/PaymentRequest.test.ts +0 -147
- package/src/PaymentRequest.ts +0 -108
- package/src/Receipt.test.ts +0 -151
- package/src/Receipt.ts +0 -146
- package/src/Store.test-d.ts +0 -195
- package/src/Store.test.ts +0 -357
- package/src/Store.ts +0 -329
- package/src/bin.ts +0 -4
- package/src/cli/account.ts +0 -269
- package/src/cli/cli.test.ts +0 -2221
- package/src/cli/cli.ts +0 -1649
- package/src/cli/config.test.ts +0 -89
- package/src/cli/config.ts +0 -50
- package/src/cli/internal.ts +0 -114
- package/src/cli/mcp.test.ts +0 -262
- package/src/cli/plugins/evm.ts +0 -55
- package/src/cli/plugins/index.ts +0 -4
- package/src/cli/plugins/plugin.ts +0 -84
- package/src/cli/plugins/stripe.ts +0 -174
- package/src/cli/plugins/tempo.ts +0 -1102
- package/src/cli/sessions/Manager.test.ts +0 -249
- package/src/cli/sessions/Manager.ts +0 -93
- package/src/cli/sessions/commands.ts +0 -444
- package/src/cli/sessions/request.test.ts +0 -51
- package/src/cli/sessions/request.ts +0 -353
- package/src/cli/sessions/store.test.ts +0 -581
- package/src/cli/sessions/store.ts +0 -940
- package/src/cli/utils.test.ts +0 -156
- package/src/cli/utils.ts +0 -394
- package/src/cli/validate/challenge.ts +0 -565
- package/src/cli/validate/discovery.test.ts +0 -435
- package/src/cli/validate/discovery.ts +0 -221
- package/src/cli/validate/helpers.ts +0 -166
- package/src/cli/validate/index.ts +0 -229
- package/src/cli/validate/messages.ts +0 -7
- package/src/cli/validate/payment.ts +0 -774
- package/src/cli/validate.test.ts +0 -843
- package/src/client/Methods.ts +0 -8
- package/src/client/Mppx.test-d.ts +0 -270
- package/src/client/Mppx.test.ts +0 -1065
- package/src/client/Mppx.ts +0 -466
- package/src/client/Transport.test.ts +0 -619
- package/src/client/Transport.ts +0 -191
- package/src/client/index.ts +0 -29
- package/src/client/internal/Fetch.browser.test.ts +0 -197
- package/src/client/internal/Fetch.test-d.ts +0 -109
- package/src/client/internal/Fetch.test.ts +0 -2336
- package/src/client/internal/Fetch.ts +0 -1079
- package/src/client/internal/MethodChallenge.ts +0 -35
- package/src/client/internal/MethodResponse.ts +0 -67
- package/src/client/internal/protocols/Mcp.test.ts +0 -220
- package/src/client/internal/protocols/Mcp.ts +0 -186
- package/src/client/internal/protocols/Mpp.ts +0 -21
- package/src/client/internal/protocols/Protocol.ts +0 -10
- package/src/client/internal/protocols/Shared.ts +0 -25
- package/src/client/internal/protocols/X402.ts +0 -46
- package/src/client/node.test.ts +0 -115
- package/src/client/node.ts +0 -247
- package/src/discovery/Discovery.test.ts +0 -214
- package/src/discovery/Discovery.ts +0 -105
- package/src/discovery/OpenApi.test.ts +0 -453
- package/src/discovery/OpenApi.ts +0 -224
- package/src/discovery/Validate.test.ts +0 -305
- package/src/discovery/Validate.ts +0 -77
- package/src/discovery/index.ts +0 -3
- package/src/env.d.ts +0 -12
- package/src/evm/Assets.ts +0 -1
- package/src/evm/Chains.ts +0 -11
- package/src/evm/Methods.ts +0 -44
- package/src/evm/PublicInterface.test-d.ts +0 -134
- package/src/evm/Types.ts +0 -140
- package/src/evm/client/Charge.test.ts +0 -347
- package/src/evm/client/Charge.ts +0 -187
- package/src/evm/client/Methods.ts +0 -19
- package/src/evm/client/index.ts +0 -6
- package/src/evm/index.ts +0 -16
- package/src/evm/server/Charge.test.ts +0 -339
- package/src/evm/server/Charge.ts +0 -290
- package/src/evm/server/Methods.ts +0 -22
- package/src/evm/server/index.ts +0 -6
- package/src/index.ts +0 -14
- package/src/internal/AcceptPayment.test.ts +0 -343
- package/src/internal/AcceptPayment.ts +0 -366
- package/src/internal/HeaderCodec.ts +0 -36
- package/src/internal/changeset.test.ts +0 -106
- package/src/internal/constantTimeEqual.test.ts +0 -47
- package/src/internal/constantTimeEqual.ts +0 -10
- package/src/internal/env.test.ts +0 -42
- package/src/internal/env.ts +0 -49
- package/src/internal/types.test-d.ts +0 -21
- package/src/internal/types.ts +0 -470
- package/src/mcp/client/McpClient.integration.test.ts +0 -652
- package/src/mcp/client/McpClient.test-d.ts +0 -144
- package/src/mcp/client/McpClient.test.ts +0 -463
- package/src/mcp/client/McpClient.ts +0 -307
- package/src/mcp/client/McpClient.unit.test.ts +0 -135
- package/src/mcp/client/index.ts +0 -2
- package/src/mcp/server/Transport.test.ts +0 -191
- package/src/mcp/server/Transport.ts +0 -111
- package/src/mcp/server/index.ts +0 -1
- package/src/middlewares/elysia.test.ts +0 -295
- package/src/middlewares/elysia.ts +0 -116
- package/src/middlewares/express.test.ts +0 -371
- package/src/middlewares/express.ts +0 -140
- package/src/middlewares/hono.test.ts +0 -476
- package/src/middlewares/hono.ts +0 -153
- package/src/middlewares/internal/mppx.test.ts +0 -177
- package/src/middlewares/internal/mppx.ts +0 -67
- package/src/middlewares/nextjs.test.ts +0 -369
- package/src/middlewares/nextjs.ts +0 -107
- package/src/proxy/Proxy.test.ts +0 -1031
- package/src/proxy/Proxy.ts +0 -345
- package/src/proxy/Service.test.ts +0 -182
- package/src/proxy/Service.ts +0 -253
- package/src/proxy/index.ts +0 -6
- package/src/proxy/internal/Headers.test.ts +0 -139
- package/src/proxy/internal/Headers.ts +0 -66
- package/src/proxy/internal/Route.test.ts +0 -217
- package/src/proxy/internal/Route.ts +0 -64
- package/src/proxy/services/anthropic.test.ts +0 -132
- package/src/proxy/services/anthropic.ts +0 -52
- package/src/proxy/services/openai.test.ts +0 -157
- package/src/proxy/services/openai.ts +0 -59
- package/src/proxy/services/stripe.test.ts +0 -175
- package/src/proxy/services/stripe.ts +0 -58
- package/src/server/Methods.ts +0 -3
- package/src/server/Mppx.authorize.test.ts +0 -210
- package/src/server/Mppx.test-d.ts +0 -360
- package/src/server/Mppx.test.ts +0 -5813
- package/src/server/Mppx.ts +0 -2623
- package/src/server/NodeListener.test.ts +0 -293
- package/src/server/NodeListener.ts +0 -45
- package/src/server/Request.test.ts +0 -255
- package/src/server/Request.ts +0 -155
- package/src/server/Response.test.ts +0 -32
- package/src/server/Response.ts +0 -45
- package/src/server/Transport.test.ts +0 -598
- package/src/server/Transport.ts +0 -320
- package/src/server/index.ts +0 -9
- package/src/server/internal/html/compose.main.gen.ts +0 -2
- package/src/server/internal/html/compose.main.ts +0 -88
- package/src/server/internal/html/config.ts +0 -672
- package/src/server/internal/html/constants.ts +0 -28
- package/src/server/internal/html/serviceWorker.client.ts +0 -28
- package/src/server/internal/html/serviceWorker.gen.ts +0 -2
- package/src/server/internal/html/serviceWorker.ts +0 -27
- package/src/server/internal/html/tsconfig.compose.json +0 -8
- package/src/server/internal/html/tsconfig.worker.client.json +0 -8
- package/src/server/internal/html/tsconfig.worker.json +0 -8
- package/src/server/internal/scope.ts +0 -43
- package/src/stripe/Charge.integration.test.ts +0 -329
- package/src/stripe/Methods.test.ts +0 -62
- package/src/stripe/Methods.ts +0 -44
- package/src/stripe/client/Charge.test.ts +0 -205
- package/src/stripe/client/Charge.ts +0 -132
- package/src/stripe/client/Methods.ts +0 -37
- package/src/stripe/client/index.ts +0 -2
- package/src/stripe/index.ts +0 -1
- package/src/stripe/internal/constants.ts +0 -7
- package/src/stripe/internal/types.ts +0 -46
- package/src/stripe/server/Charge.test-d.ts +0 -66
- package/src/stripe/server/Charge.test.ts +0 -621
- package/src/stripe/server/Charge.ts +0 -434
- package/src/stripe/server/Methods.ts +0 -24
- package/src/stripe/server/index.ts +0 -2
- package/src/stripe/server/internal/html/main.ts +0 -165
- package/src/stripe/server/internal/html/node_modules/.bin/mppx +0 -22
- package/src/stripe/server/internal/html/node_modules/.bin/mppx.src +0 -22
- package/src/stripe/server/internal/html/package.json +0 -9
- package/src/stripe/server/internal/html/stripe-js-pure.d.ts +0 -7
- package/src/stripe/server/internal/html/tsconfig.json +0 -8
- package/src/stripe/server/internal/html/types.ts +0 -5
- package/src/stripe/server/internal/html.gen.ts +0 -2
- package/src/tempo/AccessKeyAuthorization.test.ts +0 -141
- package/src/tempo/Attribution.test.ts +0 -294
- package/src/tempo/Attribution.ts +0 -185
- package/src/tempo/Methods.test.ts +0 -425
- package/src/tempo/Methods.ts +0 -367
- package/src/tempo/Proof.conformance.test.ts +0 -146
- package/src/tempo/Proof.test-d.ts +0 -32
- package/src/tempo/Proof.test.ts +0 -40
- package/src/tempo/Proof.ts +0 -69
- package/src/tempo/PublicExports.test-d.ts +0 -130
- package/src/tempo/Subscription.integration.test.ts +0 -591
- package/src/tempo/client/Charge.test.ts +0 -501
- package/src/tempo/client/Charge.ts +0 -289
- package/src/tempo/client/Methods.ts +0 -45
- package/src/tempo/client/ResolveAccount.ts +0 -46
- package/src/tempo/client/Subscription.test.ts +0 -180
- package/src/tempo/client/Subscription.ts +0 -156
- package/src/tempo/client/index.ts +0 -17
- package/src/tempo/index.ts +0 -5
- package/src/tempo/internal/account.ts +0 -56
- package/src/tempo/internal/address.ts +0 -6
- package/src/tempo/internal/auto-swap.test.ts +0 -198
- package/src/tempo/internal/auto-swap.ts +0 -188
- package/src/tempo/internal/charge.test.ts +0 -66
- package/src/tempo/internal/charge.ts +0 -43
- package/src/tempo/internal/defaults.test.ts +0 -95
- package/src/tempo/internal/defaults.ts +0 -53
- package/src/tempo/internal/fee-payer.test.ts +0 -1177
- package/src/tempo/internal/fee-payer.ts +0 -808
- package/src/tempo/internal/fee-token.test.ts +0 -165
- package/src/tempo/internal/fee-token.ts +0 -72
- package/src/tempo/internal/proof.test.ts +0 -97
- package/src/tempo/internal/proof.ts +0 -87
- package/src/tempo/internal/selectors.ts +0 -10
- package/src/tempo/internal/types.ts +0 -19
- package/src/tempo/legacy/AccessKeyAuthorization.test.ts +0 -162
- package/src/tempo/legacy/README.md +0 -9
- package/src/tempo/legacy/client/ChannelOps.test.ts +0 -379
- package/src/tempo/legacy/client/ChannelOps.ts +0 -271
- package/src/tempo/legacy/client/Session.test.ts +0 -800
- package/src/tempo/legacy/client/Session.ts +0 -397
- package/src/tempo/legacy/client/SessionManager.test.ts +0 -468
- package/src/tempo/legacy/client/SessionManager.ts +0 -909
- package/src/tempo/legacy/client/index.ts +0 -6
- package/src/tempo/legacy/index.ts +0 -6
- package/src/tempo/legacy/server/Defaults.test-d.ts +0 -9
- package/src/tempo/legacy/server/Session.test.ts +0 -6370
- package/src/tempo/legacy/server/Session.ts +0 -1024
- package/src/tempo/legacy/server/index.ts +0 -4
- package/src/tempo/legacy/session/Chain.test.ts +0 -1349
- package/src/tempo/legacy/session/Chain.ts +0 -830
- package/src/tempo/legacy/session/Channel.test.ts +0 -109
- package/src/tempo/legacy/session/Channel.ts +0 -51
- package/src/tempo/legacy/session/ChannelStore.test.ts +0 -58
- package/src/tempo/legacy/session/ChannelStore.ts +0 -39
- package/src/tempo/legacy/session/Types.ts +0 -91
- package/src/tempo/legacy/session/Voucher.test.ts +0 -410
- package/src/tempo/legacy/session/Voucher.ts +0 -183
- package/src/tempo/legacy/session/escrow.abi.ts +0 -760
- package/src/tempo/legacy/session/index.ts +0 -8
- package/src/tempo/server/AtomicStore.test-d.ts +0 -50
- package/src/tempo/server/Charge.test.ts +0 -6121
- package/src/tempo/server/Charge.ts +0 -1351
- package/src/tempo/server/Methods.ts +0 -106
- package/src/tempo/server/Relay.test.ts +0 -677
- package/src/tempo/server/Relay.ts +0 -297
- package/src/tempo/server/SponsorBudget.test.ts +0 -154
- package/src/tempo/server/SponsorBudget.ts +0 -219
- package/src/tempo/server/Sse.test.ts +0 -321
- package/src/tempo/server/Subscription.test.ts +0 -1944
- package/src/tempo/server/Subscription.ts +0 -1333
- package/src/tempo/server/index.ts +0 -12
- package/src/tempo/server/internal/html/main.ts +0 -115
- package/src/tempo/server/internal/html/node_modules/.bin/mppx +0 -22
- package/src/tempo/server/internal/html/node_modules/.bin/mppx.src +0 -22
- package/src/tempo/server/internal/html/package.json +0 -10
- package/src/tempo/server/internal/html/tsconfig.json +0 -8
- package/src/tempo/server/internal/html.gen.ts +0 -2
- package/src/tempo/server/internal/request-body.test.ts +0 -210
- package/src/tempo/server/internal/request-body.ts +0 -61
- package/src/tempo/server/internal/transport.test.ts +0 -903
- package/src/tempo/server/internal/transport.ts +0 -310
- package/src/tempo/session/README.md +0 -208
- package/src/tempo/session/Snapshot.test.ts +0 -41
- package/src/tempo/session/Snapshot.ts +0 -95
- package/src/tempo/session/client/ChannelOps.test.ts +0 -218
- package/src/tempo/session/client/ChannelOps.ts +0 -348
- package/src/tempo/session/client/ChannelStore.ts +0 -111
- package/src/tempo/session/client/CredentialState.test.ts +0 -789
- package/src/tempo/session/client/CredentialState.ts +0 -942
- package/src/tempo/session/client/ReceiptCoordinator.ts +0 -95
- package/src/tempo/session/client/Runtime.test.ts +0 -1104
- package/src/tempo/session/client/Runtime.ts +0 -1008
- package/src/tempo/session/client/Session.test.ts +0 -1355
- package/src/tempo/session/client/Session.ts +0 -420
- package/src/tempo/session/client/SessionManager.test.ts +0 -1899
- package/src/tempo/session/client/SessionManager.ts +0 -996
- package/src/tempo/session/client/Transports.test.ts +0 -1141
- package/src/tempo/session/client/Transports.ts +0 -1534
- package/src/tempo/session/client/index.ts +0 -40
- package/src/tempo/session/client/internal/SessionManager.ts +0 -36
- package/src/tempo/session/index.ts +0 -7
- package/src/tempo/session/precompile/Chain.integration.test.ts +0 -339
- package/src/tempo/session/precompile/Chain.test.ts +0 -1641
- package/src/tempo/session/precompile/Chain.ts +0 -1149
- package/src/tempo/session/precompile/Channel.test.ts +0 -147
- package/src/tempo/session/precompile/Channel.ts +0 -108
- package/src/tempo/session/precompile/Protocol.test.ts +0 -358
- package/src/tempo/session/precompile/Protocol.ts +0 -520
- package/src/tempo/session/precompile/Voucher.test.ts +0 -354
- package/src/tempo/session/precompile/Voucher.ts +0 -162
- package/src/tempo/session/precompile/escrow.abi.ts +0 -226
- package/src/tempo/session/precompile/index.ts +0 -33
- package/src/tempo/session/server/ChannelOps.test.ts +0 -129
- package/src/tempo/session/server/ChannelOps.ts +0 -157
- package/src/tempo/session/server/ChannelStore.test.ts +0 -1093
- package/src/tempo/session/server/ChannelStore.ts +0 -835
- package/src/tempo/session/server/CredentialVerification.test.ts +0 -299
- package/src/tempo/session/server/CredentialVerification.ts +0 -775
- package/src/tempo/session/server/MeteredStream.ts +0 -95
- package/src/tempo/session/server/RequestState.test.ts +0 -574
- package/src/tempo/session/server/RequestState.ts +0 -507
- package/src/tempo/session/server/Session.integration.test.ts +0 -449
- package/src/tempo/session/server/Session.test.ts +0 -3862
- package/src/tempo/session/server/Session.ts +0 -570
- package/src/tempo/session/server/Settlement.test.ts +0 -345
- package/src/tempo/session/server/Settlement.ts +0 -527
- package/src/tempo/session/server/Sse.fuzz.test.ts +0 -138
- package/src/tempo/session/server/Sse.test.ts +0 -557
- package/src/tempo/session/server/Sse.ts +0 -254
- package/src/tempo/session/server/Transports.test.ts +0 -346
- package/src/tempo/session/server/Transports.ts +0 -255
- package/src/tempo/session/server/Ws.test.ts +0 -594
- package/src/tempo/session/server/Ws.ts +0 -385
- package/src/tempo/session/server/index.ts +0 -12
- package/src/tempo/subscription/KeyAuthorization.test.ts +0 -282
- package/src/tempo/subscription/KeyAuthorization.ts +0 -396
- package/src/tempo/subscription/Receipt.ts +0 -28
- package/src/tempo/subscription/Store.test.ts +0 -609
- package/src/tempo/subscription/Store.ts +0 -449
- package/src/tempo/subscription/Types.ts +0 -68
- package/src/tempo/subscription/index.ts +0 -23
- package/src/tsconfig.json +0 -10
- package/src/validation/core.ts +0 -386
- package/src/validation/index.ts +0 -11
- package/src/viem/Account.test.ts +0 -72
- package/src/viem/Account.ts +0 -30
- package/src/viem/Client.test.ts +0 -366
- package/src/viem/Client.ts +0 -93
- package/src/x402/Assets.test.ts +0 -253
- package/src/x402/Assets.ts +0 -221
- package/src/x402/Exact.e2e.test.ts +0 -448
- package/src/x402/Exact.localnet.test.ts +0 -475
- package/src/x402/Header.test.ts +0 -73
- package/src/x402/Header.ts +0 -79
- package/src/x402/PublicInterface.test-d.ts +0 -39
- package/src/x402/Types.ts +0 -248
- package/src/x402/client/Exact.test.ts +0 -309
- package/src/x402/client/Exact.ts +0 -186
- package/src/x402/index.ts +0 -6
- package/src/x402/internal/ChallengeBrand.ts +0 -14
- package/src/x402/internal/RouteBinding.ts +0 -18
- package/src/x402/server/EvmCharge.ts +0 -394
- package/src/x402/server/Facilitator.test.ts +0 -111
- package/src/x402/server/Facilitator.ts +0 -56
- package/src/zod.test.ts +0 -169
- package/src/zod.ts +0 -71
|
@@ -6,8 +6,8 @@ export declare function evm(parameters: evm.Parameters): readonly [import("../..
|
|
|
6
6
|
readonly name: "evm";
|
|
7
7
|
readonly intent: "charge";
|
|
8
8
|
readonly schema: {
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
credential: {
|
|
10
|
+
payload: import("zod/mini").ZodMiniObject<{
|
|
11
11
|
from: import("zod/mini").ZodMiniString<string>;
|
|
12
12
|
nonce: import("zod/mini").ZodMiniString<string>;
|
|
13
13
|
signature: import("zod/mini").ZodMiniString<string>;
|
|
@@ -18,7 +18,7 @@ export declare function evm(parameters: evm.Parameters): readonly [import("../..
|
|
|
18
18
|
value: import("zod/mini").ZodMiniString<string>;
|
|
19
19
|
}, import("zod/v4/core").$strip>;
|
|
20
20
|
};
|
|
21
|
-
|
|
21
|
+
request: import("zod/mini").ZodMiniPipe<import("zod/mini").ZodMiniObject<{
|
|
22
22
|
amount: import("zod/mini").ZodMiniString<string>;
|
|
23
23
|
chainId: import("zod/mini").ZodMiniNumber<number>;
|
|
24
24
|
currency: import("zod/mini").ZodMiniString<string>;
|
|
@@ -35,31 +35,31 @@ export declare function evm(parameters: evm.Parameters): readonly [import("../..
|
|
|
35
35
|
recipient: import("zod/mini").ZodMiniString<string>;
|
|
36
36
|
}, import("zod/v4/core").$strip>>>;
|
|
37
37
|
}, import("zod/v4/core").$strip>, import("zod/mini").ZodMiniTransform<{
|
|
38
|
+
description?: string | undefined;
|
|
39
|
+
externalId?: string | undefined;
|
|
38
40
|
amount: string;
|
|
39
41
|
currency: `0x${string}`;
|
|
40
42
|
methodDetails: {
|
|
43
|
+
chainId: number;
|
|
44
|
+
credentialTypes: string[];
|
|
45
|
+
decimals: number;
|
|
46
|
+
permit2Address?: `0x${string}` | undefined;
|
|
41
47
|
splits?: {
|
|
42
48
|
amount: string;
|
|
43
49
|
recipient: string;
|
|
44
50
|
}[] | undefined;
|
|
45
|
-
permit2Address?: `0x${string}` | undefined;
|
|
46
|
-
chainId: number;
|
|
47
|
-
credentialTypes: string[];
|
|
48
|
-
decimals: number;
|
|
49
51
|
};
|
|
50
52
|
recipient: `0x${string}`;
|
|
51
|
-
description?: string | undefined;
|
|
52
|
-
externalId?: string | undefined;
|
|
53
53
|
}, {
|
|
54
54
|
amount: string;
|
|
55
55
|
chainId: number;
|
|
56
56
|
currency: string;
|
|
57
|
-
decimals: number;
|
|
58
|
-
recipient: string;
|
|
59
57
|
credentialTypes?: "authorization"[] | undefined;
|
|
58
|
+
decimals: number;
|
|
60
59
|
description?: string | undefined;
|
|
61
60
|
externalId?: string | undefined;
|
|
62
61
|
permit2Address?: string | undefined;
|
|
62
|
+
recipient: string;
|
|
63
63
|
splits?: {
|
|
64
64
|
amount: string;
|
|
65
65
|
recipient: string;
|
|
@@ -13,7 +13,7 @@ export declare function charge(parameters: charge.NativeConfig): Method.Server<t
|
|
|
13
13
|
export declare namespace charge {
|
|
14
14
|
type Parameters = NativeConfig;
|
|
15
15
|
type Native = Method.Server<typeof Methods.charge, Defaults>;
|
|
16
|
-
type NativeConfig = BaseConfig & CurrencyConfig & RecipientConfig
|
|
16
|
+
type NativeConfig = BaseConfig & CurrencyConfig & RecipientConfig & Method.ComposableHooks<typeof Methods.charge>;
|
|
17
17
|
type BaseConfig = {
|
|
18
18
|
/** EIP-3009 token domain metadata. Required for raw addresses and viem tokens; inferred for known assets. */
|
|
19
19
|
authorization?: Types.AuthorizationConfig | undefined;
|
|
@@ -12,6 +12,8 @@ export function charge(parameters) {
|
|
|
12
12
|
const paths = createPaths(config);
|
|
13
13
|
const transport = httpTransport(paths);
|
|
14
14
|
return Method.toServer(Methods.charge, {
|
|
15
|
+
canOffer: parameters.canOffer,
|
|
16
|
+
onPaymentSuccess: parameters.onPaymentSuccess,
|
|
15
17
|
defaults: {
|
|
16
18
|
chainId: config.chainId,
|
|
17
19
|
currency: config.currency,
|
|
@@ -7,8 +7,8 @@ export declare function evm<const parameters extends evm.Parameters>(parameters:
|
|
|
7
7
|
readonly name: "evm";
|
|
8
8
|
readonly intent: "charge";
|
|
9
9
|
readonly schema: {
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
credential: {
|
|
11
|
+
payload: import("zod/mini").ZodMiniObject<{
|
|
12
12
|
from: import("zod/mini").ZodMiniString<string>;
|
|
13
13
|
nonce: import("zod/mini").ZodMiniString<string>;
|
|
14
14
|
signature: import("zod/mini").ZodMiniString<string>;
|
|
@@ -19,7 +19,7 @@ export declare function evm<const parameters extends evm.Parameters>(parameters:
|
|
|
19
19
|
value: import("zod/mini").ZodMiniString<string>;
|
|
20
20
|
}, import("zod/v4/core").$strip>;
|
|
21
21
|
};
|
|
22
|
-
|
|
22
|
+
request: import("zod/mini").ZodMiniPipe<import("zod/mini").ZodMiniObject<{
|
|
23
23
|
amount: import("zod/mini").ZodMiniString<string>;
|
|
24
24
|
chainId: import("zod/mini").ZodMiniNumber<number>;
|
|
25
25
|
currency: import("zod/mini").ZodMiniString<string>;
|
|
@@ -36,31 +36,31 @@ export declare function evm<const parameters extends evm.Parameters>(parameters:
|
|
|
36
36
|
recipient: import("zod/mini").ZodMiniString<string>;
|
|
37
37
|
}, import("zod/v4/core").$strip>>>;
|
|
38
38
|
}, import("zod/v4/core").$strip>, import("zod/mini").ZodMiniTransform<{
|
|
39
|
+
description?: string | undefined;
|
|
40
|
+
externalId?: string | undefined;
|
|
39
41
|
amount: string;
|
|
40
42
|
currency: `0x${string}`;
|
|
41
43
|
methodDetails: {
|
|
44
|
+
chainId: number;
|
|
45
|
+
credentialTypes: string[];
|
|
46
|
+
decimals: number;
|
|
47
|
+
permit2Address?: `0x${string}` | undefined;
|
|
42
48
|
splits?: {
|
|
43
49
|
amount: string;
|
|
44
50
|
recipient: string;
|
|
45
51
|
}[] | undefined;
|
|
46
|
-
permit2Address?: `0x${string}` | undefined;
|
|
47
|
-
chainId: number;
|
|
48
|
-
credentialTypes: string[];
|
|
49
|
-
decimals: number;
|
|
50
52
|
};
|
|
51
53
|
recipient: `0x${string}`;
|
|
52
|
-
description?: string | undefined;
|
|
53
|
-
externalId?: string | undefined;
|
|
54
54
|
}, {
|
|
55
55
|
amount: string;
|
|
56
56
|
chainId: number;
|
|
57
57
|
currency: string;
|
|
58
|
-
decimals: number;
|
|
59
|
-
recipient: string;
|
|
60
58
|
credentialTypes?: "authorization"[] | undefined;
|
|
59
|
+
decimals: number;
|
|
61
60
|
description?: string | undefined;
|
|
62
61
|
externalId?: string | undefined;
|
|
63
62
|
permit2Address?: string | undefined;
|
|
63
|
+
recipient: string;
|
|
64
64
|
splits?: {
|
|
65
65
|
amount: string;
|
|
66
66
|
recipient: string;
|
|
@@ -7,8 +7,8 @@ import type * as z from '../zod.js';
|
|
|
7
7
|
* can opt into the exact wire encoding their protocol expects.
|
|
8
8
|
*/
|
|
9
9
|
export declare function createJson<const schema extends z.ZodMiniType>(schema: schema): {
|
|
10
|
-
encode(value: z.
|
|
11
|
-
decode(value: string): z.
|
|
10
|
+
encode(value: z.infer<schema>): string;
|
|
11
|
+
decode(value: string): z.infer<schema>;
|
|
12
12
|
};
|
|
13
13
|
/** Error thrown when a JSON header value is not valid base64-encoded JSON. */
|
|
14
14
|
export declare class InvalidJsonHeaderError extends Error {
|
package/dist/internal/types.d.ts
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
export type Compute<type> = {
|
|
3
3
|
[key in keyof type]: type[key];
|
|
4
4
|
} & unknown;
|
|
5
|
+
/** Recursively makes every property of a value readonly. */
|
|
6
|
+
export type DeepReadonly<type> = type extends (...args: infer _arguments) => infer _return ? type : type extends readonly unknown[] ? {
|
|
7
|
+
readonly [key in keyof type]: DeepReadonly<type[key]>;
|
|
8
|
+
} : type extends object ? {
|
|
9
|
+
readonly [key in keyof type]: DeepReadonly<type[key]>;
|
|
10
|
+
} : type;
|
|
5
11
|
declare const symbol: unique symbol;
|
|
6
12
|
/**
|
|
7
13
|
* Creates a branded type of `T` with the brand `U`.
|
package/dist/proxy/Proxy.d.ts
CHANGED
|
@@ -46,6 +46,8 @@ export declare namespace create {
|
|
|
46
46
|
docs?: Service.Docs | undefined;
|
|
47
47
|
/** Custom `fetch` implementation. Defaults to `globalThis.fetch`. */
|
|
48
48
|
fetch?: typeof globalThis.fetch | undefined;
|
|
49
|
+
/** Default handler for failed upstream attempts. Services may override it. */
|
|
50
|
+
onUpstreamError?: Service.UpstreamErrorHandler | undefined;
|
|
49
51
|
/** Services to proxy. Each service is mounted at `/{serviceId}/`. */
|
|
50
52
|
services: Service.Service[];
|
|
51
53
|
/** Human-readable title for the proxy shown in `llms.txt`. */
|
package/dist/proxy/Proxy.js
CHANGED
|
@@ -99,7 +99,13 @@ export function create(config) {
|
|
|
99
99
|
const endpoint = matched.value;
|
|
100
100
|
const ctx = { request, service, upstreamPath };
|
|
101
101
|
if (endpoint === true)
|
|
102
|
-
return proxyUpstream({
|
|
102
|
+
return proxyUpstream({
|
|
103
|
+
request,
|
|
104
|
+
service,
|
|
105
|
+
ctx,
|
|
106
|
+
proxy,
|
|
107
|
+
onUpstreamError: service.onUpstreamError ?? config.onUpstreamError,
|
|
108
|
+
});
|
|
103
109
|
const handler = typeof endpoint === 'function' ? endpoint : endpoint.pay;
|
|
104
110
|
const scope = getConfiguredScope(handler) ??
|
|
105
111
|
deriveRouteScope({
|
|
@@ -130,6 +136,7 @@ export function create(config) {
|
|
|
130
136
|
service,
|
|
131
137
|
ctx: { ...ctx, ...options },
|
|
132
138
|
proxy,
|
|
139
|
+
onUpstreamError: service.onUpstreamError ?? config.onUpstreamError,
|
|
133
140
|
});
|
|
134
141
|
return result.withReceipt(upstreamRes);
|
|
135
142
|
}
|
|
@@ -140,7 +147,7 @@ export function create(config) {
|
|
|
140
147
|
}
|
|
141
148
|
/** @internal */
|
|
142
149
|
async function proxyUpstream(options) {
|
|
143
|
-
const { request, service, ctx, proxy } = options;
|
|
150
|
+
const { request, service, ctx, proxy, onUpstreamError } = options;
|
|
144
151
|
const url = ctx.upstreamPath + new URL(request.url).search;
|
|
145
152
|
const headers = Headers.scrub(request.headers);
|
|
146
153
|
const method = request.method.toUpperCase();
|
|
@@ -154,14 +161,111 @@ async function proxyUpstream(options) {
|
|
|
154
161
|
init.body = request.body;
|
|
155
162
|
init.duplex = 'half';
|
|
156
163
|
}
|
|
157
|
-
|
|
164
|
+
const upstreamRequest = new globalThis.Request(new URL(url, new URL(service.baseUrl).origin), init);
|
|
165
|
+
if (!onUpstreamError)
|
|
166
|
+
return proxyUpstreamOnce({
|
|
167
|
+
ctx,
|
|
168
|
+
proxy,
|
|
169
|
+
service,
|
|
170
|
+
upstreamRequest,
|
|
171
|
+
});
|
|
172
|
+
for (let attempt = 1;; attempt++) {
|
|
173
|
+
const outcome = await proxyUpstreamAttempt({
|
|
174
|
+
ctx,
|
|
175
|
+
proxy,
|
|
176
|
+
service,
|
|
177
|
+
upstreamRequest,
|
|
178
|
+
});
|
|
179
|
+
let response = outcome.response;
|
|
180
|
+
if (response && service.rewriteResponse)
|
|
181
|
+
response = await service.rewriteResponse(response, ctx);
|
|
182
|
+
if (response?.ok)
|
|
183
|
+
return response;
|
|
184
|
+
const handlerResponse = response?.clone();
|
|
185
|
+
const action = await onUpstreamError({
|
|
186
|
+
...ctx,
|
|
187
|
+
attempt,
|
|
188
|
+
error: outcome.error,
|
|
189
|
+
response: handlerResponse,
|
|
190
|
+
upstreamRequest: outcome.upstreamRequest,
|
|
191
|
+
});
|
|
192
|
+
if (!action.retry) {
|
|
193
|
+
if (action.response) {
|
|
194
|
+
if (response)
|
|
195
|
+
void cancelResponseBody(response);
|
|
196
|
+
return action.response;
|
|
197
|
+
}
|
|
198
|
+
if (response) {
|
|
199
|
+
if (handlerResponse)
|
|
200
|
+
void cancelResponseBody(handlerResponse);
|
|
201
|
+
return response;
|
|
202
|
+
}
|
|
203
|
+
throw outcome.error;
|
|
204
|
+
}
|
|
205
|
+
for (const failedResponse of [response, handlerResponse])
|
|
206
|
+
if (failedResponse)
|
|
207
|
+
void cancelResponseBody(failedResponse);
|
|
208
|
+
await waitForRetry(action.delay, request.signal);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
/** Proxies one request without retaining a replay copy of its body. */
|
|
212
|
+
async function proxyUpstreamOnce(options) {
|
|
213
|
+
const { ctx, proxy, service } = options;
|
|
214
|
+
let upstreamRequest = options.upstreamRequest;
|
|
158
215
|
if (service.rewriteRequest)
|
|
159
|
-
|
|
160
|
-
let
|
|
161
|
-
|
|
216
|
+
upstreamRequest = await service.rewriteRequest(upstreamRequest, ctx);
|
|
217
|
+
let response = await proxy(upstreamRequest);
|
|
218
|
+
response = Headers.scrubResponse(response);
|
|
162
219
|
if (service.rewriteResponse)
|
|
163
|
-
|
|
164
|
-
return
|
|
220
|
+
response = await service.rewriteResponse(response, ctx);
|
|
221
|
+
return response;
|
|
222
|
+
}
|
|
223
|
+
/** Performs one independently replayable upstream request attempt. */
|
|
224
|
+
async function proxyUpstreamAttempt(options) {
|
|
225
|
+
const { ctx, proxy, service } = options;
|
|
226
|
+
let upstreamRequest = options.upstreamRequest.clone();
|
|
227
|
+
try {
|
|
228
|
+
if (service.rewriteRequest)
|
|
229
|
+
upstreamRequest = await service.rewriteRequest(upstreamRequest, ctx);
|
|
230
|
+
let response = await proxy(upstreamRequest);
|
|
231
|
+
response = Headers.scrubResponse(response);
|
|
232
|
+
return { error: undefined, response, upstreamRequest };
|
|
233
|
+
}
|
|
234
|
+
catch (error) {
|
|
235
|
+
return { error, response: undefined, upstreamRequest };
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
/** Cancels an unused failed response body before a retry. */
|
|
239
|
+
async function cancelResponseBody(response) {
|
|
240
|
+
if (!response.body || response.bodyUsed)
|
|
241
|
+
return;
|
|
242
|
+
try {
|
|
243
|
+
await response.body.cancel();
|
|
244
|
+
}
|
|
245
|
+
catch {
|
|
246
|
+
return;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
/** Waits for a retry delay while respecting request cancellation. */
|
|
250
|
+
async function waitForRetry(delay = 0, signal) {
|
|
251
|
+
if (signal.aborted)
|
|
252
|
+
throw signal.reason ?? new DOMException('The operation was aborted.', 'AbortError');
|
|
253
|
+
if (!Number.isFinite(delay) || delay <= 0)
|
|
254
|
+
return;
|
|
255
|
+
await new Promise((resolve, reject) => {
|
|
256
|
+
const onAbort = () => {
|
|
257
|
+
clearTimeout(timeout);
|
|
258
|
+
signal.removeEventListener('abort', onAbort);
|
|
259
|
+
reject(signal.reason ?? new DOMException('The operation was aborted.', 'AbortError'));
|
|
260
|
+
};
|
|
261
|
+
const timeout = setTimeout(() => {
|
|
262
|
+
signal.removeEventListener('abort', onAbort);
|
|
263
|
+
resolve();
|
|
264
|
+
}, delay);
|
|
265
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
266
|
+
if (signal.aborted)
|
|
267
|
+
onAbort();
|
|
268
|
+
});
|
|
165
269
|
}
|
|
166
270
|
function buildDiscoveryRoutes(services) {
|
|
167
271
|
return services.flatMap((service) => Object.entries(service.routes).map(([pattern, endpoint]) => {
|
|
@@ -225,7 +329,11 @@ function matchesPaymentBinding(endpoint, binding) {
|
|
|
225
329
|
const payment = Service.paymentOf(endpoint);
|
|
226
330
|
if (!payment)
|
|
227
331
|
return true;
|
|
228
|
-
|
|
332
|
+
const offers = Array.isArray(payment.offers) ? payment.offers : [payment];
|
|
333
|
+
return offers.some((offer) => typeof offer === 'object' &&
|
|
334
|
+
offer !== null &&
|
|
335
|
+
offer.method === binding.method &&
|
|
336
|
+
offer.intent === binding.intent);
|
|
229
337
|
}
|
|
230
338
|
function createFetchProxy(target, options) {
|
|
231
339
|
const localFetch = options?.fetch ?? globalThis.fetch;
|
package/dist/proxy/Service.d.ts
CHANGED
|
@@ -10,6 +10,8 @@ export type Service = {
|
|
|
10
10
|
docs?: Docs | undefined;
|
|
11
11
|
/** Unique identifier used as the URL prefix (e.g. `'openai'` → `/{id}/...`). */
|
|
12
12
|
id: string;
|
|
13
|
+
/** Handles failed upstream attempts before the proxy returns a response. Retries do not re-verify payment. */
|
|
14
|
+
onUpstreamError?: UpstreamErrorHandler | undefined;
|
|
13
15
|
/** Hook to modify the upstream request before sending (e.g. inject auth headers). */
|
|
14
16
|
rewriteRequest?: ((req: Request, ctx: Context) => Request | Promise<Request>) | undefined;
|
|
15
17
|
/** Hook to modify the upstream response before returning to the client. */
|
|
@@ -57,11 +59,41 @@ export type Context = {
|
|
|
57
59
|
service: Service;
|
|
58
60
|
upstreamPath: string;
|
|
59
61
|
} & EndpointOptions;
|
|
62
|
+
/** Context passed to an upstream error handler after a failed proxy attempt. */
|
|
63
|
+
export type UpstreamErrorContext = Context & {
|
|
64
|
+
/** One-based upstream attempt number. */
|
|
65
|
+
attempt: number;
|
|
66
|
+
/** Error thrown while preparing or sending the request. Undefined for HTTP error responses. */
|
|
67
|
+
error: unknown | undefined;
|
|
68
|
+
/** Non-2xx upstream response. Undefined when the attempt threw. */
|
|
69
|
+
response: Response | undefined;
|
|
70
|
+
/** Rewritten request sent to the upstream service. */
|
|
71
|
+
upstreamRequest: Request;
|
|
72
|
+
};
|
|
73
|
+
/** Action returned by an upstream error handler. */
|
|
74
|
+
export type UpstreamErrorAction = {
|
|
75
|
+
/** Wait this many milliseconds before retrying. */
|
|
76
|
+
delay?: number | undefined;
|
|
77
|
+
retry: true;
|
|
78
|
+
} | {
|
|
79
|
+
/** Optional response to return instead of the original failure. */
|
|
80
|
+
response?: Response | undefined;
|
|
81
|
+
retry: false;
|
|
82
|
+
};
|
|
83
|
+
/**
|
|
84
|
+
* Handles a non-2xx upstream response or thrown request error.
|
|
85
|
+
*
|
|
86
|
+
* This hook runs before the response is returned. It cannot observe failures
|
|
87
|
+
* from a streaming body after response headers have been sent.
|
|
88
|
+
*/
|
|
89
|
+
export type UpstreamErrorHandler<options = unknown> = (context: UpstreamErrorContext & Partial<Omit<options & {}, 'onUpstreamError' | 'routes'>>) => UpstreamErrorAction | Promise<UpstreamErrorAction>;
|
|
60
90
|
export type From<options extends {
|
|
61
91
|
routes: string;
|
|
62
92
|
}> = {
|
|
63
93
|
routes: EndpointMap<options['routes']>;
|
|
64
|
-
} & Omit<options, 'routes'
|
|
94
|
+
} & Omit<options, 'onUpstreamError' | 'routes'> & {
|
|
95
|
+
onUpstreamError?: UpstreamErrorHandler<options> | undefined;
|
|
96
|
+
};
|
|
65
97
|
/**
|
|
66
98
|
* Creates a service definition.
|
|
67
99
|
*
|
|
@@ -98,6 +130,8 @@ export declare namespace from {
|
|
|
98
130
|
}) => string | undefined) | undefined;
|
|
99
131
|
/** Shorthand: full request mutation function. Takes priority over `bearer`/`headers`. */
|
|
100
132
|
mutate?: ((req: Request) => Request | Promise<Request>) | undefined;
|
|
133
|
+
/** Handles failed upstream attempts before the proxy returns a response. Retries do not re-verify payment. */
|
|
134
|
+
onUpstreamError?: UpstreamErrorHandler<options> | undefined;
|
|
101
135
|
/** Hook to modify the upstream request. Receives typed per-endpoint options via `ctx`. */
|
|
102
136
|
rewriteRequest?: ((req: Request, ctx: Context & Partial<options & {}>) => Request | Promise<Request>) | undefined;
|
|
103
137
|
/** Map of route patterns to endpoint definitions. */
|
|
@@ -115,5 +149,6 @@ export declare function toLlmsTxt(services: Service[], options?: {
|
|
|
115
149
|
}): string;
|
|
116
150
|
/** Extracts per-endpoint options from an endpoint definition. */
|
|
117
151
|
export declare function getOptions(endpoint: Endpoint): EndpointOptions | undefined;
|
|
152
|
+
/** Derives discovery payment metadata from an explicitly priced endpoint handler. */
|
|
118
153
|
export declare function paymentOf(endpoint: Endpoint): Record<string, unknown> | null;
|
|
119
154
|
//# sourceMappingURL=Service.d.ts.map
|
package/dist/proxy/Service.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as Metadata from '../discovery/internal/Metadata.js';
|
|
2
2
|
/**
|
|
3
3
|
* Creates a service definition.
|
|
4
4
|
*
|
|
@@ -22,6 +22,7 @@ export function from(id, config) {
|
|
|
22
22
|
description: config.description,
|
|
23
23
|
docs: resolveDocs(config),
|
|
24
24
|
id,
|
|
25
|
+
onUpstreamError: config.onUpstreamError,
|
|
25
26
|
routes: config.routes,
|
|
26
27
|
title: config.title,
|
|
27
28
|
rewriteRequest: config.rewriteRequest
|
|
@@ -89,19 +90,19 @@ export function getOptions(endpoint) {
|
|
|
89
90
|
return endpoint.options;
|
|
90
91
|
return undefined;
|
|
91
92
|
}
|
|
93
|
+
/** Derives discovery payment metadata from an explicitly priced endpoint handler. */
|
|
92
94
|
export function paymentOf(endpoint) {
|
|
93
95
|
if (endpoint === true)
|
|
94
96
|
return null;
|
|
95
97
|
const handler = typeof endpoint === 'function' ? endpoint : endpoint.pay;
|
|
96
98
|
if (!('_internal' in handler))
|
|
97
99
|
return null;
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
return
|
|
103
|
-
|
|
104
|
-
return { intent, method: name, ...rest, ...(amount !== undefined && { amount }) };
|
|
100
|
+
const metadata = handler._internal;
|
|
101
|
+
if (!metadata)
|
|
102
|
+
return null;
|
|
103
|
+
if (Metadata.isComposed(metadata))
|
|
104
|
+
return { offers: Metadata.offers(metadata).map(Metadata.paymentOffer) };
|
|
105
|
+
return Metadata.paymentOffer(metadata);
|
|
105
106
|
}
|
|
106
107
|
function resolveDocs(config) {
|
|
107
108
|
if (config.docs) {
|
|
@@ -25,6 +25,7 @@ export function anthropic(config) {
|
|
|
25
25
|
apiReference: 'https://docs.anthropic.com/en/api/getting-started',
|
|
26
26
|
homepage: 'https://docs.anthropic.com/en/docs/intro-to-claude',
|
|
27
27
|
},
|
|
28
|
+
onUpstreamError: config.onUpstreamError,
|
|
28
29
|
rewriteRequest(request, ctx) {
|
|
29
30
|
const apiKey = ctx.apiKey ?? config.apiKey;
|
|
30
31
|
request.headers.set('x-api-key', apiKey);
|
|
@@ -26,6 +26,7 @@ export function openai(config) {
|
|
|
26
26
|
homepage: 'https://platform.openai.com/docs',
|
|
27
27
|
llms: 'https://context7.com/websites/platform_openai/llms.txt',
|
|
28
28
|
},
|
|
29
|
+
onUpstreamError: config.onUpstreamError,
|
|
29
30
|
rewriteRequest(request, ctx) {
|
|
30
31
|
const apiKey = ctx.apiKey ?? config.apiKey;
|
|
31
32
|
request.headers.delete('OpenAI-Organization');
|
|
@@ -26,6 +26,7 @@ export function stripe(config) {
|
|
|
26
26
|
homepage: 'https://docs.stripe.com',
|
|
27
27
|
llms: 'https://docs.stripe.com/llms.txt',
|
|
28
28
|
},
|
|
29
|
+
onUpstreamError: config.onUpstreamError,
|
|
29
30
|
rewriteRequest(request, ctx) {
|
|
30
31
|
const apiKey = ctx.apiKey ?? config.apiKey;
|
|
31
32
|
request.headers.delete('Stripe-Account');
|
package/dist/server/Mppx.d.ts
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import type { IncomingMessage, ServerResponse } from 'node:http';
|
|
2
|
+
import type * as Attestation from '../attestation/Types.js';
|
|
2
3
|
import * as Challenge from '../Challenge.js';
|
|
3
4
|
import * as Credential from '../Credential.js';
|
|
4
5
|
import * as Errors from '../Errors.js';
|
|
5
|
-
import type { MaybePromise } from '../internal/types.js';
|
|
6
|
+
import type { DeepReadonly, MaybePromise } from '../internal/types.js';
|
|
6
7
|
import * as Method from '../Method.js';
|
|
7
8
|
import type * as Receipt from '../Receipt.js';
|
|
8
9
|
import * as z from '../zod.js';
|
|
10
|
+
import * as Html from './internal/html/config.js';
|
|
9
11
|
import * as Transport from './Transport.js';
|
|
10
12
|
export type Methods = readonly (Method.AnyServer | readonly Method.AnyServer[])[];
|
|
11
13
|
export type ServerEventMap<methods extends readonly Method.Method[] = readonly Method.Method[], transport extends Transport.AnyTransport = Transport.AnyTransport> = {
|
|
@@ -36,6 +38,36 @@ export type ServerMethodDescriptor<method extends Pick<Method.Method, 'intent' |
|
|
|
36
38
|
intent: method['intent'];
|
|
37
39
|
name: method['name'];
|
|
38
40
|
}>;
|
|
41
|
+
/** A configured payment offer exposed to the server's `selectOffers` hook. */
|
|
42
|
+
export type ServerOffer<method extends Method.Method = Method.Method> = method extends unknown ? ServerOfferFor<method> : never;
|
|
43
|
+
type ServerOfferFor<method extends Method.Method> = Readonly<{
|
|
44
|
+
/** Canonical wire key for the configured method. */
|
|
45
|
+
key: `${method['name']}/${method['intent']}`;
|
|
46
|
+
/** Immutable method metadata for this offer. */
|
|
47
|
+
method: ServerOfferMethodDescriptor<method>;
|
|
48
|
+
/** Schema-normalized request configured for this offer. */
|
|
49
|
+
request: DeepReadonly<z.output<method['schema']['request']>>;
|
|
50
|
+
}>;
|
|
51
|
+
/** Immutable method metadata exposed to offer-selection hooks. */
|
|
52
|
+
export type ServerOfferMethodDescriptor<method extends Method.Method = Method.Method> = Readonly<{
|
|
53
|
+
/** Optional public alias used to register this server method. */
|
|
54
|
+
alias?: method extends {
|
|
55
|
+
alias?: infer alias;
|
|
56
|
+
} ? alias : string;
|
|
57
|
+
intent: method['intent'];
|
|
58
|
+
name: method['name'];
|
|
59
|
+
}>;
|
|
60
|
+
/**
|
|
61
|
+
* Selects a subset of configured offers before payment challenges are issued.
|
|
62
|
+
*
|
|
63
|
+
* The hook must select at least one offer. Returned offers must come from the input,
|
|
64
|
+
* contain no duplicates, and preserve their original order. Offers and their
|
|
65
|
+
* normalized requests are deeply immutable. The incoming request is cloned so
|
|
66
|
+
* the hook may safely inspect its body when it has not already been consumed.
|
|
67
|
+
*/
|
|
68
|
+
export type SelectOffers<methods extends readonly Method.Method[]> = (offers: readonly ServerOffer<methods[number]>[], context: Readonly<{
|
|
69
|
+
request: globalThis.Request;
|
|
70
|
+
}>) => MaybePromise<readonly ServerOffer<methods[number]>[]>;
|
|
39
71
|
/** Context passed to `onChallengeCreated`. */
|
|
40
72
|
export type ChallengeContext<method extends Method.Method = Method.Method, transport extends Transport.AnyTransport = Transport.AnyTransport> = Readonly<{
|
|
41
73
|
capturedRequest?: Method.CapturedRequest | undefined;
|
|
@@ -136,7 +168,7 @@ export type Mppx<methods extends Methods = Methods, transport extends Transport.
|
|
|
136
168
|
* })
|
|
137
169
|
* ```
|
|
138
170
|
*/
|
|
139
|
-
compose(...entries: ComposeEntry<FlattenMethods<methods>>[]):
|
|
171
|
+
compose(...entries: ComposeEntry<FlattenMethods<methods>>[]): ComposedHandler;
|
|
140
172
|
} : {}) & Handlers<FlattenMethods<methods>, transport> & {
|
|
141
173
|
/**
|
|
142
174
|
* Generate Challenge objects for registered methods without going through
|
|
@@ -196,7 +228,7 @@ type TransportOverrideOf<mi> = mi extends {
|
|
|
196
228
|
type EffectiveTransportOf<mi, defaultTransport extends Transport.AnyTransport> = [
|
|
197
229
|
TransportOverrideOf<mi>
|
|
198
230
|
] extends [never] ? defaultTransport : TransportOverrideOf<mi>;
|
|
199
|
-
declare const reservedMppxKeyValues: readonly [
|
|
231
|
+
declare const reservedMppxKeyValues: readonly ['challenge', 'compose', 'methods', 'on', 'onChallengeCreated', 'onPaymentFailed', 'onPaymentSuccess', 'realm', 'broadcastCredential', 'transport', 'validateCredential', 'verifyCredential'];
|
|
200
232
|
/** Public instance keys that payment method names and shorthand intents cannot shadow. */
|
|
201
233
|
export type ReservedKey = (typeof reservedMppxKeyValues)[number];
|
|
202
234
|
/** Public instance keys that payment method names and shorthand intents cannot shadow. */
|
|
@@ -207,18 +239,25 @@ type IsUniqueIntent<methods extends readonly Method.AnyServer[], intent extends
|
|
|
207
239
|
}> extends infer M ? M extends M ? [Exclude<Extract<methods[number], {
|
|
208
240
|
intent: intent;
|
|
209
241
|
}>, M>] extends [never] ? true : false : never : never;
|
|
210
|
-
/**
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
242
|
+
/** Shorthand intent handlers. Single-method intents get direct handlers;
|
|
243
|
+
* multi-method intents get an implicit compose wrapper. */
|
|
244
|
+
type IntentHandlers<methods extends readonly Method.AnyServer[], transport extends Transport.AnyTransport> = {
|
|
245
|
+
[intent in methods[number]['intent'] as intent extends ReservedKey ? never : intent]: IsUniqueIntent<methods, intent> extends true ? MethodFn<Extract<methods[number], {
|
|
246
|
+
intent: intent;
|
|
214
247
|
}>, EffectiveTransportOf<Extract<methods[number], {
|
|
215
|
-
intent:
|
|
248
|
+
intent: intent;
|
|
216
249
|
}>, transport>, NonNullable<Extract<methods[number], {
|
|
217
|
-
intent:
|
|
250
|
+
intent: intent;
|
|
218
251
|
}>['defaults']>> & MethodExtensions<Extract<methods[number], {
|
|
219
|
-
intent:
|
|
220
|
-
}
|
|
252
|
+
intent: intent;
|
|
253
|
+
}>> : MultiMethodFn<Extract<methods[number], {
|
|
254
|
+
intent: intent;
|
|
255
|
+
}>, transport>;
|
|
221
256
|
};
|
|
257
|
+
/** Handler for an intent with multiple methods - takes the intersection of all methods' options. */
|
|
258
|
+
type MultiMethodFn<methods extends Method.AnyServer, transport extends Transport.AnyTransport> = (options: UnionToIntersection<MultiMethodFnDistribute<methods>>) => (input: Transport.InputOf<transport>) => Promise<MethodFn.Response<transport>>;
|
|
259
|
+
type MultiMethodFnDistribute<M> = M extends Method.Server<infer method, infer defaults, any, any, any> ? MethodFn.Options<method, NonNullable<defaults>> : never;
|
|
260
|
+
type UnionToIntersection<U> = (U extends any ? (x: U) => void : never) extends (x: infer I) => void ? I : never;
|
|
222
261
|
/** Nested handlers: `mppx.tempo.charge(...)`, grouped by method name then intent. */
|
|
223
262
|
type PublicAlias<method extends Method.AnyServer> = method extends {
|
|
224
263
|
alias?: infer alias;
|
|
@@ -237,7 +276,7 @@ type NestedHandlers<methods extends readonly Method.AnyServer[], transport exten
|
|
|
237
276
|
};
|
|
238
277
|
type Handlers<methods extends readonly Method.AnyServer[], transport extends Transport.AnyTransport> = {
|
|
239
278
|
[mi in methods[number] as `${mi['name']}/${mi['intent']}`]: MethodFn<mi, EffectiveTransportOf<mi, transport>, NonNullable<mi['defaults']>> & MethodExtensions<mi>;
|
|
240
|
-
} &
|
|
279
|
+
} & IntentHandlers<methods, transport> & NestedHandlers<methods, transport> & {
|
|
241
280
|
[mi in methods[number] as PublicAlias<mi> extends string ? `${mi['name']}/${PublicAlias<mi>}` : never]: MethodFn<mi, EffectiveTransportOf<mi, transport>, NonNullable<mi['defaults']>> & MethodExtensions<mi>;
|
|
242
281
|
};
|
|
243
282
|
type MethodExtensions<method extends Method.AnyServer> = method extends {
|
|
@@ -272,12 +311,16 @@ type ChallengeFn<method extends Method.Method, defaults extends Record<string, u
|
|
|
272
311
|
export declare function create<const methods extends Methods, const transport extends Transport.AnyTransport = Transport.Http>(config: create.Config<methods, transport>): Mppx<methods, transport>;
|
|
273
312
|
export declare namespace create {
|
|
274
313
|
type Config<methods extends Methods = Methods, transport extends Transport.AnyTransport = Transport.Http> = {
|
|
314
|
+
/** Request-attestation verifiers required before handling an HTTP payment request. */
|
|
315
|
+
attestation?: transport extends Transport.Http ? Attestation.VerifierMap | undefined : never;
|
|
275
316
|
/** Array of configured methods. @example [tempo()] */
|
|
276
317
|
methods: methods;
|
|
277
318
|
/** Server realm (e.g., hostname). Resolution order: explicit value > env vars (`MPP_REALM`, `FLY_APP_NAME`, `VERCEL_URL`, etc.) > request URL hostname > `"MPP Payment"`. */
|
|
278
319
|
realm?: string | undefined;
|
|
279
320
|
/** Secret key for HMAC-bound challenge IDs for stateless verification. Must be at least 32 bytes. Auto-detected from `MPP_SECRET_KEY` environment variable. */
|
|
280
321
|
secretKey?: string | undefined;
|
|
322
|
+
/** Selects a subset of composed HTTP offers before challenges are issued. Successfully matched credential dispatch bypasses this hook. */
|
|
323
|
+
selectOffers?: transport extends Transport.Http ? SelectOffers<FlattenMethods<methods>> | undefined : never;
|
|
281
324
|
/** Transport to use. @default Transport.http() */
|
|
282
325
|
transport?: transport | undefined;
|
|
283
326
|
};
|
|
@@ -312,6 +355,25 @@ declare namespace MethodFn {
|
|
|
312
355
|
withReceipt: Transport.WithReceipt<transport>;
|
|
313
356
|
};
|
|
314
357
|
}
|
|
358
|
+
/** A configured handler — the return value of e.g. `mppx.charge({ ... })`. @internal */
|
|
359
|
+
type ConfiguredHandler = ((input: Request) => Promise<MethodFn.Response<Transport.Http>>) & {
|
|
360
|
+
_internal: {
|
|
361
|
+
_method: Method.AnyServer;
|
|
362
|
+
description?: string | undefined;
|
|
363
|
+
name: string;
|
|
364
|
+
intent: string;
|
|
365
|
+
html: Html.Options | undefined;
|
|
366
|
+
meta?: Record<string, string> | undefined;
|
|
367
|
+
scope?: string | undefined;
|
|
368
|
+
_canonicalRequest: Record<string, unknown>;
|
|
369
|
+
_stableBinding?: Method.StableBindingFn<Method.Method> | undefined;
|
|
370
|
+
};
|
|
371
|
+
};
|
|
372
|
+
type ComposedHandler = ((input: Request) => Promise<MethodFn.Response<Transport.Http>>) & {
|
|
373
|
+
_internal?: {
|
|
374
|
+
offers: readonly ConfiguredHandler['_internal'][];
|
|
375
|
+
};
|
|
376
|
+
};
|
|
315
377
|
/** An entry for `compose()`: a method reference, handler function ref, or string key paired with its options. */
|
|
316
378
|
type ComposeEntry<methods extends readonly Method.AnyServer[]> = {
|
|
317
379
|
[i in keyof methods]: readonly [
|
|
@@ -331,7 +393,7 @@ type ComposeEntry<methods extends readonly Method.AnyServer[]> = {
|
|
|
331
393
|
MethodFn.Options<methods[i], NonNullable<methods[i]['defaults']>>
|
|
332
394
|
];
|
|
333
395
|
}[number];
|
|
334
|
-
export declare function compose(...args: readonly unknown[]):
|
|
396
|
+
export declare function compose(...args: readonly unknown[]): ComposedHandler;
|
|
335
397
|
/**
|
|
336
398
|
* Wraps a payment handler to create a Node.js HTTP listener.
|
|
337
399
|
*
|