@pacspace-io/sdk 0.1.0 → 0.2.1

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 (46) hide show
  1. package/README.md +67 -11
  2. package/dist/client.d.ts +34 -3
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +296 -21
  5. package/dist/client.js.map +1 -1
  6. package/dist/errors/index.d.ts +24 -1
  7. package/dist/errors/index.d.ts.map +1 -1
  8. package/dist/errors/index.js +44 -4
  9. package/dist/errors/index.js.map +1 -1
  10. package/dist/index.d.ts +51 -13
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +107 -8
  13. package/dist/index.js.map +1 -1
  14. package/dist/resources/balance.d.ts +221 -15
  15. package/dist/resources/balance.d.ts.map +1 -1
  16. package/dist/resources/balance.js +772 -27
  17. package/dist/resources/balance.js.map +1 -1
  18. package/dist/resources/submission.d.ts +79 -0
  19. package/dist/resources/submission.d.ts.map +1 -0
  20. package/dist/resources/submission.js +398 -0
  21. package/dist/resources/submission.js.map +1 -0
  22. package/dist/types/balance.d.ts +493 -28
  23. package/dist/types/balance.d.ts.map +1 -1
  24. package/dist/types/common.d.ts +3 -3
  25. package/dist/types/common.d.ts.map +1 -1
  26. package/dist/types/config.d.ts +53 -3
  27. package/dist/types/config.d.ts.map +1 -1
  28. package/dist/types/submission.d.ts +125 -0
  29. package/dist/types/submission.d.ts.map +1 -0
  30. package/dist/types/submission.js +3 -0
  31. package/dist/types/submission.js.map +1 -0
  32. package/dist/utils/polling.d.ts +2 -2
  33. package/dist/utils/polling.d.ts.map +1 -1
  34. package/dist/utils/polling.js +2 -6
  35. package/dist/utils/polling.js.map +1 -1
  36. package/dist/webhooks/index.d.ts +1 -1
  37. package/dist/webhooks/index.d.ts.map +1 -1
  38. package/dist/webhooks/types.d.ts +31 -31
  39. package/dist/webhooks/types.d.ts.map +1 -1
  40. package/dist/webhooks/types.js +0 -3
  41. package/dist/webhooks/types.js.map +1 -1
  42. package/dist/webhooks/verify.d.ts +5 -0
  43. package/dist/webhooks/verify.d.ts.map +1 -1
  44. package/dist/webhooks/verify.js +19 -4
  45. package/dist/webhooks/verify.js.map +1 -1
  46. package/package.json +1 -1
@@ -1,6 +1,8 @@
1
1
  import type { HttpClient } from '../client';
2
- import type { EmitOptions, EmitAndWaitOptions, EmitResponse, DeriveOptions, DeriveResponse, CompareOptions, CompareBalances, CompareResponse, ReceiptResponse, CheckpointOptions, CheckpointResponse } from '../types/balance';
2
+ import type { EmitOptions, EmitAndWaitOptions, EmitResponse, DeriveOptions, DeriveResponse, CompareOptions, CompareBalances, CompareResponse, ReceiptResponse, CheckpointOptions, CheckpointResponse, ListCheckpointsOptions, ListCheckpointsResponse, DeltaStatusResponse, WaitForVerifiedOptions, UsageResponse, SequenceGapsOptions, SequenceGapsResponse, BulkDelta, BulkEmitOptions, BulkEmitResponse, ListWebhookDeliveriesOptions, ListWebhookDeliveriesResponse, ListCustomersOptions, ListCustomersResponse, GetCustomerOptions, CustomerRecordDetail, InvoiceProofOptions, InvoiceProofResponse } from '../types/balance';
3
3
  import type { RequestOptions } from '../types/config';
4
+ import type { CustomerUsageSummary, FlushSummariesOptions, QueuedUsageSummary, SubmissionAutomationOptions, SubmissionQueueState, SummaryFlushResult } from '../types/submission';
5
+ import { SubmissionCoordinator } from './submission';
4
6
  /**
5
7
  * PacSpace Balance API resource.
6
8
  *
@@ -14,8 +16,12 @@ import type { RequestOptions } from '../types/config';
14
16
  */
15
17
  export declare class BalanceResource {
16
18
  private readonly client;
19
+ /**
20
+ * Submission automation coordinator for tenant-produced summaries.
21
+ */
22
+ readonly submission: SubmissionCoordinator;
17
23
  /** @internal */
18
- constructor(client: HttpClient);
24
+ constructor(client: HttpClient, submissionOptions?: SubmissionAutomationOptions);
19
25
  /**
20
26
  * Record a credit or debit delta for a customer.
21
27
  *
@@ -59,6 +65,88 @@ export declare class BalanceResource {
59
65
  * ```
60
66
  */
61
67
  emitAndWait(customerId: string, delta: number, reason: string, options?: EmitAndWaitOptions): Promise<EmitResponse>;
68
+ /**
69
+ * Check the status of a previously emitted delta.
70
+ *
71
+ * @param recordId - The record ID returned from emit.
72
+ * @param options - Request overrides.
73
+ * @returns Delta status with receipt and transaction details.
74
+ *
75
+ * @example
76
+ * ```typescript
77
+ * const status = await pac.balance.deltaStatus('rec_abc123');
78
+ * console.log(status.status); // 'QUEUED', 'PROCESSING', etc.
79
+ * ```
80
+ */
81
+ deltaStatus(recordId: string, options?: RequestOptions): Promise<DeltaStatusResponse>;
82
+ /**
83
+ * Alias for `deltaStatus()` with lifecycle-oriented naming.
84
+ */
85
+ getRecordStatus(recordId: string, options?: RequestOptions): Promise<DeltaStatusResponse>;
86
+ /**
87
+ * Poll record lifecycle until it reaches a terminal status.
88
+ *
89
+ * Terminal statuses are `VERIFIED` and `FAILED`.
90
+ */
91
+ waitForVerified(recordId: string, options?: WaitForVerifiedOptions): Promise<DeltaStatusResponse>;
92
+ /**
93
+ * Retrieve tenant usage counters and remaining allotment.
94
+ */
95
+ usage(options?: RequestOptions): Promise<UsageResponse>;
96
+ /**
97
+ * Detect missing per-customer sequence ranges.
98
+ *
99
+ * Use this to identify gaps and re-emit missing deltas safely.
100
+ */
101
+ gaps(customerId: string, options?: SequenceGapsOptions): Promise<SequenceGapsResponse>;
102
+ /**
103
+ * Record multiple deltas in a single batch request.
104
+ *
105
+ * Ideal for end-of-day reconciliation or importing historical data.
106
+ * Up to 100 deltas per batch.
107
+ *
108
+ * @param deltas - Array of deltas to record.
109
+ * @param options - Request overrides.
110
+ * @returns Per-delta results with totals.
111
+ *
112
+ * @example
113
+ * ```typescript
114
+ * const result = await pac.balance.emitBatch([
115
+ * { customerId: 'cust_123', delta: -100, reason: 'usage' },
116
+ * { customerId: 'cust_456', delta: -200, reason: 'usage' },
117
+ * ]);
118
+ * console.log(result.totalQueued); // 2
119
+ * ```
120
+ */
121
+ emitBatch(deltas: BulkDelta[], options?: BulkEmitOptions): Promise<BulkEmitResponse>;
122
+ /**
123
+ * Queue one tenant-produced summary for SDK-managed submission.
124
+ */
125
+ queueSummary(summary: CustomerUsageSummary): QueuedUsageSummary;
126
+ /**
127
+ * Queue multiple tenant-produced summaries.
128
+ */
129
+ queueSummaries(summaries: CustomerUsageSummary[]): QueuedUsageSummary[];
130
+ /**
131
+ * Flush queued summaries immediately.
132
+ */
133
+ flushSummaries(options?: FlushSummariesOptions): Promise<SummaryFlushResult>;
134
+ /**
135
+ * Start periodic summary submission scheduling.
136
+ */
137
+ startSummaryScheduler(): void;
138
+ /**
139
+ * Stop periodic summary submission scheduling.
140
+ */
141
+ stopSummaryScheduler(): void;
142
+ /**
143
+ * Get queue/scheduler state for summary submission automation.
144
+ */
145
+ getSummaryQueueState(): SubmissionQueueState;
146
+ /**
147
+ * Stop scheduler and flush queued summaries (best for graceful shutdown).
148
+ */
149
+ shutdownSummaryScheduler(): Promise<void>;
62
150
  /**
63
151
  * Derive a customer's balance from all verified deltas.
64
152
  *
@@ -109,40 +197,158 @@ export declare class BalanceResource {
109
197
  /**
110
198
  * Generate a verifiable receipt for a customer.
111
199
  *
112
- * Returns a human-readable receipt containing all verified deltas
113
- * and cryptographic proof data that any party can independently verify.
200
+ * When `options.period` is provided, returns a period-specific receipt (proof root,
201
+ * verifyUrl, verificationReference) suitable for sharing on invoices. When
202
+ * omitted, returns the full record receipt with all verified deltas.
114
203
  *
115
204
  * @param customerId - The customer account to generate a receipt for.
116
- * @param options - Request overrides.
117
- * @returns Receipt with verification data.
205
+ * @param options - Optional period (YYYY-MM) and request overrides.
206
+ * @returns Receipt with verification data; shape depends on whether period is set.
118
207
  *
119
208
  * @example
120
209
  * ```typescript
121
- * const receipt = await pac.balance.receipt('cust_123');
122
- * console.log(receipt.finalBalance);
123
- * console.log(receipt.verification.itemHashes);
210
+ * // Period-specific receipt (shareable proof for invoices)
211
+ * const receipt = await pac.balance.receipt('cust_123', { period: '2026-02' });
212
+ * console.log(receipt.proofRoot); // Include on invoice
213
+ * console.log(receipt.verifyUrl); // Share with counterparty
214
+ *
215
+ * // Full record receipt
216
+ * const full = await pac.balance.receipt('cust_123');
217
+ * console.log(full.finalBalance);
124
218
  * ```
125
219
  */
126
- receipt(customerId: string, options?: RequestOptions): Promise<ReceiptResponse>;
220
+ receipt(customerId: string, options?: InvoiceProofOptions & RequestOptions): Promise<ReceiptResponse | InvoiceProofResponse>;
221
+ /**
222
+ * @internal
223
+ * Generate a period-specific receipt (proof root, verifyUrl). Used by receipt().
224
+ */
225
+ private receiptForPeriod;
127
226
  /**
128
227
  * Commit a period-end checkpoint.
129
228
  *
130
- * Computes a Merkle root over all verified deltas in the billing window
131
- * and anchors it on-chain. The checkpoint hash can be included in invoices
132
- * for instant counterparty verification.
229
+ * Computes a proof root over all verified deltas in the billing window
230
+ * and records it on the public verification layer. The proof root can be
231
+ * included in invoices for instant counterparty verification.
133
232
  *
134
233
  * @param customerId - Customer to checkpoint (omit for all customers).
135
234
  * @param options - Period (YYYY-MM) and request overrides.
136
- * @returns Checkpoint details with Merkle root and status.
235
+ * @returns Checkpoint details with proof root and status.
137
236
  *
138
237
  * @example
139
238
  * ```typescript
140
239
  * const checkpoint = await pac.balance.checkpoint('cust_123', {
141
240
  * period: '2026-02',
142
241
  * });
143
- * console.log(checkpoint.merkleRoot); // Include in your invoice
242
+ * console.log(checkpoint.proofRoot); // Include in your invoice
144
243
  * ```
145
244
  */
146
245
  checkpoint(customerId?: string, options?: CheckpointOptions): Promise<CheckpointResponse>;
246
+ /**
247
+ * List committed checkpoints for your tenant.
248
+ *
249
+ * Returns a paginated list of checkpoints, optionally filtered by
250
+ * customer ID and/or billing period.
251
+ *
252
+ * @param options - Filter and pagination options.
253
+ * @returns Paginated list of checkpoints.
254
+ *
255
+ * @example
256
+ * ```typescript
257
+ * const { checkpoints } = await pac.balance.listCheckpoints({
258
+ * period: '2026-02',
259
+ * limit: 10,
260
+ * });
261
+ * ```
262
+ */
263
+ listCheckpoints(options?: ListCheckpointsOptions): Promise<ListCheckpointsResponse>;
264
+ /**
265
+ * List webhook delivery history.
266
+ *
267
+ * @param options - Filter and pagination options.
268
+ * @returns Paginated list of webhook deliveries.
269
+ *
270
+ * @example
271
+ * ```typescript
272
+ * const { deliveries } = await pac.balance.listWebhookDeliveries({
273
+ * status: 'failed',
274
+ * limit: 10,
275
+ * });
276
+ * ```
277
+ */
278
+ listWebhookDeliveries(options?: ListWebhookDeliveriesOptions): Promise<ListWebhookDeliveriesResponse>;
279
+ /**
280
+ * Retry a failed webhook delivery.
281
+ *
282
+ * @param eventId - The event ID of the failed delivery.
283
+ * @param options - Request overrides.
284
+ *
285
+ * @example
286
+ * ```typescript
287
+ * await pac.balance.retryWebhook('evt_abc123');
288
+ * ```
289
+ */
290
+ retryWebhook(eventId: string, options?: RequestOptions): Promise<{
291
+ eventId: string;
292
+ status: string;
293
+ message: string;
294
+ }>;
295
+ /**
296
+ * List all customer balance records for your account.
297
+ *
298
+ * Each unique customerId passed to emit() automatically creates an
299
+ * isolated customer record. This method returns a paginated list.
300
+ *
301
+ * @param options - Search, pagination, and request overrides.
302
+ * @returns Paginated list of customer records.
303
+ *
304
+ * @example
305
+ * ```typescript
306
+ * const { customers } = await pac.balance.customers();
307
+ * for (const c of customers) {
308
+ * console.log(c.customerId, c.totalDeltas);
309
+ * }
310
+ * ```
311
+ */
312
+ customers(options?: ListCustomersOptions): Promise<ListCustomersResponse>;
313
+ /**
314
+ * Get the full record detail for a specific customer.
315
+ *
316
+ * Returns the derived customer reference, computed balance, delta count,
317
+ * and latest checkpoint. The customer reference is deterministic.
318
+ *
319
+ * @param customerId - The customer to look up.
320
+ * @param options - Activity pagination and request overrides.
321
+ * @returns Customer detail including balance and references.
322
+ *
323
+ * @example
324
+ * ```typescript
325
+ * const customer = await pac.balance.customer('cust_001');
326
+ * console.log(customer.customerReference); // 0xA1b2...Ef34
327
+ * console.log(customer.computedBalance); // 4500.00
328
+ * ```
329
+ */
330
+ customer(customerId: string, options?: GetCustomerOptions): Promise<CustomerRecordDetail>;
331
+ private normalizeEmitResponse;
332
+ private mergeEmitWithStatus;
333
+ private normalizeDeltaStatusResponse;
334
+ private normalizeDeriveResponse;
335
+ private normalizeCompareResponse;
336
+ private normalizeReceiptResponse;
337
+ private normalizeInvoiceProofResponse;
338
+ private normalizeCheckpointResponse;
339
+ private normalizeListCheckpointsResponse;
340
+ private normalizeSequenceGapsResponse;
341
+ private normalizeBulkEmitResponse;
342
+ private normalizeListCustomersResponse;
343
+ private normalizeCustomerDetailResponse;
344
+ /**
345
+ * Generate an invoice-ready receipt for a customer's billing period.
346
+ *
347
+ * @deprecated Use `receipt(customerId, { period })` instead.
348
+ * @param customerId - The customer to generate the receipt for.
349
+ * @param options - Period selection and request overrides.
350
+ * @returns Receipt with proof root, verifyUrl, and verification data.
351
+ */
352
+ invoiceProof(customerId: string, options?: InvoiceProofOptions): Promise<InvoiceProofResponse>;
147
353
  }
148
354
  //# sourceMappingURL=balance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../src/resources/balance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAClB,YAAY,EACZ,aAAa,EACb,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGtD;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAEd,OAAO,CAAC,QAAQ,CAAC,MAAM;IADnC,gBAAgB;gBACa,MAAM,EAAE,UAAU;IAM/C;;;;;;;;;;;;;;;;;;OAkBG;IACG,IAAI,CACR,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,YAAY,CAAC;IAmBxB;;;;;;;;;;;;;;;;;;;;;OAqBG;IACG,WAAW,CACf,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,YAAY,CAAC;IAiCxB;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,MAAM,CACV,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,cAAc,CAAC;IA8B1B;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACG,OAAO,CACX,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,eAAe,EACzB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,eAAe,CAAC;IAiC3B;;;;;;;;;;;;;;;;OAgBG;IACG,OAAO,CACX,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,eAAe,CAAC;IAW3B;;;;;;;;;;;;;;;;;;OAkBG;IACG,UAAU,CACd,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,kBAAkB,CAAC;CAa/B"}
1
+ {"version":3,"file":"balance.d.ts","sourceRoot":"","sources":["../../src/resources/balance.ts"],"names":[],"mappings":"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"}