@cliwant/mcp-sam-gov 0.3.0 → 1.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 (228) hide show
  1. package/LICENSE +21 -21
  2. package/README.ja.md +48 -16
  3. package/README.ko.md +48 -16
  4. package/README.md +226 -64
  5. package/dist/attachments.d.ts +63 -0
  6. package/dist/attachments.d.ts.map +1 -0
  7. package/dist/attachments.js +576 -0
  8. package/dist/attachments.js.map +1 -0
  9. package/dist/bls.d.ts +267 -0
  10. package/dist/bls.d.ts.map +1 -0
  11. package/dist/bls.js +1549 -0
  12. package/dist/bls.js.map +1 -0
  13. package/dist/cache.d.ts +2 -0
  14. package/dist/cache.d.ts.map +1 -1
  15. package/dist/cache.js +4 -0
  16. package/dist/cache.js.map +1 -1
  17. package/dist/census.d.ts +182 -0
  18. package/dist/census.d.ts.map +1 -0
  19. package/dist/census.js +576 -0
  20. package/dist/census.js.map +1 -0
  21. package/dist/ckan.d.ts +141 -0
  22. package/dist/ckan.d.ts.map +1 -0
  23. package/dist/ckan.js +393 -0
  24. package/dist/ckan.js.map +1 -0
  25. package/dist/clinicaltrials.d.ts +180 -0
  26. package/dist/clinicaltrials.d.ts.map +1 -0
  27. package/dist/clinicaltrials.js +730 -0
  28. package/dist/clinicaltrials.js.map +1 -0
  29. package/dist/cms.d.ts +140 -0
  30. package/dist/cms.d.ts.map +1 -0
  31. package/dist/cms.js +482 -0
  32. package/dist/cms.js.map +1 -0
  33. package/dist/coerce.d.ts +32 -0
  34. package/dist/coerce.d.ts.map +1 -0
  35. package/dist/coerce.js +50 -0
  36. package/dist/coerce.js.map +1 -0
  37. package/dist/datagov-catalog.d.ts +84 -0
  38. package/dist/datagov-catalog.d.ts.map +1 -0
  39. package/dist/datagov-catalog.js +233 -0
  40. package/dist/datagov-catalog.js.map +1 -0
  41. package/dist/datagov.d.ts +146 -0
  42. package/dist/datagov.d.ts.map +1 -0
  43. package/dist/datagov.js +689 -0
  44. package/dist/datagov.js.map +1 -0
  45. package/dist/datagovKey.d.ts +36 -0
  46. package/dist/datagovKey.d.ts.map +1 -0
  47. package/dist/datagovKey.js +60 -0
  48. package/dist/datagovKey.js.map +1 -0
  49. package/dist/datasource.d.ts +313 -0
  50. package/dist/datasource.d.ts.map +1 -0
  51. package/dist/datasource.js +551 -0
  52. package/dist/datasource.js.map +1 -0
  53. package/dist/disclosure.d.ts +55 -0
  54. package/dist/disclosure.d.ts.map +1 -0
  55. package/dist/disclosure.js +57 -0
  56. package/dist/disclosure.js.map +1 -0
  57. package/dist/ecfr.d.ts +4 -2
  58. package/dist/ecfr.d.ts.map +1 -1
  59. package/dist/ecfr.js +74 -1
  60. package/dist/ecfr.js.map +1 -1
  61. package/dist/echo.d.ts +143 -0
  62. package/dist/echo.d.ts.map +1 -0
  63. package/dist/echo.js +424 -0
  64. package/dist/echo.js.map +1 -0
  65. package/dist/edgar.d.ts +377 -0
  66. package/dist/edgar.d.ts.map +1 -0
  67. package/dist/edgar.js +2418 -0
  68. package/dist/edgar.js.map +1 -0
  69. package/dist/errors.d.ts +26 -0
  70. package/dist/errors.d.ts.map +1 -1
  71. package/dist/errors.js +69 -1
  72. package/dist/errors.js.map +1 -1
  73. package/dist/fac.d.ts +180 -0
  74. package/dist/fac.d.ts.map +1 -0
  75. package/dist/fac.js +416 -0
  76. package/dist/fac.js.map +1 -0
  77. package/dist/far.d.ts +170 -0
  78. package/dist/far.d.ts.map +1 -0
  79. package/dist/far.js +804 -0
  80. package/dist/far.js.map +1 -0
  81. package/dist/fdic.d.ts +599 -0
  82. package/dist/fdic.d.ts.map +1 -0
  83. package/dist/fdic.js +1624 -0
  84. package/dist/fdic.js.map +1 -0
  85. package/dist/federal-register.d.ts +139 -2
  86. package/dist/federal-register.d.ts.map +1 -1
  87. package/dist/federal-register.js +419 -3
  88. package/dist/federal-register.js.map +1 -1
  89. package/dist/fema.d.ts +181 -0
  90. package/dist/fema.d.ts.map +1 -0
  91. package/dist/fema.js +436 -0
  92. package/dist/fema.js.map +1 -0
  93. package/dist/fpds.d.ts +108 -0
  94. package/dist/fpds.d.ts.map +1 -0
  95. package/dist/fpds.js +519 -0
  96. package/dist/fpds.js.map +1 -0
  97. package/dist/gao.d.ts +64 -0
  98. package/dist/gao.d.ts.map +1 -0
  99. package/dist/gao.js +640 -0
  100. package/dist/gao.js.map +1 -0
  101. package/dist/govinfo.d.ts +111 -0
  102. package/dist/govinfo.d.ts.map +1 -0
  103. package/dist/govinfo.js +422 -0
  104. package/dist/govinfo.js.map +1 -0
  105. package/dist/grants.d.ts +27 -4
  106. package/dist/grants.d.ts.map +1 -1
  107. package/dist/grants.js +111 -6
  108. package/dist/grants.js.map +1 -1
  109. package/dist/gsa-csv.d.ts +249 -0
  110. package/dist/gsa-csv.d.ts.map +1 -0
  111. package/dist/gsa-csv.js +784 -0
  112. package/dist/gsa-csv.js.map +1 -0
  113. package/dist/integrity.d.ts +212 -0
  114. package/dist/integrity.d.ts.map +1 -0
  115. package/dist/integrity.js +707 -0
  116. package/dist/integrity.js.map +1 -0
  117. package/dist/meta.d.ts +165 -0
  118. package/dist/meta.d.ts.map +1 -0
  119. package/dist/meta.js +162 -0
  120. package/dist/meta.js.map +1 -0
  121. package/dist/nih.d.ts +117 -0
  122. package/dist/nih.d.ts.map +1 -0
  123. package/dist/nih.js +291 -0
  124. package/dist/nih.js.map +1 -0
  125. package/dist/nppes.d.ts +157 -0
  126. package/dist/nppes.d.ts.map +1 -0
  127. package/dist/nppes.js +648 -0
  128. package/dist/nppes.js.map +1 -0
  129. package/dist/nsf.d.ts +176 -0
  130. package/dist/nsf.d.ts.map +1 -0
  131. package/dist/nsf.js +554 -0
  132. package/dist/nsf.js.map +1 -0
  133. package/dist/nvd.d.ts +176 -0
  134. package/dist/nvd.d.ts.map +1 -0
  135. package/dist/nvd.js +912 -0
  136. package/dist/nvd.js.map +1 -0
  137. package/dist/ofac.d.ts +205 -0
  138. package/dist/ofac.d.ts.map +1 -0
  139. package/dist/ofac.js +919 -0
  140. package/dist/ofac.js.map +1 -0
  141. package/dist/pricing.d.ts +110 -0
  142. package/dist/pricing.d.ts.map +1 -0
  143. package/dist/pricing.js +843 -0
  144. package/dist/pricing.js.map +1 -0
  145. package/dist/sam-gov/client.d.ts +60 -2
  146. package/dist/sam-gov/client.d.ts.map +1 -1
  147. package/dist/sam-gov/client.js +320 -54
  148. package/dist/sam-gov/client.js.map +1 -1
  149. package/dist/sam-gov/index.d.ts +1 -1
  150. package/dist/sam-gov/index.d.ts.map +1 -1
  151. package/dist/sam-gov/index.js +1 -1
  152. package/dist/sam-gov/index.js.map +1 -1
  153. package/dist/sam-gov/types.d.ts +24 -0
  154. package/dist/sam-gov/types.d.ts.map +1 -1
  155. package/dist/sba.d.ts +72 -0
  156. package/dist/sba.d.ts.map +1 -0
  157. package/dist/sba.js +281 -0
  158. package/dist/sba.js.map +1 -0
  159. package/dist/server.d.ts +14 -2
  160. package/dist/server.d.ts.map +1 -1
  161. package/dist/server.js +3889 -296
  162. package/dist/server.js.map +1 -1
  163. package/dist/snapshot.d.ts +98 -0
  164. package/dist/snapshot.d.ts.map +1 -0
  165. package/dist/snapshot.js +146 -0
  166. package/dist/snapshot.js.map +1 -0
  167. package/dist/socrata.d.ts +157 -0
  168. package/dist/socrata.d.ts.map +1 -0
  169. package/dist/socrata.js +448 -0
  170. package/dist/socrata.js.map +1 -0
  171. package/dist/treasury.d.ts +143 -0
  172. package/dist/treasury.d.ts.map +1 -0
  173. package/dist/treasury.js +436 -0
  174. package/dist/treasury.js.map +1 -0
  175. package/dist/usaspending.d.ts +260 -65
  176. package/dist/usaspending.d.ts.map +1 -1
  177. package/dist/usaspending.js +1629 -201
  178. package/dist/usaspending.js.map +1 -1
  179. package/dist/usitc.d.ts +142 -0
  180. package/dist/usitc.d.ts.map +1 -0
  181. package/dist/usitc.js +339 -0
  182. package/dist/usitc.js.map +1 -0
  183. package/package.json +24 -2
  184. package/src/attachments.ts +652 -0
  185. package/src/bls.ts +1943 -0
  186. package/src/cache.ts +5 -0
  187. package/src/census.ts +735 -0
  188. package/src/ckan.ts +495 -0
  189. package/src/clinicaltrials.ts +923 -0
  190. package/src/cms.ts +634 -0
  191. package/src/coerce.ts +47 -0
  192. package/src/datagov-catalog.ts +296 -0
  193. package/src/datagov.ts +907 -0
  194. package/src/datagovKey.ts +68 -0
  195. package/src/datasource.ts +721 -0
  196. package/src/disclosure.ts +61 -0
  197. package/src/ecfr.ts +98 -1
  198. package/src/echo.ts +496 -0
  199. package/src/edgar.ts +3014 -0
  200. package/src/errors.ts +84 -1
  201. package/src/fac.ts +529 -0
  202. package/src/far.ts +1007 -0
  203. package/src/fdic.ts +2052 -0
  204. package/src/federal-register.ts +512 -3
  205. package/src/fema.ts +541 -0
  206. package/src/fpds.ts +620 -0
  207. package/src/gao.ts +744 -0
  208. package/src/govinfo.ts +497 -0
  209. package/src/grants.ts +139 -7
  210. package/src/gsa-csv.ts +992 -0
  211. package/src/integrity.ts +928 -0
  212. package/src/meta.ts +292 -0
  213. package/src/nih.ts +375 -0
  214. package/src/nppes.ts +834 -0
  215. package/src/nsf.ts +706 -0
  216. package/src/nvd.ts +1124 -0
  217. package/src/ofac.ts +1166 -0
  218. package/src/pricing.ts +1075 -0
  219. package/src/sam-gov/client.ts +345 -63
  220. package/src/sam-gov/index.ts +5 -1
  221. package/src/sam-gov/types.ts +22 -0
  222. package/src/sba.ts +357 -0
  223. package/src/server.ts +4551 -328
  224. package/src/snapshot.ts +192 -0
  225. package/src/socrata.ts +532 -0
  226. package/src/treasury.ts +575 -0
  227. package/src/usaspending.ts +1946 -214
  228. package/src/usitc.ts +420 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"far.js","sourceRoot":"","sources":["../src/far.ts"],"names":[],"mappings":"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"}
package/dist/fdic.d.ts ADDED
@@ -0,0 +1,599 @@
1
+ /**
2
+ * FDIC BankFind Suite — keyless FDIC-insured-institution directory + regulated-
3
+ * entity financials (ADR-0028). The FIRST OFF-EDGAR entity source: an
4
+ * FDIC-insured-institution directory (`/banks/institutions`) + quarterly
5
+ * financial time-series (`/banks/financials`) for B2G counterparty / entity
6
+ * due-diligence. Source 22 → 23; tool snapshot 87 → 89. Fully PUBLIC, KEYLESS —
7
+ * no key param, no auth, no PII (institution NAME is an ORG name; the curated
8
+ * projections exclude every officer/contact field).
9
+ *
10
+ * R2 consumer — reuses the shipped `DataSource` port EXACTLY like ckan.ts /
11
+ * socrata.ts: `getJson` / `driftError` / `throughGate` (datasource.ts), `num`·
12
+ * `str` (coerce.ts), `withMeta` / `buildMeta` (meta.ts). It writes ZERO fetch /
13
+ * coercion / error / pagination code, and COPIES (does not import) the SSRF +
14
+ * honesty PATTERN.
15
+ * Directory: https://api.fdic.gov/banks/institutions?filters=…&search=…&fields=…
16
+ * Financials: https://api.fdic.gov/banks/financials?filters=CERT:<int>&fields=…
17
+ *
18
+ * SUCCESS envelope (live-verified 2026-07-13, SEC-style UA, HTTP 200 JSON):
19
+ * { "meta": { "total": <EXACT int>, "parameters": {…}, "index": { "name":…,
20
+ * "createTimestamp":… } }, "data": [ { "data": {<record>}, "score":… } ] }
21
+ * `meta.total` is the EXACT match count, STABLE across `offset` (honest exact-
22
+ * total pagination). Records are nested under `data[].data`. Two OTHER envelopes
23
+ * exist: a QUERY-ERROR `{ "errors":[{status,detail}] }` (HTTP 400) and a
24
+ * ROUTING `{ "message","statusCode" }` (HTTP 404) — both handled by the port's
25
+ * taxonomy (they THROW before the drift-guard ever runs).
26
+ *
27
+ * ★ SSRF GUARD (policy① — the central design risk). Fixed host `api.fdic.gov`,
28
+ * `https` only. The path is a FIXED endpoint constant the TOOL chooses
29
+ * (`institutions` | `financials`) — NO caller value on the path. Every param
30
+ * (`filters` / `search` / `fields` / `sort_by` / `sort_order` / `limit` /
31
+ * `offset` / `format`) goes through URLSearchParams, built server-side from
32
+ * allowlisted structured inputs with escaped values. Belt-and-suspenders builder
33
+ * assertion (mirrors ckan/socrata): `new URL(url).hostname === "api.fdic.gov"`
34
+ * and `protocol === "https:"` → else invalid_input. `limit`/`offset` are bounded
35
+ * ints (no unbounded paging). `redirect:"error"` on every getJson (a future 3xx
36
+ * off `api.fdic.gov` throws rather than being silently followed off-host).
37
+ *
38
+ * ★ HONESTY DESIGN (P1–P4; ADR §4 + the v2 review) — closing the landmines:
39
+ * (A/P4) filter-FIELD names are compile-time constants behind NAMED structured
40
+ * inputs; a caller can never supply a field name, so a typo'd field can never
41
+ * reach the wire as a false genuine-empty. Belt-and-suspenders: the builder
42
+ * asserts every emitted filter field ∈ its allowlist (institutions
43
+ * {STALP,ACTIVE,CERT}; financials {CERT}); every emitted SEARCH field ∈
44
+ * {NAME,CITY}; every sortBy ∈ the per-endpoint sort allowlist (a Set.has
45
+ * recheck behind the server's Zod enum) → an unknown sort field is
46
+ * invalid_input BEFORE fetch (live: `sort_by=NOTAFIELD` + a sort_order → HTTP
47
+ * 400, so the pre-fetch guard is load-bearing).
48
+ * ★M1 (BLOCKER) — `name`/`city` route through FDIC's full-text `search` param,
49
+ * NOT `filters=NAME/CITY:"…"`. The `filters` DSL treats NAME/CITY as
50
+ * case-sensitive EXACT-keyword (live: `filters=NAME:"chase"` → total 0 — a
51
+ * confident false-empty), whereas `search=NAME:chase` is a case-insensitive
52
+ * full-text token match (live: 43) that combines cleanly with `filters` (live:
53
+ * `search=NAME:first` + `filters=STALP:VA AND ACTIVE:1` → 9). We emit BOTH
54
+ * `filters=` (STALP/ACTIVE/CERT) and `search=` (NAME/CITY) when present.
55
+ * Disclosed in `_meta.notes`.
56
+ * ★M2 (v2 fix — the search value is UNQUOTED) — the `search` term is built
57
+ * `NAME:<escaped>` (NO surrounding quotes). Quoting a single token makes FDIC
58
+ * run a `match_phrase` that COLLAPSES recall to zero for real brand-name banks
59
+ * (live: `NAME:"Axos"`→0 but `NAME:Axos`→1 — Axos Bank CERT 35546 exists), the
60
+ * exact M1 false-empty class. The value is instead backslash-escaped for the
61
+ * UNQUOTED Lucene reserved chars the char-class allows (`( ) & / -` + `\`; see
62
+ * escapeSearch) — belt-and-suspenders on the Zod-bypass path. The `search`
63
+ * param is provably non-injectable for WIDENING (default-AND token semantics —
64
+ * `OR`/`&&` never form a union; live: `NAME:zzz OR STALP:VA`→0), so no quotes
65
+ * are needed for security either.
66
+ * ★S1 — a multi-word name/city `search` value is matched PER-TOKEN by FDIC's
67
+ * full-text index (may be BROADER than a literal substring — a record sharing
68
+ * only ONE token can match; live: `search=NAME:First Community`→225 incl.
69
+ * "First State Bank"). We disclose this in `_meta.notes` whenever a name/city
70
+ * value contains a space.
71
+ * (P1) EXACT total → honest pagination: `totalAvailable = num(meta.total)`
72
+ * (stable across offset); `records = data.map(d => d.data)`; `hasMore =
73
+ * offset + returned < totalAvailable`; `nextOffset`. Via withMeta/buildMeta.
74
+ * (P2) 3-envelope drift-guard: require `meta` object AND `data` Array AND
75
+ * `typeof meta.total === "number"` → else driftError (rejects the errors[] /
76
+ * message+statusCode shapes at HTTP 200). A non-JSON 200 body (json parse
77
+ * throw) → reclassified to driftError. The ONLY honest empty = HTTP 200 +
78
+ * `meta.total:0` + `data:[]` → returned:0, totalAvailable:0, complete:true.
79
+ * Everything else THROWS — never a fake-empty.
80
+ * (P3) $thousands→USD ×1000, null-never-0: FDIC publishes ASSET/DEP/NETINC in
81
+ * $thousands; `assetUSD = num(rec.ASSET) === null ? null : num(rec.ASSET) *
82
+ * 1000` (the null-guard PRECEDES the ×1000, so an absent value stays null,
83
+ * never 0). Disclosed in `_meta.notes`. CERT/REPDTE/ACTIVE via `num`;
84
+ * NAME/CITY/STALP/ID/ESTYMD via `str`.
85
+ * (B) Returned-fields disclosure: the union of keys across `data[].data`; any
86
+ * projected field absent from ALL records (when returned > 0) →
87
+ * `_meta.fieldsUnavailable` + a note (a field FDIC silently stops returning
88
+ * surfaces instead of vanishing).
89
+ * Snapshot-freshness: `meta.index.{name,createTimestamp}` → `_meta.notes`
90
+ * ("point-in-time snapshot, not a live-this-second read"; the institutions
91
+ * and financials indexes carry DIFFERENT snapshot times).
92
+ *
93
+ * ★ A1 — provenance `source` is set INLINE in each tool's withMeta partial (like
94
+ * ckan.ts). There is NO `fdic_` branch in server.ts's synthesizeDefaultMeta (both
95
+ * tools return a MetaBundle, so that switch is never consulted — it would be dead
96
+ * code shipping blank provenance).
97
+ */
98
+ import { num } from "./coerce.js";
99
+ import { type MetaBundle } from "./meta.js";
100
+ export { num };
101
+ declare const INST_FILTER_FIELDS: ReadonlySet<string>;
102
+ declare const FIN_FILTER_FIELDS: ReadonlySet<string>;
103
+ declare const INST_SEARCH_FIELDS: ReadonlySet<string>;
104
+ /**
105
+ * ★M2 (v2 fix) — escape an UNQUOTED `search` value: backslash FIRST (so a
106
+ * pre-existing `\` becomes a literal `\\` and we never double-process the escapes
107
+ * we add), then backslash-escape the Lucene reserved chars the char-class ALLOWS
108
+ * and that are meaningful UNQUOTED — grouping `(` `)`, the boolean-forming `&`
109
+ * (`&&`), the regex delimiter `/`, and the prefix/NOT operator `-`. There are NO
110
+ * surrounding quotes: FDIC's `search` treats a quoted single token as a
111
+ * `match_phrase` that COLLAPSES recall to ZERO for real brand-name banks (live:
112
+ * `NAME:"Axos"`→0 but `NAME:Axos`→1) — the exact M1 false-empty class this design
113
+ * exists to prevent. Quotes are also gratuitous for security: the SSRF review
114
+ * proved the `search` param is non-injectable for WIDENING (default-AND token
115
+ * semantics — `OR`/`&&` never form a union; live: `NAME:zzz OR STALP:VA`→0 vs
116
+ * STALP:VA→5998), and a field-pivot needs `:`, which the Zod char-class rejects.
117
+ * So this escape is belt-and-suspenders for the Zod-bypass path (`:` and `"` are
118
+ * char-class-rejected on the validated path). Live-verified 2026-07-13 that the
119
+ * escape preserves recall (`Farmers & Merchants`→181, `First-Citizens`→85,
120
+ * `Mizuho Bank \(USA\)`→1). Exported for the direct-builder fault fixture.
121
+ */
122
+ export declare function escapeSearch(v: string): string;
123
+ /** The filter-field allowlists, exported so the fault suite can drive the
124
+ * belt-and-suspenders field-guard directly (the tool functions only ever pass
125
+ * hardcoded fields, so this defense-in-depth check is otherwise unreachable). */
126
+ export { INST_FILTER_FIELDS, FIN_FILTER_FIELDS, INST_SEARCH_FIELDS };
127
+ /** A `filters` term `FIELD:VALUE` — asserts the field ∈ its allowlist (P4). A
128
+ * NON-NUMERIC value is DOUBLE-QUOTED; a numeric value stays bare. This quoting is
129
+ * LOAD-BEARING for correctness: the FDIC `filters` DSL is Lucene-style, so a
130
+ * BAREWORD state code that collides with a boolean operator is mis-parsed. Live-
131
+ * verified 2026-07-13: `PSTALP:OR` (Oregon, unquoted) → HTTP 400 parse_exception (a
132
+ * HARD-FAIL that throws, NOT an honest empty), whereas `PSTALP:"OR"` → 4289 rows.
133
+ * OR is the only 2-letter US state code that collides with a Lucene operator, but
134
+ * quoting is EQUIVALENT for every non-operator value (live: `STALP:CA` === `STALP:"CA"`
135
+ * === 1287; `PSTALP:CA`(failures) === 265; `PSTALP:CA`(history) === 35892) so it is
136
+ * uniformly safe for all state filters and fixes all 4 FDIC tools at once (they all
137
+ * call this). Numeric fields (CERT/CHANGECODE/FAILYR/EFFYEAR/ACTIVE) stay bare — the
138
+ * values are `^\d+$` by construction and a number never collides with an operator.
139
+ * The value is escaped backslash-first then `"` (defensive — `^[A-Z]{2}$`-constrained
140
+ * state values contain neither, and no other field routes a free string through here).
141
+ * This is the `filters`-DSL path ONLY; the `search` param (searchTerm/escapeSearch)
142
+ * is a DIFFERENT surface and stays correctly UNQUOTED (C116). Exported for the
143
+ * allowlist-bypass fault fixture (§7(b)). */
144
+ export declare function filterTerm(field: string, value: string, allowed: ReadonlySet<string>): string;
145
+ /** A `search` term `FIELD:<escaped>` (M1 route for NAME/CITY) — asserts the field
146
+ * ∈ the search allowlist and M2-escapes the value UNQUOTED (see escapeSearch: NO
147
+ * surrounding quotes — quotes collapse match_phrase recall → false-empties).
148
+ * Exported for the allowlist-bypass fault fixture (§7(b)). */
149
+ export declare function searchTerm(field: string, value: string): string;
150
+ /**
151
+ * Build the institutions `filters` string (STALP/ACTIVE/CERT only — NAME/CITY go
152
+ * through `search`, M1). Terms joined with ` AND `. Returns "" when there is no
153
+ * structured filter clause. Exported for the fault fixtures.
154
+ */
155
+ export declare function buildInstFilters(inp: {
156
+ state?: string;
157
+ activeOnly?: boolean;
158
+ cert?: number;
159
+ }): string;
160
+ /**
161
+ * ★M1 + ★M2 — build the institutions `search` string (FDIC full-text; NAME/CITY
162
+ * only). Each value is char-class-validated at the server boundary, then here
163
+ * M2-escaped UNQUOTED (backslash-first; NO surrounding quotes — see escapeSearch).
164
+ * Terms joined with ` AND ` (live-verified: `search=NAME:first AND CITY:richmond`
165
+ * → both must match). Returns "" when neither is present. Exported for the M1/M2
166
+ * fault fixtures.
167
+ */
168
+ export declare function buildInstSearch(inp: {
169
+ name?: string;
170
+ city?: string;
171
+ }): string;
172
+ /** Build the financials `filters` string — the sole filter is the numeric
173
+ * `CERT:<int>` (zero string inputs → zero injection surface). */
174
+ export declare function buildFinFilters(inp: {
175
+ cert: number;
176
+ }): string;
177
+ export type FdicInstitution = {
178
+ name: string | null;
179
+ city: string | null;
180
+ state: string | null;
181
+ cert: number | null;
182
+ assetUSD: number | null;
183
+ active: number | null;
184
+ establishedDate: string | null;
185
+ id: string | null;
186
+ };
187
+ export type FdicFinancials = {
188
+ cert: number | null;
189
+ reportDate: number | null;
190
+ assetUSD: number | null;
191
+ depositsUSD: number | null;
192
+ netIncomeUSD: number | null;
193
+ id: string | null;
194
+ };
195
+ /**
196
+ * Search the FDIC-insured-institution directory (`/banks/institutions`).
197
+ * Structured inputs: `state` (STALP filter), `activeOnly` (ACTIVE filter), `cert`
198
+ * (CERT filter) → the `filters` param; `name`/`city` → the full-text `search`
199
+ * param (M1; case-insensitive token match, UNQUOTED + M2-escaped). Plus
200
+ * `limit`/`offset`/`sortBy`/`sortOrder`. Fixed field projection.
201
+ *
202
+ * HONESTY: EXACT `meta.total` → exact totalAvailable + hasMore (P1); the 3-
203
+ * envelope drift-guard makes the ONLY honest empty `200 + total:0 + data:[]`,
204
+ * everything else THROWS (P2); ASSET is $thousands → whole USD ×1000 null-never-0
205
+ * (P3); a projected field absent from all records → fieldsUnavailable (B); the
206
+ * snapshot build time is disclosed. name/city search + multi-word per-token are
207
+ * disclosed (M1/S1).
208
+ */
209
+ export declare function searchInstitutions(args: {
210
+ state?: string;
211
+ activeOnly?: boolean;
212
+ cert?: number;
213
+ name?: string;
214
+ city?: string;
215
+ limit?: number;
216
+ offset?: number;
217
+ sortBy?: string;
218
+ sortOrder?: string;
219
+ }): Promise<MetaBundle>;
220
+ /**
221
+ * Quarterly financial time-series for ONE FDIC-insured institution by `cert`
222
+ * (`/banks/financials`). The sole filter is the numeric `CERT:<int>` (zero string
223
+ * inputs → zero injection surface). `sortBy` defaults to REPDTE + `sortOrder`
224
+ * DESC → newest quarter first. Fixed field projection. Consumes the IDENTICAL
225
+ * fetch → 3-envelope guard → pagination machinery as tool 1.
226
+ *
227
+ * HONESTY: EXACT `meta.total` → exact totalAvailable + hasMore (P1; live: CERT
228
+ * 10363 → total 169, stable across offset); the 3-envelope drift-guard (P2);
229
+ * ASSET/DEP/NETINC $thousands → whole USD ×1000 null-never-0 (P3); the
230
+ * fieldsUnavailable disclosure (B); the snapshot build time is disclosed.
231
+ */
232
+ export declare function institutionFinancials(args: {
233
+ cert: number;
234
+ limit?: number;
235
+ offset?: number;
236
+ sortBy?: string;
237
+ sortOrder?: string;
238
+ }): Promise<MetaBundle>;
239
+ declare const FDIC_FAILURES_FILTER_FIELDS: ReadonlySet<string>;
240
+ export { FDIC_FAILURES_FILTER_FIELDS };
241
+ /**
242
+ * Build the failures `filters` string — EXACT-KEY terms only: `state`→`PSTALP:<s>`
243
+ * (★F1), `failYear`→`FAILYR:<year>` (emit the integer's digits — FAILYR is a
244
+ * string field but the digits filter cleanly, live-verified), `cert`→`CERT:<int>`.
245
+ * There is NO name/city term (★F2 — /failures ignores `search` and NAME/CITY only
246
+ * filter as brittle exact-uppercase foot-guns). Terms joined with ` AND `. Returns
247
+ * "" when there is no structured filter clause. Exported for the fault fixtures.
248
+ */
249
+ export declare function buildFailFilters(inp: {
250
+ state?: string;
251
+ failYear?: number;
252
+ cert?: number;
253
+ }): string;
254
+ /**
255
+ * ★F3 — normalize FDIC's `FAILDATE` (`M/D/YYYY`, e.g. `3/10/2023`) to ISO
256
+ * `YYYY-MM-DD`. Parse `^(\d{1,2})/(\d{1,2})/(\d{4})$`, then validate the calendar
257
+ * day with the EXACT 3-component Date.UTC round-trip (rejects JS's silent
258
+ * roll-overs like `2/30/2023`→Mar-02). On success → the padded ISO string
259
+ * (`normalized:true`). If the value does NOT match the pattern or fails the
260
+ * round-trip → surface the RAW upstream value UNCHANGED (`normalized:false`; NEVER
261
+ * null or fabricate a present date — the handler discloses the raw passthrough); a
262
+ * genuinely-absent value (null/undefined) → null. Live-confirmed 4115/4115 rows
263
+ * normalize (1934–2026), so the raw-passthrough branch is defensive-only. Exported
264
+ * for the fault fixtures.
265
+ */
266
+ export declare function normFailDate(raw: unknown): {
267
+ value: string | null;
268
+ normalized: boolean;
269
+ };
270
+ export type FdicFailure = {
271
+ name: string | null;
272
+ cert: number | null;
273
+ failDate: string | null;
274
+ failYear: string | null;
275
+ city: string | null;
276
+ state: string | null;
277
+ resolutionType: string | null;
278
+ resolutionFund: string | null;
279
+ estimatedLossUSD: number | null;
280
+ depositsUSD: number | null;
281
+ assetsUSD: number | null;
282
+ id: string | null;
283
+ };
284
+ /**
285
+ * Historical FDIC bank failures / assistance transactions (`/banks/failures`).
286
+ * Exact-key structured inputs: `state` (→ PSTALP filter, ★F1), `failYear` (→
287
+ * FAILYR), `cert` (→ CERT) → the `filters` param; plus `limit`/`offset`/`sortBy`/
288
+ * `sortOrder` (default FAILDATE DESC → most-recent failures first). Fixed field
289
+ * projection. NO name/city filter and NEVER a `search=` param (★F2). Consumes the
290
+ * IDENTICAL fetch → 3-envelope guard → pagination machinery as tools 1 & 2.
291
+ *
292
+ * HONESTY: EXACT `meta.total` → exact totalAvailable + hasMore (P1); the 3-
293
+ * envelope drift-guard makes the ONLY honest empty `200 + total:0 + data:[]`,
294
+ * everything else THROWS (P2); COST/QBFDEP/QBFASSET are $thousands → whole USD
295
+ * ×1000 null-never-0 (P3; genuine 0 stays 0, negative = a net recovery, absent →
296
+ * null); failDate normalized M/D/YYYY→ISO (unrecognized → raw + disclosed, never
297
+ * nulled/fabricated); a projected field absent from all records → fieldsUnavailable
298
+ * (B); the snapshot build time is disclosed.
299
+ */
300
+ export declare function bankFailures(args: {
301
+ state?: string;
302
+ failYear?: number;
303
+ cert?: number;
304
+ limit?: number;
305
+ offset?: number;
306
+ sortBy?: string;
307
+ sortOrder?: string;
308
+ }): Promise<MetaBundle>;
309
+ declare const FDIC_HISTORY_FILTER_FIELDS: ReadonlySet<string>;
310
+ export { FDIC_HISTORY_FILTER_FIELDS };
311
+ /**
312
+ * Build the history `filters` string — EXACT-KEY terms only: `cert`→`CERT:<int>`
313
+ * (the PRIMARY lookup), `changeCode`→`CHANGECODE:<int>`, `effYear`→`EFFYEAR:<year>`
314
+ * (emit the integer's digits — EFFYEAR is a string field but the digits filter
315
+ * cleanly, live-verified), `state`→`PSTALP:<state>` (★F1-analog — PSTALP, NEVER
316
+ * STALP). There is NO name/city term (★F2-analog — /history's `search` param
317
+ * returns 0 for INSTNAME; this tool never emits `search=`). Terms joined with
318
+ * ` AND `. Returns "" when there is no structured filter clause. Exported for the
319
+ * fault fixtures.
320
+ */
321
+ export declare function buildHistFilters(inp: {
322
+ cert?: number;
323
+ changeCode?: number;
324
+ effYear?: number;
325
+ state?: string;
326
+ }): string;
327
+ /**
328
+ * ★Q2 — normalize FDIC's `EFFDATE`/`PROCDATE` (`YYYY-MM-DDT00:00:00`, e.g.
329
+ * `2002-07-01T00:00:00`) to ISO `YYYY-MM-DD`. Match
330
+ * `^(\d{4})-(\d{2})-(\d{2})T00:00:00$`, extract y/m/d, then validate the calendar
331
+ * day with the EXACT 3-component Date.UTC round-trip (`getUTCFullYear/Month+1/Date`
332
+ * all match — rejects JS's silent roll-overs). On success → the ISO date
333
+ * (`normalized:true`; the month/day are already zero-padded by the `\d{2}` capture).
334
+ * If the value does NOT match the pattern or fails the round-trip → surface the RAW
335
+ * upstream value UNCHANGED (`normalized:false`; NEVER null or fabricate a present
336
+ * date — the handler discloses the raw passthrough); a genuinely-absent value
337
+ * (null/undefined/"") → str-coerced (null for absent, "" preserved). Live-confirmed
338
+ * 0/2000 nulls and 0 non-`T00:00:00` and old rows (1782 → `1782-01-01T00:00:00`)
339
+ * conform, so the raw-passthrough branch is defensive-only. The `9999-12-31T00:00:00`
340
+ * sentinel round-trips fine to `9999-12-31` (disclosed by the handler's sentinel
341
+ * note). Exported for the fault fixtures.
342
+ */
343
+ export declare function normHistDate(raw: unknown): {
344
+ value: string | null;
345
+ normalized: boolean;
346
+ };
347
+ export type FdicHistory = {
348
+ cert: number | null;
349
+ instName: string | null;
350
+ state: string | null;
351
+ changeCode: number | null;
352
+ changeDescription: string | null;
353
+ effectiveDate: string | null;
354
+ processDate: string | null;
355
+ effYear: string | null;
356
+ transNum: number | null;
357
+ acquirerCert: number | null;
358
+ acquirerName: string | null;
359
+ outgoingCert: number | null;
360
+ outgoingName: string | null;
361
+ survivingCert: number | null;
362
+ survivingName: string | null;
363
+ id: string | null;
364
+ };
365
+ /**
366
+ * Institution-level structural-change event log (`/banks/history`). Exact-key
367
+ * structured inputs: `cert` (→ CERT filter, the PRIMARY lookup), `changeCode` (→
368
+ * CHANGECODE), `effYear` (→ EFFYEAR), `state` (→ PSTALP filter, ★F1-analog) → the
369
+ * `filters` param; plus `limit`/`offset`/`sortBy`/`sortOrder` (default EFFDATE DESC
370
+ * → newest structural change first). Fixed field projection. NO name/city filter and
371
+ * NEVER a `search=` param (★F2-analog). Consumes the IDENTICAL fetch → 3-envelope
372
+ * guard → pagination machinery as tools 1–3.
373
+ *
374
+ * HONESTY: EXACT `meta.total` → exact totalAvailable + hasMore (P1; live: CERT 3510
375
+ * → total 13794, stable across offset); the 3-envelope drift-guard makes the ONLY
376
+ * honest empty `200 + total:0 + data:[]`, everything else THROWS (P2); changeDescription
377
+ * is FDIC's co-served CHANGECODE_DESC passed through verbatim (Q1, never hand-mapped);
378
+ * effectiveDate/processDate normalized YYYY-MM-DDT00:00:00→ISO (unrecognized → raw +
379
+ * disclosed, never nulled/fabricated; 9999-* sentinel disclosed) (Q2); the ACQ_/OUT_/
380
+ * SUR_ counterparty CERT-triad is null-never-0 and uses *_CERT not *_UNINUM's 0
381
+ * sentinel (Q3); a projected always-present field absent from all records →
382
+ * fieldsUnavailable (B); the snapshot build time is disclosed.
383
+ */
384
+ export declare function institutionHistory(args: {
385
+ cert?: number;
386
+ changeCode?: number;
387
+ effYear?: number;
388
+ state?: string;
389
+ limit?: number;
390
+ offset?: number;
391
+ sortBy?: string;
392
+ sortOrder?: string;
393
+ }): Promise<MetaBundle>;
394
+ declare const FDIC_SUMMARY_FILTER_FIELDS: ReadonlySet<string>;
395
+ export { FDIC_SUMMARY_FILTER_FIELDS };
396
+ /**
397
+ * ★CRUX-1 (S2) — derive the geographic SCOPE from the raw STALP, using the explicit
398
+ * roll-up set (a fixed 4-element discriminator, NOT a fragile numeric threshold).
399
+ * A non-roll-up value (incl. null / any future/unknown STALP) falls through to
400
+ * "jurisdiction" and is surfaced by the ALWAYS-projected raw STNAME/STALP/STNUM — a
401
+ * caller can always see the literal label, never a silently-mislabeled aggregate.
402
+ * Exported for the fault fixtures.
403
+ */
404
+ export declare function scopeOf(stalp: string | null): string;
405
+ /**
406
+ * ★CRUX-1b (S1) — map the raw CB_SI charter code to a readable class. An UNMAPPED
407
+ * value returns the raw code (never fabricated); a genuinely-absent (null) value stays
408
+ * null. Exported for the fault fixtures.
409
+ */
410
+ export declare function charterClassOf(code: string | null): string | null;
411
+ /**
412
+ * Build the summary `filters` string — EXACT-KEY terms only: `year`→`YEAR:<int>`
413
+ * (numeric → emitted BARE by filterTerm; a non-int is guarded pre-fetch by Zod .int()),
414
+ * `state`→`STALP:"<code>"` (★S2 — STALP is the /summary state field, NOT PSTALP;
415
+ * C118-double-quoted so Oregon `STALP:"OR"` is Lucene-operator-safe), `charterClass`
416
+ * →`CB_SI:"<v>"` (quoted). There is NO name/city term (★/summary's `search` is a no-op
417
+ * that returns the whole year — this tool never emits `search=`). Terms joined with
418
+ * ` AND `. Returns "" when there is no structured filter clause. Exported for the fault
419
+ * fixtures.
420
+ */
421
+ export declare function buildSummaryFilters(inp: {
422
+ year?: number;
423
+ state?: string;
424
+ charterClass?: string;
425
+ }): string;
426
+ export type FdicIndustrySummary = {
427
+ year: number | null;
428
+ charterClass: string | null;
429
+ charterClassCode: string | null;
430
+ geography: string | null;
431
+ stateCode: string | null;
432
+ stateFips: string | null;
433
+ scope: string;
434
+ isRollup: boolean;
435
+ institutionCount: number | null;
436
+ officeCount: number | null;
437
+ branchCount: number | null;
438
+ employeeCount: number | null;
439
+ totalAssetsUSD: number | null;
440
+ totalDepositsUSD: number | null;
441
+ netIncomeUSD: number | null;
442
+ totalEquityUSD: number | null;
443
+ netInterestIncomeUSD: number | null;
444
+ id: string | null;
445
+ };
446
+ /**
447
+ * FDIC industry & state banking-sector ANNUAL aggregates (`/banks/summary`) — the
448
+ * FIRST aggregate/statistical FDIC tool. Exact-key structured inputs (all optional,
449
+ * AND-combined): `year` (→ YEAR filter), `state` (→ STALP filter, ★S2 — STALP NOT
450
+ * PSTALP; accepts a jurisdiction code OR a roll-up code USA/US/OT/PI), `charterClass`
451
+ * (→ CB_SI filter; CB/SI) → the `filters` param; plus `limit`/`offset`/`sortBy`/
452
+ * `sortOrder` (default YEAR DESC → newest aggregate year first). Fixed field
453
+ * projection. NO name/city filter and NEVER a `search=` param. Consumes the IDENTICAL
454
+ * fetch → 3-envelope guard → pagination machinery as tools 1–4.
455
+ *
456
+ * HONESTY: EXACT `meta.total` → exact totalAvailable + hasMore (P1; live YEAR:2023 →
457
+ * 121, stable across offset); the 3-envelope drift-guard makes the ONLY honest empty
458
+ * `200 + total:0 + data:[]`, everything else THROWS (P2); money (ASSET/DEP/NETINC/EQ/
459
+ * NIM) is $thousands → whole USD ×1000 null-never-0, counts (BANKS/OFFICES/BRANCHES/
460
+ * NUMEMP) pass through un-scaled (P3; a genuine 0 stays 0, absent → null); ★NIM is net
461
+ * interest INCOME (scaled + relabeled netInterestIncomeUSD), NOT the margin ratio (S4);
462
+ * ★scope/isRollup are derived per row from the explicit roll-up STALP set so a roll-up
463
+ * never masquerades as a state (S2); charterClass is derived from CB_SI (S1); a
464
+ * projected field absent from all records → fieldsUnavailable (B); the snapshot build
465
+ * time is disclosed.
466
+ */
467
+ export declare function industrySummary(args: {
468
+ year?: number;
469
+ state?: string;
470
+ charterClass?: string;
471
+ limit?: number;
472
+ offset?: number;
473
+ sortBy?: string;
474
+ sortOrder?: string;
475
+ }): Promise<MetaBundle>;
476
+ type RatioUnit = "percent" | "usd-thousands";
477
+ type RatioNotReported = "null" | "zero-sentinel-when-CBLR";
478
+ type RatioEntry = {
479
+ code: string;
480
+ outputKey: string;
481
+ label: string;
482
+ unit: RatioUnit;
483
+ notReported: RatioNotReported;
484
+ };
485
+ declare const RATIO_CATALOG: readonly RatioEntry[];
486
+ export { RATIO_CATALOG };
487
+ declare const RATIO_FILTER_FIELDS: ReadonlySet<string>;
488
+ export { RATIO_FILTER_FIELDS };
489
+ /**
490
+ * Build the risk-ratio `filters` string — `cert`→`CERT:<int>` (REQUIRED, numeric →
491
+ * bare) + optional `reportDate`→`REPDTE:<int>` (numeric → bare, a YYYYMMDD quarter-end).
492
+ * Both fields are on RATIO_FILTER_FIELDS (NOT FIN_FILTER_FIELDS, which is {CERT} and
493
+ * would throw on REPDTE — S1). Terms joined with ` AND `. Exported for the fault fixtures.
494
+ */
495
+ export declare function buildRatioFilters(inp: {
496
+ cert: number;
497
+ reportDate?: number;
498
+ }): string;
499
+ /**
500
+ * ★M1 — detect the Community Bank Leverage Ratio framework via FDIC's OWN `CBLRIND`
501
+ * flag (CBLRIND===1). A CBLR filer does NOT report risk-based capital ratios: FDIC
502
+ * returns RBCRWAJ as a LITERAL 0 sentinel (not null) and RBC1RWAJ as null. Detection is
503
+ * strictly the flag — NO derived/recomputed ratio, NO blanket 0→null. Exported for the
504
+ * fault fixture. (num maps a string/number/null CBLRIND consistently; an absent CBLRIND
505
+ * → null → not CBLR → the ratios pass through verbatim.)
506
+ */
507
+ export declare function isCblrFramework(rec: Record<string, unknown>): boolean;
508
+ export type FdicRiskRatios = {
509
+ cert: number | null;
510
+ reportDate: number | null;
511
+ cblrFramework: boolean;
512
+ returnOnAssetsPct: number | null;
513
+ preTaxReturnOnAssetsPct: number | null;
514
+ returnOnEquityPct: number | null;
515
+ netInterestMarginPct: number | null;
516
+ efficiencyRatioPct: number | null;
517
+ netChargeOffsToLoansPct: number | null;
518
+ leverageRatioPct: number | null;
519
+ tier1RiskBasedCapitalRatioPct: number | null;
520
+ totalRiskBasedCapitalRatioPct: number | null;
521
+ tier1CapitalUSD: number | null;
522
+ id: string | null;
523
+ };
524
+ /**
525
+ * FDIC counterparty RISK RATIOS for ONE institution by `cert` (`/banks/financials` —
526
+ * the ALREADY-wired endpoint; NO new endpoint constant). Structured inputs: `cert`
527
+ * (REQUIRED → CERT), optional `reportDate` (→ REPDTE, a YYYYMMDD quarter-end), plus
528
+ * `limit`/`offset`/`sortBy` (allowlist {REPDTE,ROA,ROE,RBCRWAJ,EEFFR}, default REPDTE)/
529
+ * `sortOrder` (default DESC → newest quarter first). Consumes the IDENTICAL fetch →
530
+ * 3-envelope guard → pagination machinery as tools 1–5.
531
+ *
532
+ * HONESTY: EXACT `meta.total` → exact totalAvailable + hasMore (P1); the 3-envelope
533
+ * drift-guard makes the ONLY honest empty `200 + total:0 + data:[]`, everything else
534
+ * THROWS (P2); ★P3 percent ratios surfaced VERBATIM via num (null-never-0, NO scale, NO
535
+ * recompute), the ONE $-amount (RBCT1J) via thousandsToUsd → tier1CapitalUSD; ★M1 the
536
+ * CBLR risk-based capital ratios map to null (never the 0 sentinel) with a per-row
537
+ * cblrFramework flag; a projected field absent from all records → fieldsUnavailable (B);
538
+ * the snapshot build time is disclosed.
539
+ */
540
+ export declare function riskRatios(args: {
541
+ cert: number;
542
+ reportDate?: number;
543
+ limit?: number;
544
+ offset?: number;
545
+ sortBy?: string;
546
+ sortOrder?: string;
547
+ }): Promise<MetaBundle>;
548
+ declare const SOD_FILTER_FIELDS: ReadonlySet<string>;
549
+ export { SOD_FILTER_FIELDS };
550
+ /**
551
+ * Build the /sod `filters` string — `cert`→`CERT:<int>` (numeric → bare), `state`→
552
+ * `STALPBR:"<code>"` (★C118 non-numeric → DOUBLE-QUOTED; Oregon `STALPBR:"OR"` is
553
+ * operator-safe), `year`→`YEAR:<int>` (numeric → bare). All fields on SOD_FILTER_FIELDS
554
+ * (★S1). Terms joined with ` AND `. Returns "" when there is no structured filter clause.
555
+ * Exported for the fault fixtures.
556
+ */
557
+ export declare function buildSodFilters(inp: {
558
+ cert?: number;
559
+ state?: string;
560
+ year?: number;
561
+ }): string;
562
+ export type FdicBranchDeposit = {
563
+ cert: number | null;
564
+ institutionName: string | null;
565
+ branchNumber: number | null;
566
+ branchName: string | null;
567
+ city: string | null;
568
+ state: string | null;
569
+ zip: string | null;
570
+ address: string | null;
571
+ depositsUSD: number | null;
572
+ year: number | null;
573
+ id: string | null;
574
+ };
575
+ /**
576
+ * FDIC branch-deposit footprint (`/banks/sod`, Summary of Deposits). Structured inputs
577
+ * (all optional, AND-combined; ≥1 recommended): `cert` (→ CERT), `state` (→ STALPBR,
578
+ * ★C118-quoted), `year` (→ YEAR), plus `limit`/`offset`/`sortBy` (allowlist
579
+ * {YEAR,DEPSUMBR}, default YEAR)/`sortOrder` (default DESC → newest snapshot first).
580
+ * Consumes the IDENTICAL fetch → 3-envelope guard → pagination machinery as tools 1–6.
581
+ *
582
+ * HONESTY: EXACT `meta.total` → exact totalAvailable + hasMore (P1; live: CERT 10004 →
583
+ * 74, STALPBR:"OR" → 31093); the 3-envelope drift-guard makes the ONLY honest empty
584
+ * `200 + total:0 + data:[]`, everything else THROWS (P2); ★the /sod false-empty landmine
585
+ * (a bad filter field → silent total:0) is neutralized by the S1 allowlist-by-
586
+ * construction; DEPSUMBR is $thousands → whole USD ×1000 null-never-0 (P3; a genuine 0
587
+ * stays 0, absent → null); a projected field absent from all records → fieldsUnavailable
588
+ * (B); the DISTINCT annual snapshot build time is disclosed.
589
+ */
590
+ export declare function branchDeposits(args: {
591
+ cert?: number;
592
+ state?: string;
593
+ year?: number;
594
+ limit?: number;
595
+ offset?: number;
596
+ sortBy?: string;
597
+ sortOrder?: string;
598
+ }): Promise<MetaBundle>;
599
+ //# sourceMappingURL=fdic.d.ts.map