@arnaudjnn/billing-tools 2.19.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/README.md +1 -1
  2. package/dist/adapters/workos-org.d.ts +23 -0
  3. package/dist/adapters/workos-org.d.ts.map +1 -1
  4. package/dist/adapters/workos-org.js +4 -2
  5. package/dist/adapters/workos-org.js.map +1 -1
  6. package/dist/bound-api.d.ts +173 -0
  7. package/dist/bound-api.d.ts.map +1 -0
  8. package/dist/bound-api.js +152 -0
  9. package/dist/bound-api.js.map +1 -0
  10. package/dist/cli/commands.js +25 -0
  11. package/dist/cli/commands.js.map +1 -1
  12. package/dist/create-billing.d.ts +128 -41
  13. package/dist/create-billing.d.ts.map +1 -1
  14. package/dist/create-billing.js +24 -14
  15. package/dist/create-billing.js.map +1 -1
  16. package/dist/doctor.d.ts.map +1 -1
  17. package/dist/doctor.js +7 -0
  18. package/dist/doctor.js.map +1 -1
  19. package/dist/entries/agent-auth.d.ts +5 -0
  20. package/dist/entries/agent-auth.d.ts.map +1 -0
  21. package/dist/entries/agent-auth.js +17 -0
  22. package/dist/entries/agent-auth.js.map +1 -0
  23. package/dist/entries/plans.d.ts +4 -0
  24. package/dist/entries/plans.d.ts.map +1 -0
  25. package/dist/entries/plans.js +36 -0
  26. package/dist/entries/plans.js.map +1 -0
  27. package/dist/entries/routes.d.ts +5 -0
  28. package/dist/entries/routes.d.ts.map +1 -0
  29. package/dist/entries/routes.js +17 -0
  30. package/dist/entries/routes.js.map +1 -0
  31. package/dist/entries/tools.d.ts +6 -0
  32. package/dist/entries/tools.d.ts.map +1 -0
  33. package/dist/entries/tools.js +20 -0
  34. package/dist/entries/tools.js.map +1 -0
  35. package/dist/index.d.ts +6 -7
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +38 -15
  38. package/dist/index.js.map +1 -1
  39. package/dist/metering.d.ts +4 -3
  40. package/dist/metering.d.ts.map +1 -1
  41. package/dist/metering.js.map +1 -1
  42. package/dist/plan-model.d.ts +58 -3
  43. package/dist/plan-model.d.ts.map +1 -1
  44. package/dist/plan-model.js +61 -4
  45. package/dist/plan-model.js.map +1 -1
  46. package/dist/plans.d.ts +2 -2
  47. package/dist/plans.d.ts.map +1 -1
  48. package/dist/plans.js +1 -1
  49. package/dist/plans.js.map +1 -1
  50. package/dist/tools/billing.d.ts +2 -1
  51. package/dist/tools/billing.d.ts.map +1 -1
  52. package/dist/tools/billing.js +185 -64
  53. package/dist/tools/billing.js.map +1 -1
  54. package/dist/tools/management.d.ts +2 -1
  55. package/dist/tools/management.d.ts.map +1 -1
  56. package/dist/tools/management.js +210 -187
  57. package/dist/tools/management.js.map +1 -1
  58. package/dist/tools/register.d.ts +13 -1
  59. package/dist/tools/register.d.ts.map +1 -1
  60. package/dist/tools/register.js +28 -6
  61. package/dist/tools/register.js.map +1 -1
  62. package/dist/tools/subscription.d.ts +2 -1
  63. package/dist/tools/subscription.d.ts.map +1 -1
  64. package/dist/tools/subscription.js +115 -108
  65. package/dist/tools/subscription.js.map +1 -1
  66. package/dist/usage-ledger.d.ts +15 -37
  67. package/dist/usage-ledger.d.ts.map +1 -1
  68. package/dist/usage-ledger.js +24 -119
  69. package/dist/usage-ledger.js.map +1 -1
  70. package/dist/usage-scopes.d.ts +55 -0
  71. package/dist/usage-scopes.d.ts.map +1 -0
  72. package/dist/usage-scopes.js +284 -0
  73. package/dist/usage-scopes.js.map +1 -0
  74. package/dist/util/clearout.d.ts.map +1 -1
  75. package/dist/util/clearout.js +15 -3
  76. package/dist/util/clearout.js.map +1 -1
  77. package/package.json +21 -1
  78. package/dist/usage-counters.d.ts +0 -104
  79. package/dist/usage-counters.d.ts.map +0 -1
  80. package/dist/usage-counters.js +0 -214
  81. package/dist/usage-counters.js.map +0 -1
@@ -6,8 +6,7 @@ import { type AgentAuthBranding, type AgentAuthPaths, type AgentAuthPolicy, type
6
6
  import type { ClaimStore } from "./agent-auth/claim-store.js";
7
7
  import { type MachinePaymentOptions } from "./machine-payment/index.js";
8
8
  import { type OAuthProxyOptions } from "./oauth-proxy/index.js";
9
- import { type UsageCounterStore } from "./usage-counters.js";
10
- import { type SqlClient, type UsageLedger } from "./usage-ledger.js";
9
+ import { type UsageLedger } from "./usage-ledger.js";
11
10
  import type { PlanCatalog } from "./plans.js";
12
11
  export interface CreateBillingOptions {
13
12
  /** Storage adapter (WorkOSOrgAdapter or your own). */
@@ -95,52 +94,140 @@ export interface CreateBillingOptions {
95
94
  * windows are all org-scoped — `cap: pool`, `cap: wallet`, `scope: "org"`
96
95
  * limits — needs no store at all.
97
96
  *
98
- * Pass `db` (or one of your own) when a window is both INCLUDED and
99
- * PER-MEMBER: a seat pack, or a `scope: "caller"` limit. Nothing in Stripe can
100
- * count that pair, and without a store it reads 0 forever.
97
+ * When a window is both INCLUDED and PER-MEMBER a seat pack, or a
98
+ * `scope: "caller"` limit the default cannot see it, and it reads 0 forever.
99
+ * Pass `stripeUsageLedger({ perCaller: stripeScopeUsageLedger() })`, which
100
+ * counts that pair in Stripe too, with no store: each usage scope gets a Stripe
101
+ * Customer of its own, which is the only second grouping key Stripe offers.
102
+ * It is opt-in rather than default because creating those customers is a side
103
+ * effect a consumer should choose. `checkPlansConfig` names the plans that
104
+ * need it, and `createMeter` warns at boot.
101
105
  */
102
106
  ledger?: UsageLedger;
103
- /**
104
- * A Postgres-compatible client, used as the composite's PER-CALLER leg.
105
- *
106
- * Given one, per-member windows are counted in `usage_events` via
107
- * `postgresUsageLedger` — exact, per-caller, and able to see INCLUDED usage,
108
- * which is the pair no Stripe primitive offers. Org-wide windows still go to
109
- * the Stripe meter, so they are answered without scanning those rows.
110
- *
111
- * Run `ensureUsageLedgerTable(db)` once from your migrations first.
112
- *
113
- * `ledger` wins if both are given, for a consumer with their own store, and
114
- * `counters` below wins over this — it answers the same questions without the
115
- * per-call row.
116
- */
117
- db?: SqlClient;
118
- /**
119
- * A COUNTER store for the per-caller leg — the scale-correct choice, and the
120
- * one that does not need SQL.
121
- *
122
- * `db` above keeps one row per metered call and answers a window by aggregating
123
- * a range of them on the hot path. Counters keep one row per (org, scope, hour),
124
- * so a caller making a thousand calls in an hour writes ONE row and every read
125
- * is a point lookup: the store stops growing with traffic, and the read stops
126
- * scaling with it. At the volumes a plan actually declares — an Enterprise
127
- * window of 200 000 credits a week — that is the difference between a bounded
128
- * working set and a partitioning project.
129
- *
130
- * `sqlUsageCounters(pool)` uses the database you already have;
131
- * `redisUsageCounters(client)` needs no SQL at all (`redis`, `ioredis`,
132
- * `@upstash/redis` and Vercel KV all satisfy the duck type). Run
133
- * `ensureUsageCountersTable(pool)` from your migrations for the SQL one.
134
- *
135
- * What it gives up: per-action history. A counter cannot say WHICH actions made
136
- * up a total — pass `db` instead if you want that trail.
137
- */
138
- counters?: UsageCounterStore;
139
107
  };
140
108
  }
141
109
  export declare function createBilling(opts: CreateBillingOptions): {
142
110
  adapter: BillingAdapter;
143
111
  config: import("./types.js").ResolvedConfig;
112
+ /** The bound, org-scoped API: `api.invoices.list(orgId)`, `api.usage.summary(orgId)`, … */
113
+ api: {
114
+ customerId: (orgId: string, email?: string) => Promise<string>;
115
+ customerIdIfAny: (orgId: string) => Promise<string | null>;
116
+ isInternal: (orgId: string) => Promise<boolean>;
117
+ plan: (orgId: string) => Promise<string | null>;
118
+ profile: {
119
+ get: (orgId: string) => Promise<import("./billing-profile.js").BillingProfile>;
120
+ update: (orgId: string, patch: Parameters<typeof import("./billing-profile.js").updateBillingProfile>[2]) => Promise<import("./billing-profile.js").BillingProfile>;
121
+ };
122
+ taxIds: {
123
+ list: (orgId: string) => Promise<import("./tax-ids.js").CustomerTaxId[]>;
124
+ set: (orgId: string, input: Parameters<typeof import("./tax-ids.js").setCustomerTaxId>[2]) => Promise<import("./tax-ids.js").CustomerTaxId | null>;
125
+ };
126
+ cards: {
127
+ list: (orgId: string) => Promise<import("./payment-methods.js").SavedCard[]>;
128
+ setDefault: (orgId: string, paymentMethodId: string) => Promise<void>;
129
+ remove: (orgId: string, paymentMethodId: string) => Promise<void>;
130
+ setupIntent: (orgId: string, opts: Parameters<typeof import("./payment-methods.js").createCardSetupIntent>[2]) => Promise<{
131
+ clientSecret: string;
132
+ customerId: string;
133
+ }>;
134
+ setupCheckout: (orgId: string, opts: Parameters<typeof import("./payment-methods.js").createCardSetupCheckoutSession>[2]) => Promise<{
135
+ clientSecret: string;
136
+ sessionId: string;
137
+ }>;
138
+ };
139
+ invoices: {
140
+ list: (orgId: string, limit?: number) => Promise<import("./billing.js").InvoiceEntry[]>;
141
+ get: (orgId: string, invoiceId: string) => Promise<import("./billing.js").InvoiceEntry | null>;
142
+ pdfUrl: (orgId: string, invoiceId: string) => Promise<string | null>;
143
+ };
144
+ subscription: {
145
+ get: (orgId: string) => Promise<{
146
+ plan: string | null;
147
+ status: string | null;
148
+ subscriptionId: string | null;
149
+ periodEnd: string | null;
150
+ }>;
151
+ change: (orgId: string, to: Parameters<typeof import("./subscription.js").changePlan>[2]["to"], opts?: Omit<Parameters<typeof import("./subscription.js").changePlan>[2], "plans" | "to" | "config" | "currency">) => Promise<import("./subscription.js").PlanChangeResult>;
152
+ preview: (orgId: string, to: Parameters<typeof import("./subscription.js").previewPlanChange>[2]["to"], opts?: Omit<Parameters<typeof import("./subscription.js").previewPlanChange>[2], "plans" | "to" | "currency">) => Promise<import("./subscription.js").PlanChangePreview>;
153
+ cancel: (orgId: string, opts?: Omit<Parameters<typeof import("./subscription.js").cancelPlan>[2], "plans" | "currency">) => Promise<import("./subscription.js").PlanChangeResult>;
154
+ };
155
+ seats: {
156
+ list: (orgId: string) => Promise<{
157
+ [x: string]: string;
158
+ }>;
159
+ get: (orgId: string, memberId: string) => Promise<string | null>;
160
+ assign: (orgId: string, memberId: string, seatType: string | null) => Promise<void>;
161
+ };
162
+ usage: {
163
+ summary: (orgId: string, opts?: {
164
+ caller?: {
165
+ kind: "user" | "api";
166
+ id?: string;
167
+ seatType?: string;
168
+ };
169
+ locale?: Parameters<typeof import("./usage.js").usageSummary>[2]["locale"];
170
+ now?: number;
171
+ }) => Promise<import("./usage.js").UsageSummary>;
172
+ byMember: (orgId: string, members: Parameters<typeof import("./usage.js").memberUsage>[2]["members"], opts?: {
173
+ now?: number;
174
+ }) => Promise<import("./usage.js").MemberUsage[]>;
175
+ allowance: (orgId: string, opts?: Omit<Parameters<typeof import("./allowance.js").resolveAllowance>[2], "orgId" | "plans" | "plan" | "ledger">) => Promise<import("./allowance.js").AllowanceState>;
176
+ cycle: (orgId: string, opts?: {
177
+ now?: number;
178
+ }) => Promise<import("./plan-model.js").CycleWindow>;
179
+ };
180
+ topUps: {
181
+ list: (orgId: string) => Promise<import("./topup.js").TopUpRequest[]>;
182
+ request: (orgId: string, req: {
183
+ memberId: string;
184
+ amount: number;
185
+ id?: string;
186
+ cycle?: string;
187
+ }) => Promise<{
188
+ id: string;
189
+ cycle: string;
190
+ }>;
191
+ approve: (orgId: string, requestId: string) => Promise<{
192
+ ok: boolean;
193
+ reason?: "not_found";
194
+ }>;
195
+ deny: (orgId: string, requestId: string) => Promise<{
196
+ ok: boolean;
197
+ reason?: "not_found";
198
+ }>;
199
+ grant: (orgId: string, input: Parameters<typeof import("./topup.js").grantTopUp>[2]) => Promise<{
200
+ ok: boolean;
201
+ total: number;
202
+ reason?: "invalid_amount" | "duplicate";
203
+ }>;
204
+ grantExtra: (orgId: string, memberId: string, opts?: {
205
+ percent?: number;
206
+ grantedBy?: string;
207
+ id?: string;
208
+ }) => Promise<{
209
+ ok: boolean;
210
+ total?: number;
211
+ granted?: number;
212
+ packSize?: number;
213
+ cycle?: string;
214
+ reason?: "invalid_amount" | "not_capped" | "duplicate";
215
+ }>;
216
+ granted: (orgId: string, memberId: string, cycle: string) => Promise<number>;
217
+ };
218
+ auth: {
219
+ access: () => Promise<import("./types.js").ToolErrorResult | {
220
+ authorized: true;
221
+ orgId: string;
222
+ }>;
223
+ admin: (action: string) => Promise<import("./types.js").ToolErrorResult | {
224
+ authorized: true;
225
+ orgId: string;
226
+ principal: import("./auth.js").Principal | null;
227
+ }>;
228
+ credits: (orgId: string, toolName: string, cost: number) => Promise<import("./types.js").ToolErrorResult | null>;
229
+ };
230
+ };
144
231
  register: (server: McpServer) => void;
145
232
  dispatcher: {
146
233
  dispatchTool: (name: string, args: Record<string, unknown>) => Promise<unknown>;
@@ -1 +1 @@
1
- {"version":3,"file":"create-billing.d.ts","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-billing.d.ts","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
@@ -8,8 +8,8 @@ import { CLAIM_GRANT_TYPE, createAgentAuth, } from "./agent-auth/index.js";
8
8
  import { createMachinePaymentHandler, createPaymentMd } from "./machine-payment/index.js";
9
9
  import { createOAuthProxy } from "./oauth-proxy/index.js";
10
10
  import { createMeter, createApiMeterGuard } from "./metering.js";
11
- import { counterUsageLedger } from "./usage-counters.js";
12
- import { defaultUsageLedger, postgresUsageLedger, stripeUsageLedger, } from "./usage-ledger.js";
11
+ import { defaultUsageLedger } from "./usage-ledger.js";
12
+ import { createBoundApi } from "./bound-api.js";
13
13
  export function createBilling(opts) {
14
14
  const resolved = resolveConfig(opts.config);
15
15
  // MCP OAuth 2.1 + DCR proxy (opt-in). Built first so agentAuth can advertise
@@ -99,23 +99,20 @@ export function createBilling(opts) {
99
99
  currency: opts.machinePayment.currency ?? resolved.currency,
100
100
  })
101
101
  : undefined;
102
- // The ledger, resolved once: an explicit one wins, then a database as the
103
- // per-caller leg, then the composite on its own.
102
+ // The ledger, resolved once: an explicit one wins, otherwise the composite.
104
103
  //
105
104
  // The composite is the default because it counts every ORG-wide window in
106
105
  // Stripe — included usage too, one request per window at any volume — so a
107
- // config whose windows are all org-scoped needs no database at all. That was
106
+ // config whose windows are all org-scoped needs nothing else. That was
108
107
  // previously impossible: the old default was the debits themselves, so an
109
108
  // included call counted as 0 and every window read 0%.
110
- const ledger = opts.meter?.ledger ??
111
- (opts.meter?.counters
112
- ? // Counters answer a per-member window with a point read instead of a range
113
- // aggregate, so they are the scale-correct per-caller leg. Org-wide windows
114
- // still go to the Stripe meter, which needs no store at any volume.
115
- stripeUsageLedger({ perCaller: counterUsageLedger(opts.meter.counters) })
116
- : opts.meter?.db
117
- ? stripeUsageLedger({ perCaller: postgresUsageLedger(opts.meter.db) })
118
- : defaultUsageLedger());
109
+ //
110
+ // A per-MEMBER included window (a seat pack, a `scope: "caller"` limit) is the
111
+ // one case the default cannot see, and the answer is `ledger` above with
112
+ // `stripeScopeUsageLedger()` as the per-caller leg — still no store. There is
113
+ // no longer a `db` or `counters` shortcut: they existed only for that case, and
114
+ // a database is no longer the way to solve it.
115
+ const ledger = opts.meter?.ledger ?? defaultUsageLedger();
119
116
  // What the wired ledger cannot count is warned about by `createMeter` below,
120
117
  // which every metered call goes through whichever constructor composed the app —
121
118
  // so the rule lives in one place (`warnLedgerGaps`) instead of once per entry
@@ -138,9 +135,22 @@ export function createBilling(opts) {
138
135
  const meterRequest = meter
139
136
  ? createApiMeterGuard(opts.adapter, meter, { realm: opts.realm })
140
137
  : undefined;
138
+ // Every org-scoped library function, with adapter/config/plans/ledger/resolvePlan
139
+ // already applied. This is what removes the ~40 hand-written pass-throughs each
140
+ // consumer used to need before writing any product code — and, more importantly,
141
+ // removes the place where a wrapper could file a grant against the wrong cycle.
142
+ const api = createBoundApi({
143
+ adapter: opts.adapter,
144
+ config: resolved,
145
+ plans: opts.plans,
146
+ ledger,
147
+ resolvePlan: opts.resolvePlan ?? opts.meter?.resolvePlan,
148
+ });
141
149
  return {
142
150
  adapter: opts.adapter,
143
151
  config: resolved,
152
+ /** The bound, org-scoped API: `api.invoices.list(orgId)`, `api.usage.summary(orgId)`, … */
153
+ api,
144
154
  register,
145
155
  dispatcher,
146
156
  /** MCP transport: mount `export const { GET, POST } = mcp` in app/[transport]/route.ts. */
@@ -1 +1 @@
1
- {"version":3,"file":"create-billing.js","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-billing.js","sourceRoot":"","sources":["../src/create-billing.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAoC,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,0BAA0B,EAAuB,MAAM,qBAAqB,CAAC;AACtF,OAAO,EACL,gBAAgB,EAChB,eAAe,GAKhB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,2BAA2B,EAAE,eAAe,EAA8B,MAAM,4BAA4B,CAAC;AACtH,OAAO,EAAE,gBAAgB,EAA0B,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAoB,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAmGhD,MAAM,UAAU,aAAa,CAAC,IAA0B;IACtD,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAE5C,6EAA6E;IAC7E,sDAAsD;IACtD,uFAAuF;IACvF,IAAI,YAA4D,CAAC;IACjE,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU;QAChC,CAAC,CAAC,gBAAgB,CAAC;YACf,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;YACpD,OAAO,EACL,CAAC,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;gBAChE,IAAI,CAAC,SAAS,EAAE,OAAO;YACzB,oEAAoE;YACpE,yDAAyD;YACzD,UAAU,EAAE,GAAG,EAAE,CACf,YAAY;gBACV,CAAC,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,CAAC,gBAAgB,EAAE;gBACnE,CAAC,CAAC,SAAS;SAChB,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS;QAC9B,CAAC,CAAC,eAAe,CAAC;YACd,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,QAAQ;YAChB,GAAG,IAAI,CAAC,SAAS;YACjB,wEAAwE;YACxE,sEAAsE;YACtE,kDAAkD;YAClD,GAAG,CAAC,UAAU;gBACZ,CAAC,CAAC;oBACE,MAAM,EAAE;wBACN,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM;wBACxB,eAAe,EAAE;4BACf,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,IAAI,EAAE,CAAC;4BACjD,GAAG,UAAU,CAAC,UAAU;yBACzB;qBACF;oBACD,eAAe,EAAE,CAAC,OAAgB,EAAE,EAAE,CAAC,CAAC;wBACtC,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC;qBAClC,CAAC;iBACH;gBACH,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,YAAY,GAAG,SAAS,CAAC;IACzB,MAAM,gBAAgB,GAAG,SAAS;QAChC,CAAC,CAAC,CAAC,OAAgB,EAAE,EAAE,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC;QAC9D,CAAC,CAAC,SAAS,CAAC;IAEd,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,QAAQ,GAAG,CAAC,MAAiB,EAAE,EAAE;QACrC,oBAAoB,CAAC,MAAM,EAAE;YAC3B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,QAAQ;YAChB,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,EAAE,WAAW;SACzD,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAE9C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IAClF,MAAM,YAAY,GAAG,yBAAyB,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACpG,MAAM,GAAG,GAAG,kBAAkB,CAAC;QAC7B,QAAQ;QACR,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE,YAAY;QACpC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW;QAClC,gBAAgB;KACjB,CAAC,CAAC;IACH,MAAM,OAAO,GACX,IAAI,CAAC,OAAO,KAAK,KAAK;QACpB,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,0BAA0B,CAAC;YACzB,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YACvB,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,QAAQ,CAAC,QAAQ;SACtD,CAAC,CAAC;IAET,0EAA0E;IAC1E,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc;QACxC,CAAC,CAAC,2BAA2B,CAAC,IAAI,CAAC,cAAc,CAAC;QAClD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc;QACnC,CAAC,CAAC,eAAe,CAAC;YACd,WAAW,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,WAAW,IAAI,cAAc;YACnE,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO;YACpC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;SAC5D,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAEd,4EAA4E;IAC5E,EAAE;IACF,0EAA0E;IAC1E,2EAA2E;IAC3E,uEAAuE;IACvE,0EAA0E;IAC1E,uDAAuD;IACvD,EAAE;IACF,+EAA+E;IAC/E,yEAAyE;IACzE,8EAA8E;IAC9E,gFAAgF;IAChF,+CAA+C;IAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,IAAI,kBAAkB,EAAE,CAAC;IAE1D,6EAA6E;IAC7E,iFAAiF;IACjF,8EAA8E;IAC9E,0EAA0E;IAE1E,gFAAgF;IAChF,kEAAkE;IAClE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK;QACtB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE;YAClC,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;YACvB,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC7B,WAAW,EACT,IAAI,CAAC,KAAK,CAAC,WAAW;gBACtB,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE,CACvB,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;YAC/D,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY;YACrC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc;YACzC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU;YACjC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;YAC7B,MAAM;SACP,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,YAAY,GAAG,KAAK;QACxB,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QACjE,CAAC,CAAC,SAAS,CAAC;IAEd,kFAAkF;IAClF,gFAAgF;IAChF,iFAAiF;IACjF,gFAAgF;IAChF,MAAM,GAAG,GAAG,cAAc,CAAC;QACzB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,MAAM;QACN,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,KAAK,EAAE,WAAW;KACzD,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,MAAM,EAAE,QAAQ;QAChB,2FAA2F;QAC3F,GAAG;QACH,QAAQ;QACR,UAAU;QACV,2FAA2F;QAC3F,GAAG;QACH,qCAAqC;QACrC,QAAQ;QACR,4CAA4C;QAC5C,YAAY;QACZ,mEAAmE;QACnE,OAAO;QACP;wDACgD;QAChD,KAAK;QACL;qFAC6E;QAC7E,YAAY;QACZ,sEAAsE;QACtE,SAAS;QACT,4GAA4G;QAC5G,cAAc;QACd,gFAAgF;QAChF,SAAS;QACT;;mFAE2E;QAC3E,KAAK,EAAE,UAAU;YACf,CAAC,CAAC;gBACE,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,KAAK,EAAE,UAAU,CAAC,KAAK;aACxB;YACH,CAAC,CAAC,SAAS;KACd,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,WAAW,EACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAehD,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;AAEjD,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,4CAA4C;IAC5C,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,GAAE;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;4EACwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;wBACoB;IACpB,wBAAwB,CAAC,EAAE,OAAO,CAAC;CAC/B,GAAG,OAAO,CAAC,YAAY,CAAC,CA2R7B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE;IACR;;oCAEgC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;CACxC,GACA,YAAY,CAgSd;AAED,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAc3F"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,WAAW,EACjB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAa,KAAK,OAAO,EAAE,MAAM,UAAU,CAAC;AACnD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAehD,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;AAEjD,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,UAAU,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,4CAA4C;IAC5C,OAAO,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,GAAE;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;OAIG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;4EACwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;wBACoB;IACpB,wBAAwB,CAAC,EAAE,OAAO,CAAC;CAC/B,GAAG,OAAO,CAAC,YAAY,CAAC,CAgS7B;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,WAAW,EAClB,OAAO,CAAC,EAAE;IACR;;oCAEgC;IAChC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;CACxC,GACA,YAAY,CAgSd;AAED,0EAA0E;AAC1E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAc3F"}
package/dist/doctor.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { getStripe } from "./billing.js";
2
2
  import { ledgerGaps, normalizePlans, poolSizeOf, } from "./plan-model.js";
3
+ import { USAGE_SCOPE_KIND } from "./usage-scopes.js";
3
4
  import { BILLING_WEBHOOK_EVENTS } from "./webhook-setup.js";
4
5
  import { taxModeOf } from "./tax.js";
5
6
  /**
@@ -152,6 +153,12 @@ export async function checkBillingSetup(opts = {}) {
152
153
  const reloadNoCard = [];
153
154
  let seen = 0;
154
155
  for await (const customer of stripe.customers.list({ limit: 100 })) {
156
+ // A per-caller usage scope is a COUNTER wearing a customer's shape
157
+ // (`stripeScopeUsageLedger`): it buys nothing, is never invoiced and has no
158
+ // currency to be pinned to. Counting them would dilute the ratio below and
159
+ // could exhaust the 500-customer sample without looking at a real one.
160
+ if (customer.metadata?.bt_kind === USAGE_SCOPE_KIND)
161
+ continue;
155
162
  seen++;
156
163
  if (customer.currency && customer.currency !== want) {
157
164
  if (sample.length < 5)
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export { createAgentAuth, CLAIM_GRANT_TYPE, type AgentAuthOptions, type AgentAuthBranding, type AgentAuthPaths, type AgentAuthPolicy, type AgentIdentityType, } from "../agent-auth/index.js";
2
+ export { inMemoryClaimStore, type ClaimStore, type ClaimStatus, type ClaimReadResult, } from "../agent-auth/claim-store.js";
3
+ export { createMachinePaymentHandler, createPaymentMd, type MachinePaymentOptions, type MachinePaymentMethod, type PaymentChallenge, type SettleFn, type PaymentMdOptions, } from "../machine-payment/index.js";
4
+ export { createOAuthProxy, type OAuthProxy, type OAuthProxyOptions, type OAuthProxyPaths, type ClaimGrantChain, } from "../oauth-proxy/index.js";
5
+ //# sourceMappingURL=agent-auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-auth.d.ts","sourceRoot":"","sources":["../../src/entries/agent-auth.ts"],"names":[],"mappings":"AAUA,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,eAAe,GACrB,MAAM,8BAA8B,CAAC;AAItC,OAAO,EACL,2BAA2B,EAC3B,eAAe,EACf,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EACzB,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACb,KAAK,gBAAgB,GACtB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,gBAAgB,EAChB,KAAK,UAAU,EACf,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,17 @@
1
+ // `@arnaudjnn/billing-tools/agent-auth` — the two agent-facing protocols and the
2
+ // OAuth proxy that fronts them.
3
+ //
4
+ // auth.md (WorkOS agent self-registration) and MPP (Stripe's 402 machine-payment
5
+ // challenge) are siblings: one gets an agent an identity, the other gets it a paid
6
+ // resource. Grouped in one entry because an app that mounts either almost always
7
+ // mounts both, and neither is on the path of an app that only sells to humans —
8
+ // which is the reason they should not have been in the root barrel.
9
+ // auth.md — agent self-registration protocol (framework-agnostic handlers).
10
+ export { createAgentAuth, CLAIM_GRANT_TYPE, } from "../agent-auth/index.js";
11
+ export { inMemoryClaimStore, } from "../agent-auth/claim-store.js";
12
+ // MPP — 402 + WWW-Authenticate: Payment. Settlement is injected, so the challenge
13
+ // side is offline-testable without a machine-payments-eligible Stripe account.
14
+ export { createMachinePaymentHandler, createPaymentMd, } from "../machine-payment/index.js";
15
+ // MCP OAuth 2.1 + Dynamic Client Registration proxy.
16
+ export { createOAuthProxy, } from "../oauth-proxy/index.js";
17
+ //# sourceMappingURL=agent-auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-auth.js","sourceRoot":"","sources":["../../src/entries/agent-auth.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,gCAAgC;AAChC,EAAE;AACF,iFAAiF;AACjF,mFAAmF;AACnF,iFAAiF;AACjF,gFAAgF;AAChF,oEAAoE;AAEpE,4EAA4E;AAC5E,OAAO,EACL,eAAe,EACf,gBAAgB,GAMjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,GAInB,MAAM,8BAA8B,CAAC;AAEtC,kFAAkF;AAClF,+EAA+E;AAC/E,OAAO,EACL,2BAA2B,EAC3B,eAAe,GAMhB,MAAM,6BAA6B,CAAC;AAErC,qDAAqD;AACrD,OAAO,EACL,gBAAgB,GAKjB,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from "../plan-model.js";
2
+ export * from "../i18n.js";
3
+ export * from "../types.js";
4
+ //# sourceMappingURL=plans.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plans.d.ts","sourceRoot":"","sources":["../../src/entries/plans.ts"],"names":[],"mappings":"AA0BA,cAAc,kBAAkB,CAAC;AAKjC,cAAc,YAAY,CAAC;AAM3B,cAAc,aAAa,CAAC"}
@@ -0,0 +1,36 @@
1
+ // `@arnaudjnn/billing-tools/plans` — the plan catalogue and its arithmetic, with
2
+ // NOTHING behind it.
3
+ //
4
+ // The root barrel re-exports 45 modules, so `import { planModel } from
5
+ // "@arnaudjnn/billing-tools"` in a Server Component pulls in the MCP SDK,
6
+ // mcp-handler, authkit-nextjs, Stripe, WorkOS and sales-tax to answer a question
7
+ // about a plain object. This leaf is the same three modules the pricing entry
8
+ // already proves can stand alone: `plan-model.ts`, `i18n.ts` and `types.ts` import
9
+ // no external package at all, so this graph is pure TypeScript.
10
+ //
11
+ // What that buys, beyond bundle size: a config file, a docs generator, a pricing
12
+ // page and a test can all read the catalogue without a Stripe key in the
13
+ // environment. `test/conventions.test.mjs` asserts the purity, because the way it
14
+ // would be lost is one convenient re-export at a time.
15
+ //
16
+ // NOT here, deliberately:
17
+ // • `ensurePlans`, `planPriceId`, `migrateSubscriptions` — they MINT Stripe
18
+ // prices, which is the whole reason `plans.ts` imports Stripe.
19
+ // • `checkPlansConfig` — it lives in `doctor.ts` beside the account audit, which
20
+ // reads Stripe. Import it from the root; it is a deploy-time call, not one a
21
+ // page makes.
22
+ // Both stay available from the root barrel.
23
+ // The five axes, the normalised model, and everything derived from it:
24
+ // definePlans, planModel, normalizePlans, poolSizeOf, packSizeOf, capCovers,
25
+ // rateLimitsOf, cycleWindowFor, validateBasket, toolCapabilities, …
26
+ export * from "../plan-model.js";
27
+ // Localisation of app-authored strings (`Localized`, `resolveLocalized`) and the
28
+ // library's own English defaults (`DEFAULT_MESSAGES`). A plan's display copy is
29
+ // localised, so the plan model cannot be read without these.
30
+ export * from "../i18n.js";
31
+ // The storage seam and the config shape: `BillingAdapter`, `BillingConfig`,
32
+ // `resolveConfig`, `internalDomainsFromEnv`. Deliberately SDK-independent — that
33
+ // abstraction is exactly what lets a non-WorkOS adapter satisfy the interface, and
34
+ // it is why they belong in a pure entry.
35
+ export * from "../types.js";
36
+ //# sourceMappingURL=plans.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plans.js","sourceRoot":"","sources":["../../src/entries/plans.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,qBAAqB;AACrB,EAAE;AACF,uEAAuE;AACvE,0EAA0E;AAC1E,iFAAiF;AACjF,8EAA8E;AAC9E,mFAAmF;AACnF,gEAAgE;AAChE,EAAE;AACF,iFAAiF;AACjF,yEAAyE;AACzE,kFAAkF;AAClF,uDAAuD;AACvD,EAAE;AACF,0BAA0B;AAC1B,8EAA8E;AAC9E,mEAAmE;AACnE,mFAAmF;AACnF,iFAAiF;AACjF,kBAAkB;AAClB,4CAA4C;AAE5C,uEAAuE;AACvE,6EAA6E;AAC7E,oEAAoE;AACpE,cAAc,kBAAkB,CAAC;AAEjC,iFAAiF;AACjF,gFAAgF;AAChF,6DAA6D;AAC7D,cAAc,YAAY,CAAC;AAE3B,4EAA4E;AAC5E,iFAAiF;AACjF,mFAAmF;AACnF,yCAAyC;AACzC,cAAc,aAAa,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { createToolListHandler, createToolDispatchHandler, type Dispatcher } from "../routes/rest.js";
2
+ export { createMcpTransport, type McpTransportOptions } from "../routes/mcp.js";
3
+ export { createStripeWebhookHandler, type WebhookOptions } from "../routes/webhook.js";
4
+ export { ensureWebhookEndpoint, BILLING_WEBHOOK_EVENTS, type EnsureWebhookResult, } from "../webhook-setup.js";
5
+ //# sourceMappingURL=routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/entries/routes.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAAE,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAIvF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,KAAK,mBAAmB,GACzB,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,17 @@
1
+ // `@arnaudjnn/billing-tools/routes` — the Next route factories.
2
+ //
3
+ // One import per file you mount: the REST list + dispatch handlers, the MCP
4
+ // transport, and the Stripe webhook. Carries Stripe and mcp-handler because those
5
+ // ARE the surfaces; carries no WorkOS, no authkit and no React.
6
+ //
7
+ // `createBilling` is deliberately absent — it composes these three plus the tools,
8
+ // the agent-auth handlers and the MPP handler, so it needs the whole graph and
9
+ // stays at the root, where it also guarantees the single module instance its shared
10
+ // AsyncLocalStorage depends on.
11
+ export { createToolListHandler, createToolDispatchHandler } from "../routes/rest.js";
12
+ export { createMcpTransport } from "../routes/mcp.js";
13
+ export { createStripeWebhookHandler } from "../routes/webhook.js";
14
+ // Registering the endpoint from a deploy script rather than the Dashboard: the
15
+ // signing secret Stripe returns once, at creation, is why this cannot be lazy.
16
+ export { ensureWebhookEndpoint, BILLING_WEBHOOK_EVENTS, } from "../webhook-setup.js";
17
+ //# sourceMappingURL=routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/entries/routes.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,EAAE;AACF,4EAA4E;AAC5E,kFAAkF;AAClF,gEAAgE;AAChE,EAAE;AACF,mFAAmF;AACnF,+EAA+E;AAC/E,oFAAoF;AACpF,gCAAgC;AAEhC,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAmB,MAAM,mBAAmB,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAA4B,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,0BAA0B,EAAuB,MAAM,sBAAsB,CAAC;AAEvF,+EAA+E;AAC/E,+EAA+E;AAC/E,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GAEvB,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,6 @@
1
+ export { registerBillingTools, installInputLogging, BILLING_TOOL_NAMES, type RegisterBillingToolsOptions, } from "../tools/register.js";
2
+ export type { TopUpToolOptions } from "../tools/billing.js";
3
+ export type { SubscriptionToolOptions } from "../tools/subscription.js";
4
+ export { toolCapabilities, ALL_TOOL_CAPABILITIES, type ToolCapabilities, } from "../plan-model.js";
5
+ export { createDispatcher, ToolValidationError, type RegisterFn } from "../dispatch.js";
6
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/entries/tools.ts"],"names":[],"mappings":"AAcA,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,KAAK,2BAA2B,GACjC,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAKxE,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,20 @@
1
+ // `@arnaudjnn/billing-tools/tools` — registering the billing tool surface, and the
2
+ // REST bridge that turns it into endpoints.
3
+ //
4
+ // Carries the MCP SDK, zod, Stripe and WorkOS (the handlers move money and read
5
+ // the org), which is unavoidable. What it does NOT carry is mcp-handler or
6
+ // authkit-nextjs — those belong to the transports and the UI, and the root barrel
7
+ // reaches both, so an app that only registers tools was resolving two peer deps it
8
+ // never called.
9
+ //
10
+ // `createDispatcher` is here rather than under `/routes` because it is what makes
11
+ // the parity rule structural — it monkey-patches `server.tool`, so every tool
12
+ // registered here is a REST endpoint with no extra wiring, and the route factories
13
+ // are just its HTTP shell.
14
+ export { registerBillingTools, installInputLogging, BILLING_TOOL_NAMES, } from "../tools/register.js";
15
+ // Which groups the catalogue can satisfy. Exported here as well as from the pure
16
+ // `/plans` leaf because it is the argument `registerBillingTools` reads, and an app
17
+ // overriding a group wants both names from one import.
18
+ export { toolCapabilities, ALL_TOOL_CAPABILITIES, } from "../plan-model.js";
19
+ export { createDispatcher, ToolValidationError } from "../dispatch.js";
20
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/entries/tools.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,4CAA4C;AAC5C,EAAE;AACF,gFAAgF;AAChF,2EAA2E;AAC3E,kFAAkF;AAClF,mFAAmF;AACnF,gBAAgB;AAChB,EAAE;AACF,kFAAkF;AAClF,8EAA8E;AAC9E,mFAAmF;AACnF,2BAA2B;AAE3B,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,GAEnB,MAAM,sBAAsB,CAAC;AAI9B,iFAAiF;AACjF,oFAAoF;AACpF,uDAAuD;AACvD,OAAO,EACL,gBAAgB,EAChB,qBAAqB,GAEtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAmB,MAAM,gBAAgB,CAAC"}