@empressaio/atom-contract 1.12.0 → 1.14.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 (34) hide show
  1. package/CHANGELOG.md +80 -0
  2. package/README.md +7 -1
  3. package/dist/conformance/common.d.ts +1 -1
  4. package/dist/conformance/common.js +1 -1
  5. package/dist/property/cad-parcel-roll.d.ts +710 -0
  6. package/dist/property/cad-parcel-roll.d.ts.map +1 -0
  7. package/dist/property/cad-parcel-roll.js +147 -0
  8. package/dist/property/cad-parcel-roll.js.map +1 -0
  9. package/dist/property/common.d.ts +131 -0
  10. package/dist/property/common.d.ts.map +1 -1
  11. package/dist/property/common.js +92 -0
  12. package/dist/property/common.js.map +1 -1
  13. package/dist/property/fixtures.d.ts +324 -0
  14. package/dist/property/fixtures.d.ts.map +1 -1
  15. package/dist/property/fixtures.js +621 -0
  16. package/dist/property/fixtures.js.map +1 -1
  17. package/dist/property/flood-hazard-fact.d.ts +610 -0
  18. package/dist/property/flood-hazard-fact.d.ts.map +1 -0
  19. package/dist/property/flood-hazard-fact.js +102 -0
  20. package/dist/property/flood-hazard-fact.js.map +1 -0
  21. package/dist/property/index.d.ts +4 -0
  22. package/dist/property/index.d.ts.map +1 -1
  23. package/dist/property/index.js +4 -0
  24. package/dist/property/index.js.map +1 -1
  25. package/dist/property/land-use-fact.d.ts +602 -0
  26. package/dist/property/land-use-fact.d.ts.map +1 -0
  27. package/dist/property/land-use-fact.js +87 -0
  28. package/dist/property/land-use-fact.js.map +1 -0
  29. package/dist/property/parcel-node.d.ts +710 -0
  30. package/dist/property/parcel-node.d.ts.map +1 -0
  31. package/dist/property/parcel-node.js +156 -0
  32. package/dist/property/parcel-node.js.map +1 -0
  33. package/dist/property/road-node.d.ts +2 -2
  34. package/package.json +1 -1
@@ -0,0 +1,610 @@
1
+ import { z } from "zod";
2
+ import type { AccessPolicy } from "../registration.js";
3
+ import type { AtomTier } from "../conformance/common.js";
4
+ import type { ReasoningChain } from "../reasoning-chain.js";
5
+ import type { ReasoningReadContract } from "../read-contract/reasoning-axes.js";
6
+ import { type FloodHazardAbsence, type FloodHazardSourceTier, type SiteLayerVerifiedAbsence } from "./common.js";
7
+ /**
8
+ * Flood hazard FACT atom — FEMA NFHL SFHA finding or honest absence.
9
+ *
10
+ * Outside-mapped parcels are PRESENT with `inSpecialFloodHazardArea: false`
11
+ * (Zone X by omission), not typed absence. Absence is for off-coverage / no
12
+ * geocode only (`no-flood-coverage`).
13
+ */
14
+ export interface FloodHazardFactAtomInstance {
15
+ entityType: "flood-hazard-fact";
16
+ atomDid: string;
17
+ parcelNodeId: string;
18
+ reasoningChain: Extract<ReasoningChain, {
19
+ reasoningKind: "observed";
20
+ }>;
21
+ sourceTier: FloodHazardSourceTier;
22
+ /** Required when sourceTier is fema-nfhl and no absence. */
23
+ inSpecialFloodHazardArea?: boolean;
24
+ floodZone?: string | null;
25
+ zoneSubtype?: string | null;
26
+ baseFloodElevation?: number | null;
27
+ absence?: FloodHazardAbsence;
28
+ verifiedAbsence?: SiteLayerVerifiedAbsence;
29
+ accessPolicy: AccessPolicy;
30
+ sourceCitation: string;
31
+ extractedAt: string;
32
+ asOf?: string;
33
+ sourceVintage?: string;
34
+ verificationStatus: "machine" | "human" | "unsurveyed";
35
+ sourceAdapter: string;
36
+ evaluatedAt: string;
37
+ atomTier: AtomTier;
38
+ readContract?: ReasoningReadContract;
39
+ }
40
+ export declare const FLOOD_HAZARD_FACT_SCHEMA: z.ZodEffects<z.ZodObject<{
41
+ atomTier: z.ZodLiteral<AtomTier>;
42
+ readContract: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
43
+ axes: z.ZodReadonly<z.ZodObject<{
44
+ calibratedConfidence: z.ZodReadonly<z.ZodObject<{
45
+ readonly estimate: z.ZodNumber;
46
+ readonly n: z.ZodNumber;
47
+ readonly intervalWidth: z.ZodNumber;
48
+ readonly provenance: z.ZodEnum<["asserted", "backtest", "seed", "live"]>;
49
+ }, "strip", z.ZodTypeAny, {
50
+ estimate: number;
51
+ n: number;
52
+ intervalWidth: number;
53
+ provenance: "asserted" | "backtest" | "seed" | "live";
54
+ }, {
55
+ estimate: number;
56
+ n: number;
57
+ intervalWidth: number;
58
+ provenance: "asserted" | "backtest" | "seed" | "live";
59
+ }>>;
60
+ assertedConfidence: z.ZodReadonly<z.ZodObject<{
61
+ readonly estimate: z.ZodNumber;
62
+ readonly n: z.ZodNumber;
63
+ readonly intervalWidth: z.ZodNumber;
64
+ readonly provenance: z.ZodEnum<["asserted", "backtest", "seed", "live"]>;
65
+ }, "strip", z.ZodTypeAny, {
66
+ estimate: number;
67
+ n: number;
68
+ intervalWidth: number;
69
+ provenance: "asserted" | "backtest" | "seed" | "live";
70
+ }, {
71
+ estimate: number;
72
+ n: number;
73
+ intervalWidth: number;
74
+ provenance: "asserted" | "backtest" | "seed" | "live";
75
+ }>>;
76
+ consequence: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
77
+ kind: z.ZodLiteral<"property-risk">;
78
+ stratum: z.ZodEnum<[import("../read-contract/reasoning-axes.js").PropertyRiskStratum, ...import("../read-contract/reasoning-axes.js").PropertyRiskStratum[]]>;
79
+ basis: z.ZodString;
80
+ assertedAt: z.ZodString;
81
+ auditRef: z.ZodOptional<z.ZodString>;
82
+ }, "strip", z.ZodTypeAny, {
83
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
84
+ assertedAt: string;
85
+ kind: "property-risk";
86
+ basis: string;
87
+ auditRef?: string | undefined;
88
+ }, {
89
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
90
+ assertedAt: string;
91
+ kind: "property-risk";
92
+ basis: string;
93
+ auditRef?: string | undefined;
94
+ }>, z.ZodObject<{
95
+ kind: z.ZodLiteral<"not-applicable">;
96
+ reason: z.ZodString;
97
+ assertedAt: z.ZodString;
98
+ }, "strip", z.ZodTypeAny, {
99
+ assertedAt: string;
100
+ kind: "not-applicable";
101
+ reason: string;
102
+ }, {
103
+ assertedAt: string;
104
+ kind: "not-applicable";
105
+ reason: string;
106
+ }>]>;
107
+ }, "strip", z.ZodTypeAny, {
108
+ calibratedConfidence: Readonly<{
109
+ estimate: number;
110
+ n: number;
111
+ intervalWidth: number;
112
+ provenance: "asserted" | "backtest" | "seed" | "live";
113
+ }>;
114
+ assertedConfidence: Readonly<{
115
+ estimate: number;
116
+ n: number;
117
+ intervalWidth: number;
118
+ provenance: "asserted" | "backtest" | "seed" | "live";
119
+ }>;
120
+ consequence: {
121
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
122
+ assertedAt: string;
123
+ kind: "property-risk";
124
+ basis: string;
125
+ auditRef?: string | undefined;
126
+ } | {
127
+ assertedAt: string;
128
+ kind: "not-applicable";
129
+ reason: string;
130
+ };
131
+ }, {
132
+ calibratedConfidence: Readonly<{
133
+ estimate: number;
134
+ n: number;
135
+ intervalWidth: number;
136
+ provenance: "asserted" | "backtest" | "seed" | "live";
137
+ }>;
138
+ assertedConfidence: Readonly<{
139
+ estimate: number;
140
+ n: number;
141
+ intervalWidth: number;
142
+ provenance: "asserted" | "backtest" | "seed" | "live";
143
+ }>;
144
+ consequence: {
145
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
146
+ assertedAt: string;
147
+ kind: "property-risk";
148
+ basis: string;
149
+ auditRef?: string | undefined;
150
+ } | {
151
+ assertedAt: string;
152
+ kind: "not-applicable";
153
+ reason: string;
154
+ };
155
+ }>>;
156
+ assembledAt: z.ZodString;
157
+ modelAttribution: z.ZodOptional<z.ZodReadonly<z.ZodObject<{
158
+ modelId: z.ZodString;
159
+ modelVersion: z.ZodString;
160
+ promptTemplateVersion: z.ZodString;
161
+ contextTemplateVersion: z.ZodString;
162
+ samplingParams: z.ZodReadonly<z.ZodObject<{
163
+ temperature: z.ZodOptional<z.ZodNumber>;
164
+ topP: z.ZodOptional<z.ZodNumber>;
165
+ maxTokens: z.ZodOptional<z.ZodNumber>;
166
+ seed: z.ZodOptional<z.ZodNumber>;
167
+ }, "strip", z.ZodUnknown, z.objectOutputType<{
168
+ temperature: z.ZodOptional<z.ZodNumber>;
169
+ topP: z.ZodOptional<z.ZodNumber>;
170
+ maxTokens: z.ZodOptional<z.ZodNumber>;
171
+ seed: z.ZodOptional<z.ZodNumber>;
172
+ }, z.ZodUnknown, "strip">, z.objectInputType<{
173
+ temperature: z.ZodOptional<z.ZodNumber>;
174
+ topP: z.ZodOptional<z.ZodNumber>;
175
+ maxTokens: z.ZodOptional<z.ZodNumber>;
176
+ seed: z.ZodOptional<z.ZodNumber>;
177
+ }, z.ZodUnknown, "strip">>>;
178
+ retrievedAtomSetId: z.ZodString;
179
+ }, "strip", z.ZodTypeAny, {
180
+ modelId: string;
181
+ modelVersion: string;
182
+ promptTemplateVersion: string;
183
+ contextTemplateVersion: string;
184
+ samplingParams: Readonly<z.objectOutputType<{
185
+ temperature: z.ZodOptional<z.ZodNumber>;
186
+ topP: z.ZodOptional<z.ZodNumber>;
187
+ maxTokens: z.ZodOptional<z.ZodNumber>;
188
+ seed: z.ZodOptional<z.ZodNumber>;
189
+ }, z.ZodUnknown, "strip">>;
190
+ retrievedAtomSetId: string;
191
+ }, {
192
+ modelId: string;
193
+ modelVersion: string;
194
+ promptTemplateVersion: string;
195
+ contextTemplateVersion: string;
196
+ samplingParams: Readonly<z.objectInputType<{
197
+ temperature: z.ZodOptional<z.ZodNumber>;
198
+ topP: z.ZodOptional<z.ZodNumber>;
199
+ maxTokens: z.ZodOptional<z.ZodNumber>;
200
+ seed: z.ZodOptional<z.ZodNumber>;
201
+ }, z.ZodUnknown, "strip">>;
202
+ retrievedAtomSetId: string;
203
+ }>>>;
204
+ }, "strip", z.ZodTypeAny, {
205
+ axes: Readonly<{
206
+ calibratedConfidence: Readonly<{
207
+ estimate: number;
208
+ n: number;
209
+ intervalWidth: number;
210
+ provenance: "asserted" | "backtest" | "seed" | "live";
211
+ }>;
212
+ assertedConfidence: Readonly<{
213
+ estimate: number;
214
+ n: number;
215
+ intervalWidth: number;
216
+ provenance: "asserted" | "backtest" | "seed" | "live";
217
+ }>;
218
+ consequence: {
219
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
220
+ assertedAt: string;
221
+ kind: "property-risk";
222
+ basis: string;
223
+ auditRef?: string | undefined;
224
+ } | {
225
+ assertedAt: string;
226
+ kind: "not-applicable";
227
+ reason: string;
228
+ };
229
+ }>;
230
+ assembledAt: string;
231
+ modelAttribution?: Readonly<{
232
+ modelId: string;
233
+ modelVersion: string;
234
+ promptTemplateVersion: string;
235
+ contextTemplateVersion: string;
236
+ samplingParams: Readonly<z.objectOutputType<{
237
+ temperature: z.ZodOptional<z.ZodNumber>;
238
+ topP: z.ZodOptional<z.ZodNumber>;
239
+ maxTokens: z.ZodOptional<z.ZodNumber>;
240
+ seed: z.ZodOptional<z.ZodNumber>;
241
+ }, z.ZodUnknown, "strip">>;
242
+ retrievedAtomSetId: string;
243
+ }> | undefined;
244
+ }, {
245
+ axes: Readonly<{
246
+ calibratedConfidence: Readonly<{
247
+ estimate: number;
248
+ n: number;
249
+ intervalWidth: number;
250
+ provenance: "asserted" | "backtest" | "seed" | "live";
251
+ }>;
252
+ assertedConfidence: Readonly<{
253
+ estimate: number;
254
+ n: number;
255
+ intervalWidth: number;
256
+ provenance: "asserted" | "backtest" | "seed" | "live";
257
+ }>;
258
+ consequence: {
259
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
260
+ assertedAt: string;
261
+ kind: "property-risk";
262
+ basis: string;
263
+ auditRef?: string | undefined;
264
+ } | {
265
+ assertedAt: string;
266
+ kind: "not-applicable";
267
+ reason: string;
268
+ };
269
+ }>;
270
+ assembledAt: string;
271
+ modelAttribution?: Readonly<{
272
+ modelId: string;
273
+ modelVersion: string;
274
+ promptTemplateVersion: string;
275
+ contextTemplateVersion: string;
276
+ samplingParams: Readonly<z.objectInputType<{
277
+ temperature: z.ZodOptional<z.ZodNumber>;
278
+ topP: z.ZodOptional<z.ZodNumber>;
279
+ maxTokens: z.ZodOptional<z.ZodNumber>;
280
+ seed: z.ZodOptional<z.ZodNumber>;
281
+ }, z.ZodUnknown, "strip">>;
282
+ retrievedAtomSetId: string;
283
+ }> | undefined;
284
+ }>>>;
285
+ sourceVintage: z.ZodOptional<z.ZodString>;
286
+ verificationStatus: z.ZodEnum<["machine", "human", "unsurveyed"]>;
287
+ sourceAdapter: z.ZodString;
288
+ evaluatedAt: z.ZodString;
289
+ sourceCitation: z.ZodString;
290
+ extractedAt: z.ZodString;
291
+ asOf: z.ZodOptional<z.ZodString>;
292
+ entityType: z.ZodLiteral<"flood-hazard-fact">;
293
+ atomDid: z.ZodEffects<z.ZodString, string, string>;
294
+ parcelNodeId: z.ZodEffects<z.ZodString, string, string>;
295
+ reasoningChain: z.ZodObject<{
296
+ reasoningKind: z.ZodLiteral<"observed">;
297
+ }, "strip", z.ZodTypeAny, {
298
+ reasoningKind: "observed";
299
+ }, {
300
+ reasoningKind: "observed";
301
+ }>;
302
+ sourceTier: z.ZodEnum<["fema-nfhl", "absent"]>;
303
+ inSpecialFloodHazardArea: z.ZodOptional<z.ZodBoolean>;
304
+ floodZone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
305
+ zoneSubtype: z.ZodOptional<z.ZodNullable<z.ZodString>>;
306
+ baseFloodElevation: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
307
+ absence: z.ZodOptional<z.ZodObject<{
308
+ kind: z.ZodLiteral<"no-flood-coverage">;
309
+ reason: z.ZodString;
310
+ }, "strict", z.ZodTypeAny, {
311
+ kind: "no-flood-coverage";
312
+ reason: string;
313
+ }, {
314
+ kind: "no-flood-coverage";
315
+ reason: string;
316
+ }>>;
317
+ verifiedAbsence: z.ZodOptional<z.ZodObject<{
318
+ evaluated: z.ZodLiteral<true>;
319
+ provenanceScope: z.ZodArray<z.ZodString, "many">;
320
+ }, "strict", z.ZodTypeAny, {
321
+ evaluated: true;
322
+ provenanceScope: string[];
323
+ }, {
324
+ evaluated: true;
325
+ provenanceScope: string[];
326
+ }>>;
327
+ accessPolicy: z.ZodEnum<["public-free", "public-paid", "platform-internal", "tenant-private", "tenant-shared"]>;
328
+ }, "strip", z.ZodTypeAny, {
329
+ accessPolicy: "public-free" | "public-paid" | "platform-internal" | "tenant-private" | "tenant-shared";
330
+ entityType: "flood-hazard-fact";
331
+ sourceCitation: string;
332
+ extractedAt: string;
333
+ atomDid: string;
334
+ evaluatedAt: string;
335
+ verificationStatus: "machine" | "human" | "unsurveyed";
336
+ sourceAdapter: string;
337
+ parcelNodeId: string;
338
+ reasoningChain: {
339
+ reasoningKind: "observed";
340
+ };
341
+ atomTier: AtomTier;
342
+ sourceTier: "absent" | "fema-nfhl";
343
+ asOf?: string | undefined;
344
+ readContract?: Readonly<{
345
+ axes: Readonly<{
346
+ calibratedConfidence: Readonly<{
347
+ estimate: number;
348
+ n: number;
349
+ intervalWidth: number;
350
+ provenance: "asserted" | "backtest" | "seed" | "live";
351
+ }>;
352
+ assertedConfidence: Readonly<{
353
+ estimate: number;
354
+ n: number;
355
+ intervalWidth: number;
356
+ provenance: "asserted" | "backtest" | "seed" | "live";
357
+ }>;
358
+ consequence: {
359
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
360
+ assertedAt: string;
361
+ kind: "property-risk";
362
+ basis: string;
363
+ auditRef?: string | undefined;
364
+ } | {
365
+ assertedAt: string;
366
+ kind: "not-applicable";
367
+ reason: string;
368
+ };
369
+ }>;
370
+ assembledAt: string;
371
+ modelAttribution?: Readonly<{
372
+ modelId: string;
373
+ modelVersion: string;
374
+ promptTemplateVersion: string;
375
+ contextTemplateVersion: string;
376
+ samplingParams: Readonly<z.objectOutputType<{
377
+ temperature: z.ZodOptional<z.ZodNumber>;
378
+ topP: z.ZodOptional<z.ZodNumber>;
379
+ maxTokens: z.ZodOptional<z.ZodNumber>;
380
+ seed: z.ZodOptional<z.ZodNumber>;
381
+ }, z.ZodUnknown, "strip">>;
382
+ retrievedAtomSetId: string;
383
+ }> | undefined;
384
+ }> | undefined;
385
+ absence?: {
386
+ kind: "no-flood-coverage";
387
+ reason: string;
388
+ } | undefined;
389
+ verifiedAbsence?: {
390
+ evaluated: true;
391
+ provenanceScope: string[];
392
+ } | undefined;
393
+ sourceVintage?: string | undefined;
394
+ inSpecialFloodHazardArea?: boolean | undefined;
395
+ floodZone?: string | null | undefined;
396
+ zoneSubtype?: string | null | undefined;
397
+ baseFloodElevation?: number | null | undefined;
398
+ }, {
399
+ accessPolicy: "public-free" | "public-paid" | "platform-internal" | "tenant-private" | "tenant-shared";
400
+ entityType: "flood-hazard-fact";
401
+ sourceCitation: string;
402
+ extractedAt: string;
403
+ atomDid: string;
404
+ evaluatedAt: string;
405
+ verificationStatus: "machine" | "human" | "unsurveyed";
406
+ sourceAdapter: string;
407
+ parcelNodeId: string;
408
+ reasoningChain: {
409
+ reasoningKind: "observed";
410
+ };
411
+ atomTier: AtomTier;
412
+ sourceTier: "absent" | "fema-nfhl";
413
+ asOf?: string | undefined;
414
+ readContract?: Readonly<{
415
+ axes: Readonly<{
416
+ calibratedConfidence: Readonly<{
417
+ estimate: number;
418
+ n: number;
419
+ intervalWidth: number;
420
+ provenance: "asserted" | "backtest" | "seed" | "live";
421
+ }>;
422
+ assertedConfidence: Readonly<{
423
+ estimate: number;
424
+ n: number;
425
+ intervalWidth: number;
426
+ provenance: "asserted" | "backtest" | "seed" | "live";
427
+ }>;
428
+ consequence: {
429
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
430
+ assertedAt: string;
431
+ kind: "property-risk";
432
+ basis: string;
433
+ auditRef?: string | undefined;
434
+ } | {
435
+ assertedAt: string;
436
+ kind: "not-applicable";
437
+ reason: string;
438
+ };
439
+ }>;
440
+ assembledAt: string;
441
+ modelAttribution?: Readonly<{
442
+ modelId: string;
443
+ modelVersion: string;
444
+ promptTemplateVersion: string;
445
+ contextTemplateVersion: string;
446
+ samplingParams: Readonly<z.objectInputType<{
447
+ temperature: z.ZodOptional<z.ZodNumber>;
448
+ topP: z.ZodOptional<z.ZodNumber>;
449
+ maxTokens: z.ZodOptional<z.ZodNumber>;
450
+ seed: z.ZodOptional<z.ZodNumber>;
451
+ }, z.ZodUnknown, "strip">>;
452
+ retrievedAtomSetId: string;
453
+ }> | undefined;
454
+ }> | undefined;
455
+ absence?: {
456
+ kind: "no-flood-coverage";
457
+ reason: string;
458
+ } | undefined;
459
+ verifiedAbsence?: {
460
+ evaluated: true;
461
+ provenanceScope: string[];
462
+ } | undefined;
463
+ sourceVintage?: string | undefined;
464
+ inSpecialFloodHazardArea?: boolean | undefined;
465
+ floodZone?: string | null | undefined;
466
+ zoneSubtype?: string | null | undefined;
467
+ baseFloodElevation?: number | null | undefined;
468
+ }>, {
469
+ accessPolicy: "public-free" | "public-paid" | "platform-internal" | "tenant-private" | "tenant-shared";
470
+ entityType: "flood-hazard-fact";
471
+ sourceCitation: string;
472
+ extractedAt: string;
473
+ atomDid: string;
474
+ evaluatedAt: string;
475
+ verificationStatus: "machine" | "human" | "unsurveyed";
476
+ sourceAdapter: string;
477
+ parcelNodeId: string;
478
+ reasoningChain: {
479
+ reasoningKind: "observed";
480
+ };
481
+ atomTier: AtomTier;
482
+ sourceTier: "absent" | "fema-nfhl";
483
+ asOf?: string | undefined;
484
+ readContract?: Readonly<{
485
+ axes: Readonly<{
486
+ calibratedConfidence: Readonly<{
487
+ estimate: number;
488
+ n: number;
489
+ intervalWidth: number;
490
+ provenance: "asserted" | "backtest" | "seed" | "live";
491
+ }>;
492
+ assertedConfidence: Readonly<{
493
+ estimate: number;
494
+ n: number;
495
+ intervalWidth: number;
496
+ provenance: "asserted" | "backtest" | "seed" | "live";
497
+ }>;
498
+ consequence: {
499
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
500
+ assertedAt: string;
501
+ kind: "property-risk";
502
+ basis: string;
503
+ auditRef?: string | undefined;
504
+ } | {
505
+ assertedAt: string;
506
+ kind: "not-applicable";
507
+ reason: string;
508
+ };
509
+ }>;
510
+ assembledAt: string;
511
+ modelAttribution?: Readonly<{
512
+ modelId: string;
513
+ modelVersion: string;
514
+ promptTemplateVersion: string;
515
+ contextTemplateVersion: string;
516
+ samplingParams: Readonly<z.objectOutputType<{
517
+ temperature: z.ZodOptional<z.ZodNumber>;
518
+ topP: z.ZodOptional<z.ZodNumber>;
519
+ maxTokens: z.ZodOptional<z.ZodNumber>;
520
+ seed: z.ZodOptional<z.ZodNumber>;
521
+ }, z.ZodUnknown, "strip">>;
522
+ retrievedAtomSetId: string;
523
+ }> | undefined;
524
+ }> | undefined;
525
+ absence?: {
526
+ kind: "no-flood-coverage";
527
+ reason: string;
528
+ } | undefined;
529
+ verifiedAbsence?: {
530
+ evaluated: true;
531
+ provenanceScope: string[];
532
+ } | undefined;
533
+ sourceVintage?: string | undefined;
534
+ inSpecialFloodHazardArea?: boolean | undefined;
535
+ floodZone?: string | null | undefined;
536
+ zoneSubtype?: string | null | undefined;
537
+ baseFloodElevation?: number | null | undefined;
538
+ }, {
539
+ accessPolicy: "public-free" | "public-paid" | "platform-internal" | "tenant-private" | "tenant-shared";
540
+ entityType: "flood-hazard-fact";
541
+ sourceCitation: string;
542
+ extractedAt: string;
543
+ atomDid: string;
544
+ evaluatedAt: string;
545
+ verificationStatus: "machine" | "human" | "unsurveyed";
546
+ sourceAdapter: string;
547
+ parcelNodeId: string;
548
+ reasoningChain: {
549
+ reasoningKind: "observed";
550
+ };
551
+ atomTier: AtomTier;
552
+ sourceTier: "absent" | "fema-nfhl";
553
+ asOf?: string | undefined;
554
+ readContract?: Readonly<{
555
+ axes: Readonly<{
556
+ calibratedConfidence: Readonly<{
557
+ estimate: number;
558
+ n: number;
559
+ intervalWidth: number;
560
+ provenance: "asserted" | "backtest" | "seed" | "live";
561
+ }>;
562
+ assertedConfidence: Readonly<{
563
+ estimate: number;
564
+ n: number;
565
+ intervalWidth: number;
566
+ provenance: "asserted" | "backtest" | "seed" | "live";
567
+ }>;
568
+ consequence: {
569
+ stratum: import("../read-contract/reasoning-axes.js").PropertyRiskStratum;
570
+ assertedAt: string;
571
+ kind: "property-risk";
572
+ basis: string;
573
+ auditRef?: string | undefined;
574
+ } | {
575
+ assertedAt: string;
576
+ kind: "not-applicable";
577
+ reason: string;
578
+ };
579
+ }>;
580
+ assembledAt: string;
581
+ modelAttribution?: Readonly<{
582
+ modelId: string;
583
+ modelVersion: string;
584
+ promptTemplateVersion: string;
585
+ contextTemplateVersion: string;
586
+ samplingParams: Readonly<z.objectInputType<{
587
+ temperature: z.ZodOptional<z.ZodNumber>;
588
+ topP: z.ZodOptional<z.ZodNumber>;
589
+ maxTokens: z.ZodOptional<z.ZodNumber>;
590
+ seed: z.ZodOptional<z.ZodNumber>;
591
+ }, z.ZodUnknown, "strip">>;
592
+ retrievedAtomSetId: string;
593
+ }> | undefined;
594
+ }> | undefined;
595
+ absence?: {
596
+ kind: "no-flood-coverage";
597
+ reason: string;
598
+ } | undefined;
599
+ verifiedAbsence?: {
600
+ evaluated: true;
601
+ provenanceScope: string[];
602
+ } | undefined;
603
+ sourceVintage?: string | undefined;
604
+ inSpecialFloodHazardArea?: boolean | undefined;
605
+ floodZone?: string | null | undefined;
606
+ zoneSubtype?: string | null | undefined;
607
+ baseFloodElevation?: number | null | undefined;
608
+ }>;
609
+ export declare function createFloodHazardFact(input: z.input<typeof FLOOD_HAZARD_FACT_SCHEMA>): FloodHazardFactAtomInstance;
610
+ //# sourceMappingURL=flood-hazard-fact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"flood-hazard-fact.d.ts","sourceRoot":"","sources":["../../src/property/flood-hazard-fact.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EAWL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC9B,MAAM,aAAa,CAAC;AAErB;;;;;;GAMG;AACH,MAAM,WAAW,2BAA2B;IAC1C,UAAU,EAAE,mBAAmB,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,OAAO,CAAC,cAAc,EAAE;QAAE,aAAa,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IACvE,UAAU,EAAE,qBAAqB,CAAC;IAClC,4DAA4D;IAC5D,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,eAAe,CAAC,EAAE,wBAAwB,CAAC;IAC3C,YAAY,EAAE,YAAY,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,SAAS,GAAG,OAAO,GAAG,YAAY,CAAC;IACvD,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,CAAC,EAAE,qBAAqB,CAAC;CACtC;AAgBD,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4FjC,CAAC;AAEL,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,GAC9C,2BAA2B,CAE7B"}