74 source modules documented with extracted signatures, JSDoc params, imports, and call graphs. 10 first-class models (PriceRule through StatusResponse) have their own MD/RST/PDF. Sphinx HTML builds from docs/sphinx. Per-module PDFs in docs/modules-pdf and docs/models-pdf. Middleware gates 2–6 and 10 pass on MOCK_VERAE without NATS. Learned: RST includes are relative to the RST file; keep one PDF per module; Add Numbers remains the only push required tomorrow.
57 lines
1.8 KiB
Markdown
57 lines
1.8 KiB
Markdown
# `zappier/db/billing-repo`
|
||
|
||
**Package:** `zappier`
|
||
**Source:** `packages/zappier/src/db/billing-repo.ts`
|
||
**Lines:** 69
|
||
|
||
## What this module is
|
||
|
||
Implementation module in `zappier`. The tables below are extracted from the source (signatures + JSDoc).
|
||
|
||
## Exports
|
||
|
||
`BillingReportRepo`, `JobLockRepo`, `SqliteBillingReportRepo`
|
||
|
||
## Types / interfaces / classes
|
||
|
||
| Kind | Name |
|
||
|------|------|
|
||
| interface | `BillingReportRepo` |
|
||
| interface | `JobLockRepo` |
|
||
| class | `SqliteBillingReportRepo` |
|
||
|
||
## Functions
|
||
|
||
_No top-level functions extracted._
|
||
|
||
## Methods (class / object)
|
||
|
||
| Name | Parameters |
|
||
|------|------------|
|
||
| `getReportedCents` | `customerId: string, period: string` |
|
||
| `upsertReportedCents` | `customerId: string, period: string, cumulativeCents: number` |
|
||
| `tryAcquireLock` | `name: string, ttlMs: number` |
|
||
| `releaseLock` | `name: string` |
|
||
| `constructor` | `private db: Database.Database,
|
||
private now: (` |
|
||
| `getReportedCents` | `customerId: string, period: string` |
|
||
| `upsertReportedCents` | `customerId: string, period: string, cumulativeCents: number` |
|
||
| `tryAcquireLock` | `name: string, ttlMs: number` |
|
||
| `releaseLock` | `name: string` |
|
||
|
||
## What it imports / requires
|
||
|
||
- `better-sqlite3`
|
||
|
||
## Call graph (identifiers invoked)
|
||
|
||
`getReportedCents`, `upsertReportedCents`, `tryAcquireLock`, `releaseLock`, `constructor`, `exec`, `billing_reports`, `job_locks`, `prepare`, `get`, `run`, `now`
|
||
|
||
Each identifier is a call site in this file. Follow the import list to see the defining module; open that module’s MD for parameter and return types.
|
||
|
||
## Return values (how to read this)
|
||
|
||
- HTTP route handlers return Express `res.json(...)` bodies (see route docs).
|
||
- Zapier `perform` functions return a **single object** (creates) or an **array** (triggers/searches).
|
||
- Pricing functions return integer **cents** on `Quote.totalCents`.
|
||
|