@propertysimple/client 0.1.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 (54) hide show
  1. package/API.md +79 -0
  2. package/README.md +348 -0
  3. package/client/src/directory-sync.d.ts +123 -0
  4. package/client/src/directory-sync.js +404 -0
  5. package/client/src/index.d.ts +5123 -0
  6. package/client/src/index.js +285 -0
  7. package/client/src/managed-sync.d.ts +129 -0
  8. package/client/src/managed-sync.js +410 -0
  9. package/contracts/src/catalog-derived.d.ts +7 -0
  10. package/contracts/src/catalog-derived.js +78 -0
  11. package/contracts/src/catalog-fields.d.ts +231 -0
  12. package/contracts/src/catalog-fields.js +194 -0
  13. package/contracts/src/catalog-inventory.d.ts +14 -0
  14. package/contracts/src/catalog-inventory.js +10 -0
  15. package/contracts/src/directory-execution.d.ts +320 -0
  16. package/contracts/src/directory-execution.js +122 -0
  17. package/contracts/src/directory-identity.d.ts +1255 -0
  18. package/contracts/src/directory-identity.js +129 -0
  19. package/contracts/src/directory-sales.d.ts +333 -0
  20. package/contracts/src/directory-sales.js +102 -0
  21. package/contracts/src/directory.d.ts +1088 -0
  22. package/contracts/src/directory.js +179 -0
  23. package/contracts/src/index.d.ts +18 -0
  24. package/contracts/src/index.js +18 -0
  25. package/contracts/src/intelligence.d.ts +366 -0
  26. package/contracts/src/intelligence.js +157 -0
  27. package/contracts/src/location-serving.d.ts +13 -0
  28. package/contracts/src/location-serving.js +89 -0
  29. package/contracts/src/location.d.ts +73 -0
  30. package/contracts/src/location.js +75 -0
  31. package/contracts/src/openapi.d.ts +22 -0
  32. package/contracts/src/openapi.js +109 -0
  33. package/contracts/src/operations.d.ts +8316 -0
  34. package/contracts/src/operations.js +56 -0
  35. package/contracts/src/opportunity-events.d.ts +38 -0
  36. package/contracts/src/opportunity-events.js +69 -0
  37. package/contracts/src/platform-api.d.ts +12 -0
  38. package/contracts/src/platform-api.js +1 -0
  39. package/contracts/src/professional-intelligence.d.ts +256 -0
  40. package/contracts/src/professional-intelligence.js +90 -0
  41. package/contracts/src/property-features.d.ts +94 -0
  42. package/contracts/src/property-features.js +398 -0
  43. package/contracts/src/publication.d.ts +44 -0
  44. package/contracts/src/publication.js +42 -0
  45. package/contracts/src/routes.d.ts +437 -0
  46. package/contracts/src/routes.js +496 -0
  47. package/contracts/src/schemas.d.ts +3198 -0
  48. package/contracts/src/schemas.js +674 -0
  49. package/contracts/src/search.d.ts +2630 -0
  50. package/contracts/src/search.js +223 -0
  51. package/contracts/src/smart-feed.d.ts +3731 -0
  52. package/contracts/src/smart-feed.js +109 -0
  53. package/openapi.json +43542 -0
  54. package/package.json +60 -0
@@ -0,0 +1,3198 @@
1
+ import { z } from 'zod';
2
+ export * from './catalog-fields.js';
3
+ export * from './intelligence.js';
4
+ /** Wire types are intentionally independent of database rows and provider payloads. */
5
+ export declare const Id: z.ZodString;
6
+ export declare const Timestamp: z.ZodISODateTime;
7
+ export declare const DateOnly: z.ZodISODate;
8
+ export declare const Json: z.ZodJSONSchema;
9
+ export declare const Empty: z.ZodObject<{}, z.core.$strict>;
10
+ export declare const PrincipalSchema: z.ZodObject<{
11
+ subject_id: z.ZodString;
12
+ tenant_id: z.ZodString;
13
+ product_id: z.ZodString;
14
+ environment: z.ZodEnum<{
15
+ development: "development";
16
+ test: "test";
17
+ production: "production";
18
+ }>;
19
+ scopes: z.ZodArray<z.ZodString>;
20
+ dataset_ids: z.ZodArray<z.ZodString>;
21
+ profile_ids: z.ZodArray<z.ZodString>;
22
+ audience_ids: z.ZodArray<z.ZodString>;
23
+ account_ids: z.ZodArray<z.ZodString>;
24
+ producer_ids: z.ZodArray<z.ZodString>;
25
+ }, z.core.$strict>;
26
+ export type Principal = z.infer<typeof PrincipalSchema>;
27
+ export declare const ProblemSchema: z.ZodObject<{
28
+ type: z.ZodString;
29
+ title: z.ZodString;
30
+ status: z.ZodNumber;
31
+ detail: z.ZodString;
32
+ code: z.ZodString;
33
+ request_id: z.ZodString;
34
+ retryable: z.ZodBoolean;
35
+ details: z.ZodOptional<z.ZodJSONSchema>;
36
+ }, z.core.$strict>;
37
+ export type Problem = z.infer<typeof ProblemSchema>;
38
+ export declare const PageQuery: z.ZodObject<{
39
+ cursor: z.ZodOptional<z.ZodString>;
40
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
41
+ }, z.core.$strict>;
42
+ export declare const ResourceQuery: z.ZodObject<{
43
+ id: z.ZodString;
44
+ }, z.core.$strict>;
45
+ export declare const ResourcePageQuery: z.ZodObject<{
46
+ cursor: z.ZodOptional<z.ZodString>;
47
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
48
+ id: z.ZodString;
49
+ }, z.core.$strict>;
50
+ export declare const DatasetPageQuery: z.ZodObject<{
51
+ cursor: z.ZodOptional<z.ZodString>;
52
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
53
+ dataset_id: z.ZodOptional<z.ZodString>;
54
+ }, z.core.$strict>;
55
+ export declare const MarketStatus: z.ZodEnum<{
56
+ pending: "pending";
57
+ unknown: "unknown";
58
+ expired: "expired";
59
+ active: "active";
60
+ active_under_contract: "active_under_contract";
61
+ sold: "sold";
62
+ withdrawn: "withdrawn";
63
+ }>;
64
+ export declare const Money: z.ZodObject<{
65
+ amount: z.ZodString;
66
+ currency: z.ZodString;
67
+ period: z.ZodNullable<z.ZodString>;
68
+ }, z.core.$strict>;
69
+ export declare const Address: z.ZodObject<{
70
+ street: z.ZodNullable<z.ZodString>;
71
+ unit: z.ZodNullable<z.ZodString>;
72
+ city: z.ZodNullable<z.ZodString>;
73
+ region: z.ZodNullable<z.ZodString>;
74
+ postal_code: z.ZodNullable<z.ZodString>;
75
+ country: z.ZodNullable<z.ZodString>;
76
+ }, z.core.$strict>;
77
+ export declare const AttributeAssessment: z.ZodObject<{
78
+ attribute: z.ZodString;
79
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
80
+ evidence_state: z.ZodEnum<{
81
+ supported: "supported";
82
+ not_stated: "not_stated";
83
+ conflicting: "conflicting";
84
+ explicitly_absent: "explicitly_absent";
85
+ }>;
86
+ origin: z.ZodEnum<{
87
+ source_structured: "source_structured";
88
+ source_text_interpreted: "source_text_interpreted";
89
+ }>;
90
+ evidence_refs: z.ZodArray<z.ZodString>;
91
+ input_fingerprint: z.ZodString;
92
+ taxonomy_version: z.ZodString;
93
+ evaluation_id: z.ZodString;
94
+ freshness: z.ZodEnum<{
95
+ pending: "pending";
96
+ current: "current";
97
+ invalidated: "invalidated";
98
+ failed: "failed";
99
+ }>;
100
+ }, z.core.$strict>;
101
+ /** Public attribution excludes email and private lead-routing destinations. */
102
+ export declare const ImageRenditionSchema: z.ZodObject<{
103
+ url: z.ZodURL;
104
+ max_width: z.ZodNumber;
105
+ max_height: z.ZodNumber;
106
+ }, z.core.$strict>;
107
+ export declare const ListingMediaSchema: z.ZodObject<{
108
+ url: z.ZodURL;
109
+ order: z.ZodNumber;
110
+ caption: z.ZodNullable<z.ZodString>;
111
+ width: z.ZodNullable<z.ZodNumber>;
112
+ height: z.ZodNullable<z.ZodNumber>;
113
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
114
+ delivery: z.ZodEnum<{
115
+ source_url: "source_url";
116
+ hosted: "hosted";
117
+ }>;
118
+ renditions: z.ZodOptional<z.ZodObject<{
119
+ thumbnail: z.ZodObject<{
120
+ url: z.ZodURL;
121
+ max_width: z.ZodNumber;
122
+ max_height: z.ZodNumber;
123
+ }, z.core.$strict>;
124
+ map: z.ZodObject<{
125
+ url: z.ZodURL;
126
+ max_width: z.ZodNumber;
127
+ max_height: z.ZodNumber;
128
+ }, z.core.$strict>;
129
+ card: z.ZodObject<{
130
+ url: z.ZodURL;
131
+ max_width: z.ZodNumber;
132
+ max_height: z.ZodNumber;
133
+ }, z.core.$strict>;
134
+ gallery: z.ZodObject<{
135
+ url: z.ZodURL;
136
+ max_width: z.ZodNumber;
137
+ max_height: z.ZodNumber;
138
+ }, z.core.$strict>;
139
+ }, z.core.$strict>>;
140
+ }, z.core.$strict>;
141
+ export declare const ListingAttributionSchema: z.ZodObject<{
142
+ agent_name: z.ZodNullable<z.ZodString>;
143
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
144
+ office_name: z.ZodNullable<z.ZodString>;
145
+ office_key: z.ZodNullable<z.ZodString>;
146
+ office_phone: z.ZodNullable<z.ZodString>;
147
+ office_website: z.ZodNullable<z.ZodURL>;
148
+ broker_name: z.ZodNullable<z.ZodString>;
149
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
150
+ originating_system: z.ZodNullable<z.ZodString>;
151
+ }, z.core.$strict>;
152
+ export declare const PropertyDetailsSchema: z.ZodObject<{
153
+ category: z.ZodNullable<z.ZodString>;
154
+ sub_type: z.ZodNullable<z.ZodString>;
155
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
156
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
157
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
158
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
159
+ stories: z.ZodNullable<z.ZodNumber>;
160
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
161
+ parking_total: z.ZodNullable<z.ZodNumber>;
162
+ county: z.ZodNullable<z.ZodString>;
163
+ subdivision: z.ZodNullable<z.ZodString>;
164
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
165
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
166
+ AssociationYN: "AssociationYN";
167
+ AttachedGarageYN: "AttachedGarageYN";
168
+ BasementYN: "BasementYN";
169
+ CarportYN: "CarportYN";
170
+ CoolingYN: "CoolingYN";
171
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
172
+ FireplaceYN: "FireplaceYN";
173
+ GarageYN: "GarageYN";
174
+ HeatingYN: "HeatingYN";
175
+ NewConstructionYN: "NewConstructionYN";
176
+ PoolPrivateYN: "PoolPrivateYN";
177
+ SpaYN: "SpaYN";
178
+ WaterfrontYN: "WaterfrontYN";
179
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
180
+ Dock: "Dock";
181
+ }> & z.core.$partial, z.ZodBoolean>>;
182
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
183
+ kind: z.ZodEnum<{
184
+ association: "association";
185
+ association_secondary: "association_secondary";
186
+ }>;
187
+ amount: z.ZodNullable<z.ZodString>;
188
+ amount_state: z.ZodEnum<{
189
+ unknown: "unknown";
190
+ supported: "supported";
191
+ not_stated: "not_stated";
192
+ }>;
193
+ currency: z.ZodNullable<z.ZodString>;
194
+ currency_source: z.ZodNullable<z.ZodEnum<{
195
+ field: "field";
196
+ source_default: "source_default";
197
+ }>>;
198
+ currency_state: z.ZodEnum<{
199
+ unknown: "unknown";
200
+ supported: "supported";
201
+ not_stated: "not_stated";
202
+ }>;
203
+ period: z.ZodNullable<z.ZodEnum<{
204
+ year: "year";
205
+ day: "day";
206
+ week: "week";
207
+ month: "month";
208
+ quarter: "quarter";
209
+ half_year: "half_year";
210
+ one_time: "one_time";
211
+ }>>;
212
+ period_state: z.ZodEnum<{
213
+ unknown: "unknown";
214
+ supported: "supported";
215
+ not_stated: "not_stated";
216
+ }>;
217
+ source_paths: z.ZodArray<z.ZodString>;
218
+ }, z.core.$strict>>>;
219
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
220
+ type: z.ZodNullable<z.ZodString>;
221
+ level: z.ZodNullable<z.ZodString>;
222
+ features: z.ZodArray<z.ZodString>;
223
+ dimensions: z.ZodNullable<z.ZodString>;
224
+ length: z.ZodNullable<z.ZodNumber>;
225
+ width: z.ZodNullable<z.ZodNumber>;
226
+ unit: z.ZodNullable<z.ZodString>;
227
+ source_paths: z.ZodArray<z.ZodString>;
228
+ }, z.core.$strict>>>;
229
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
230
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
231
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
232
+ }, z.core.$strict>;
233
+ export declare const CatalogProfile: z.ZodEnum<{
234
+ catalog: "catalog";
235
+ portal_active: "portal_active";
236
+ }>;
237
+ export declare const ListingDetailQuery: z.ZodObject<{
238
+ id: z.ZodString;
239
+ profile: z.ZodOptional<z.ZodEnum<{
240
+ catalog: "catalog";
241
+ portal_active: "portal_active";
242
+ }>>;
243
+ dataset_id: z.ZodOptional<z.ZodString>;
244
+ }, z.core.$strict>;
245
+ declare const ListingWireSchema: z.ZodObject<{
246
+ id: z.ZodString;
247
+ episode_id: z.ZodString;
248
+ revision: z.ZodString;
249
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
250
+ source_identities: z.ZodArray<z.ZodObject<{
251
+ source: z.ZodString;
252
+ key: z.ZodString;
253
+ }, z.core.$strict>>;
254
+ market_status: z.ZodEnum<{
255
+ pending: "pending";
256
+ unknown: "unknown";
257
+ expired: "expired";
258
+ active: "active";
259
+ active_under_contract: "active_under_contract";
260
+ sold: "sold";
261
+ withdrawn: "withdrawn";
262
+ }>;
263
+ source_availability: z.ZodEnum<{
264
+ present: "present";
265
+ removed_unknown: "removed_unknown";
266
+ }>;
267
+ display_eligibility: z.ZodBoolean;
268
+ price: z.ZodNullable<z.ZodObject<{
269
+ amount: z.ZodString;
270
+ currency: z.ZodString;
271
+ period: z.ZodNullable<z.ZodString>;
272
+ }, z.core.$strict>>;
273
+ transaction_type: z.ZodOptional<z.ZodEnum<{
274
+ unknown: "unknown";
275
+ conflicting: "conflicting";
276
+ for_sale: "for_sale";
277
+ for_rent: "for_rent";
278
+ }>>;
279
+ price_period_state: z.ZodOptional<z.ZodEnum<{
280
+ unknown: "unknown";
281
+ supported: "supported";
282
+ not_stated: "not_stated";
283
+ conflicting: "conflicting";
284
+ }>>;
285
+ address: z.ZodObject<{
286
+ street: z.ZodNullable<z.ZodString>;
287
+ unit: z.ZodNullable<z.ZodString>;
288
+ city: z.ZodNullable<z.ZodString>;
289
+ region: z.ZodNullable<z.ZodString>;
290
+ postal_code: z.ZodNullable<z.ZodString>;
291
+ country: z.ZodNullable<z.ZodString>;
292
+ }, z.core.$strict>;
293
+ listing_agent_ids: z.ZodArray<z.ZodString>;
294
+ description: z.ZodNullable<z.ZodString>;
295
+ photos: z.ZodArray<z.ZodString>;
296
+ photo_count: z.ZodOptional<z.ZodNumber>;
297
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
298
+ url: z.ZodURL;
299
+ order: z.ZodNumber;
300
+ caption: z.ZodNullable<z.ZodString>;
301
+ width: z.ZodNullable<z.ZodNumber>;
302
+ height: z.ZodNullable<z.ZodNumber>;
303
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
304
+ delivery: z.ZodEnum<{
305
+ source_url: "source_url";
306
+ hosted: "hosted";
307
+ }>;
308
+ renditions: z.ZodOptional<z.ZodObject<{
309
+ thumbnail: z.ZodObject<{
310
+ url: z.ZodURL;
311
+ max_width: z.ZodNumber;
312
+ max_height: z.ZodNumber;
313
+ }, z.core.$strict>;
314
+ map: z.ZodObject<{
315
+ url: z.ZodURL;
316
+ max_width: z.ZodNumber;
317
+ max_height: z.ZodNumber;
318
+ }, z.core.$strict>;
319
+ card: z.ZodObject<{
320
+ url: z.ZodURL;
321
+ max_width: z.ZodNumber;
322
+ max_height: z.ZodNumber;
323
+ }, z.core.$strict>;
324
+ gallery: z.ZodObject<{
325
+ url: z.ZodURL;
326
+ max_width: z.ZodNumber;
327
+ max_height: z.ZodNumber;
328
+ }, z.core.$strict>;
329
+ }, z.core.$strict>>;
330
+ }, z.core.$strict>>>;
331
+ attribution: z.ZodOptional<z.ZodObject<{
332
+ agent_name: z.ZodNullable<z.ZodString>;
333
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
334
+ office_name: z.ZodNullable<z.ZodString>;
335
+ office_key: z.ZodNullable<z.ZodString>;
336
+ office_phone: z.ZodNullable<z.ZodString>;
337
+ office_website: z.ZodNullable<z.ZodURL>;
338
+ broker_name: z.ZodNullable<z.ZodString>;
339
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
340
+ originating_system: z.ZodNullable<z.ZodString>;
341
+ }, z.core.$strict>>;
342
+ property_details: z.ZodOptional<z.ZodObject<{
343
+ category: z.ZodNullable<z.ZodString>;
344
+ sub_type: z.ZodNullable<z.ZodString>;
345
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
346
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
347
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
348
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
349
+ stories: z.ZodNullable<z.ZodNumber>;
350
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
351
+ parking_total: z.ZodNullable<z.ZodNumber>;
352
+ county: z.ZodNullable<z.ZodString>;
353
+ subdivision: z.ZodNullable<z.ZodString>;
354
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
355
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
356
+ AssociationYN: "AssociationYN";
357
+ AttachedGarageYN: "AttachedGarageYN";
358
+ BasementYN: "BasementYN";
359
+ CarportYN: "CarportYN";
360
+ CoolingYN: "CoolingYN";
361
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
362
+ FireplaceYN: "FireplaceYN";
363
+ GarageYN: "GarageYN";
364
+ HeatingYN: "HeatingYN";
365
+ NewConstructionYN: "NewConstructionYN";
366
+ PoolPrivateYN: "PoolPrivateYN";
367
+ SpaYN: "SpaYN";
368
+ WaterfrontYN: "WaterfrontYN";
369
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
370
+ Dock: "Dock";
371
+ }> & z.core.$partial, z.ZodBoolean>>;
372
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
373
+ kind: z.ZodEnum<{
374
+ association: "association";
375
+ association_secondary: "association_secondary";
376
+ }>;
377
+ amount: z.ZodNullable<z.ZodString>;
378
+ amount_state: z.ZodEnum<{
379
+ unknown: "unknown";
380
+ supported: "supported";
381
+ not_stated: "not_stated";
382
+ }>;
383
+ currency: z.ZodNullable<z.ZodString>;
384
+ currency_source: z.ZodNullable<z.ZodEnum<{
385
+ field: "field";
386
+ source_default: "source_default";
387
+ }>>;
388
+ currency_state: z.ZodEnum<{
389
+ unknown: "unknown";
390
+ supported: "supported";
391
+ not_stated: "not_stated";
392
+ }>;
393
+ period: z.ZodNullable<z.ZodEnum<{
394
+ year: "year";
395
+ day: "day";
396
+ week: "week";
397
+ month: "month";
398
+ quarter: "quarter";
399
+ half_year: "half_year";
400
+ one_time: "one_time";
401
+ }>>;
402
+ period_state: z.ZodEnum<{
403
+ unknown: "unknown";
404
+ supported: "supported";
405
+ not_stated: "not_stated";
406
+ }>;
407
+ source_paths: z.ZodArray<z.ZodString>;
408
+ }, z.core.$strict>>>;
409
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
410
+ type: z.ZodNullable<z.ZodString>;
411
+ level: z.ZodNullable<z.ZodString>;
412
+ features: z.ZodArray<z.ZodString>;
413
+ dimensions: z.ZodNullable<z.ZodString>;
414
+ length: z.ZodNullable<z.ZodNumber>;
415
+ width: z.ZodNullable<z.ZodNumber>;
416
+ unit: z.ZodNullable<z.ZodString>;
417
+ source_paths: z.ZodArray<z.ZodString>;
418
+ }, z.core.$strict>>>;
419
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
420
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
421
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
422
+ }, z.core.$strict>>;
423
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
424
+ property_type: z.ZodNullable<z.ZodString>;
425
+ bedrooms: z.ZodNullable<z.ZodNumber>;
426
+ bathrooms: z.ZodNullable<z.ZodNumber>;
427
+ living_area: z.ZodNullable<z.ZodNumber>;
428
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
429
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
430
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
431
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
432
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
433
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
434
+ location: z.ZodOptional<z.ZodObject<{
435
+ state: z.ZodEnum<{
436
+ source: "source";
437
+ pending: "pending";
438
+ resolved: "resolved";
439
+ coarse: "coarse";
440
+ unavailable: "unavailable";
441
+ stale: "stale";
442
+ suppressed: "suppressed";
443
+ }>;
444
+ origin: z.ZodNullable<z.ZodEnum<{
445
+ source: "source";
446
+ geocoded: "geocoded";
447
+ }>>;
448
+ precision: z.ZodEnum<{
449
+ source_unknown: "source_unknown";
450
+ parcel: "parcel";
451
+ street: "street";
452
+ area: "area";
453
+ unknown: "unknown";
454
+ }>;
455
+ map_eligible: z.ZodBoolean;
456
+ coordinates: z.ZodNullable<z.ZodObject<{
457
+ latitude: z.ZodNumber;
458
+ longitude: z.ZodNumber;
459
+ }, z.core.$strip>>;
460
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
461
+ accuracy_type: z.ZodNullable<z.ZodString>;
462
+ match_type: z.ZodNullable<z.ZodString>;
463
+ provider: z.ZodNullable<z.ZodString>;
464
+ provider_version: z.ZodNullable<z.ZodString>;
465
+ policy_version: z.ZodString;
466
+ source: z.ZodNullable<z.ZodString>;
467
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
468
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
469
+ country_code: z.ZodNullable<z.ZodString>;
470
+ region_code: z.ZodNullable<z.ZodString>;
471
+ timezone: z.ZodNullable<z.ZodString>;
472
+ enrichment: z.ZodNullable<z.ZodObject<{
473
+ provider: z.ZodString;
474
+ provider_version: z.ZodString;
475
+ resolved_at: z.ZodISODateTime;
476
+ valid_until: z.ZodISODateTime;
477
+ fields: z.ZodArray<z.ZodEnum<{
478
+ timezone: "timezone";
479
+ census2025: "census2025";
480
+ }>>;
481
+ }, z.core.$strip>>;
482
+ geography: z.ZodNullable<z.ZodObject<{
483
+ census_year: z.ZodNumber;
484
+ state_fips: z.ZodNullable<z.ZodString>;
485
+ county_fips: z.ZodNullable<z.ZodString>;
486
+ tract_geoid: z.ZodNullable<z.ZodString>;
487
+ block_geoid: z.ZodNullable<z.ZodString>;
488
+ place_fips: z.ZodNullable<z.ZodString>;
489
+ cbsa_code: z.ZodNullable<z.ZodString>;
490
+ source: z.ZodNullable<z.ZodString>;
491
+ }, z.core.$strip>>;
492
+ issue: z.ZodNullable<z.ZodEnum<{
493
+ pending: "pending";
494
+ invalid_source_point: "invalid_source_point";
495
+ insufficient_address: "insufficient_address";
496
+ unsupported_country: "unsupported_country";
497
+ no_match: "no_match";
498
+ low_quality: "low_quality";
499
+ provider_failure: "provider_failure";
500
+ expired: "expired";
501
+ display_restricted: "display_restricted";
502
+ }>>;
503
+ }, z.core.$strip>>;
504
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
505
+ source_url: z.ZodNullable<z.ZodString>;
506
+ listed_date: z.ZodNullable<z.ZodString>;
507
+ listed_precision: z.ZodEnum<{
508
+ unknown: "unknown";
509
+ date: "date";
510
+ instant: "instant";
511
+ }>;
512
+ open_houses: z.ZodArray<z.ZodObject<{
513
+ id: z.ZodString;
514
+ start_at: z.ZodString;
515
+ end_at: z.ZodNullable<z.ZodString>;
516
+ timezone: z.ZodNullable<z.ZodString>;
517
+ status: z.ZodEnum<{
518
+ scheduled: "scheduled";
519
+ cancelled: "cancelled";
520
+ }>;
521
+ }, z.core.$strict>>;
522
+ classifications: z.ZodArray<z.ZodObject<{
523
+ attribute: z.ZodString;
524
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
525
+ evidence_state: z.ZodEnum<{
526
+ supported: "supported";
527
+ not_stated: "not_stated";
528
+ conflicting: "conflicting";
529
+ explicitly_absent: "explicitly_absent";
530
+ }>;
531
+ origin: z.ZodEnum<{
532
+ source_structured: "source_structured";
533
+ source_text_interpreted: "source_text_interpreted";
534
+ }>;
535
+ evidence_refs: z.ZodArray<z.ZodString>;
536
+ input_fingerprint: z.ZodString;
537
+ taxonomy_version: z.ZodString;
538
+ evaluation_id: z.ZodString;
539
+ freshness: z.ZodEnum<{
540
+ pending: "pending";
541
+ current: "current";
542
+ invalidated: "invalidated";
543
+ failed: "failed";
544
+ }>;
545
+ }, z.core.$strict>>;
546
+ display: z.ZodObject<{
547
+ address_allowed: z.ZodBoolean;
548
+ disclaimer: z.ZodNullable<z.ZodString>;
549
+ }, z.core.$strict>;
550
+ freshness: z.ZodObject<{
551
+ last_seen_at: z.ZodISODateTime;
552
+ published_at: z.ZodISODateTime;
553
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
554
+ }, z.core.$strict>;
555
+ source_amenities: z.ZodOptional<z.ZodObject<{
556
+ version: z.ZodLiteral<"source-amenities-v1">;
557
+ values: z.ZodRecord<z.ZodEnum<{
558
+ hardwood: "hardwood";
559
+ solar: "solar";
560
+ ev_charger: "ev_charger";
561
+ rv_parking: "rv_parking";
562
+ view: "view";
563
+ }>, z.ZodObject<{
564
+ value: z.ZodNullable<z.ZodBoolean>;
565
+ state: z.ZodEnum<{
566
+ supported: "supported";
567
+ not_stated: "not_stated";
568
+ conflicting: "conflicting";
569
+ }>;
570
+ source_paths: z.ZodArray<z.ZodString>;
571
+ }, z.core.$strict>>;
572
+ }, z.core.$strict>>;
573
+ search_document: z.ZodOptional<z.ZodObject<{
574
+ version: z.ZodLiteral<"catalog-search-text-v1">;
575
+ text: z.ZodString;
576
+ }, z.core.$strict>>;
577
+ content_hash: z.ZodOptional<z.ZodString>;
578
+ source_fields: z.ZodOptional<z.ZodObject<{
579
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
580
+ }, z.core.$strict>>;
581
+ source_metadata: z.ZodOptional<z.ZodObject<{
582
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
583
+ parser_version: z.ZodString;
584
+ exposure_version: z.ZodString;
585
+ source_system_id: z.ZodNullable<z.ZodString>;
586
+ source_system_name: z.ZodNullable<z.ZodString>;
587
+ originating_system_name: z.ZodNullable<z.ZodString>;
588
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
589
+ supplied_paths: z.ZodArray<z.ZodString>;
590
+ }, z.core.$strict>>;
591
+ market_dates: z.ZodOptional<z.ZodObject<{
592
+ listing_contract: z.ZodObject<{
593
+ value: z.ZodNullable<z.ZodString>;
594
+ precision: z.ZodEnum<{
595
+ unknown: "unknown";
596
+ date: "date";
597
+ instant: "instant";
598
+ }>;
599
+ }, z.core.$strict>;
600
+ on_market: z.ZodObject<{
601
+ value: z.ZodNullable<z.ZodString>;
602
+ precision: z.ZodEnum<{
603
+ unknown: "unknown";
604
+ date: "date";
605
+ instant: "instant";
606
+ }>;
607
+ }, z.core.$strict>;
608
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
609
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
610
+ }, z.core.$strict>>;
611
+ taxes: z.ZodOptional<z.ZodObject<{
612
+ annual_amount: z.ZodNullable<z.ZodString>;
613
+ currency: z.ZodNullable<z.ZodString>;
614
+ year: z.ZodNullable<z.ZodNumber>;
615
+ }, z.core.$strict>>;
616
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
617
+ level: z.ZodEnum<{
618
+ elementary: "elementary";
619
+ middle: "middle";
620
+ high: "high";
621
+ }>;
622
+ name: z.ZodNullable<z.ZodString>;
623
+ district: z.ZodNullable<z.ZodString>;
624
+ }, z.core.$strict>>>;
625
+ price_history: z.ZodOptional<z.ZodObject<{
626
+ original_amount: z.ZodNullable<z.ZodString>;
627
+ previous_amount: z.ZodNullable<z.ZodString>;
628
+ low_amount: z.ZodNullable<z.ZodString>;
629
+ currency: z.ZodNullable<z.ZodString>;
630
+ original_currency: z.ZodNullable<z.ZodString>;
631
+ previous_currency: z.ZodNullable<z.ZodString>;
632
+ low_currency: z.ZodNullable<z.ZodString>;
633
+ changed_at: z.ZodObject<{
634
+ value: z.ZodNullable<z.ZodString>;
635
+ precision: z.ZodEnum<{
636
+ unknown: "unknown";
637
+ date: "date";
638
+ instant: "instant";
639
+ }>;
640
+ }, z.core.$strict>;
641
+ }, z.core.$strict>>;
642
+ virtual_tours: z.ZodOptional<z.ZodObject<{
643
+ branded_url: z.ZodNullable<z.ZodURL>;
644
+ unbranded_url: z.ZodNullable<z.ZodURL>;
645
+ }, z.core.$strict>>;
646
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
647
+ url: z.ZodURL;
648
+ categories: z.ZodArray<z.ZodString>;
649
+ order: z.ZodNumber;
650
+ caption: z.ZodNullable<z.ZodString>;
651
+ }, z.core.$strict>>>;
652
+ professionals: z.ZodOptional<z.ZodObject<{
653
+ agent: z.ZodObject<{
654
+ full_name: z.ZodNullable<z.ZodString>;
655
+ first_name: z.ZodNullable<z.ZodString>;
656
+ last_name: z.ZodNullable<z.ZodString>;
657
+ license: z.ZodNullable<z.ZodString>;
658
+ }, z.core.$strict>;
659
+ office: z.ZodObject<{
660
+ key: z.ZodNullable<z.ZodString>;
661
+ mls_id: z.ZodNullable<z.ZodString>;
662
+ name: z.ZodNullable<z.ZodString>;
663
+ broker_mls_id: z.ZodNullable<z.ZodString>;
664
+ corporate_id: z.ZodNullable<z.ZodString>;
665
+ main_office_id: z.ZodNullable<z.ZodString>;
666
+ website_url: z.ZodNullable<z.ZodURL>;
667
+ address: z.ZodObject<{
668
+ street: z.ZodNullable<z.ZodString>;
669
+ unit: z.ZodNullable<z.ZodString>;
670
+ city: z.ZodNullable<z.ZodString>;
671
+ region: z.ZodNullable<z.ZodString>;
672
+ postal_code: z.ZodNullable<z.ZodString>;
673
+ country: z.ZodNullable<z.ZodString>;
674
+ }, z.core.$strict>;
675
+ }, z.core.$strict>;
676
+ brokerage: z.ZodObject<{
677
+ name: z.ZodNullable<z.ZodString>;
678
+ website_url: z.ZodNullable<z.ZodURL>;
679
+ logo_url: z.ZodNullable<z.ZodURL>;
680
+ address: z.ZodObject<{
681
+ street: z.ZodNullable<z.ZodString>;
682
+ unit: z.ZodNullable<z.ZodString>;
683
+ city: z.ZodNullable<z.ZodString>;
684
+ region: z.ZodNullable<z.ZodString>;
685
+ postal_code: z.ZodNullable<z.ZodString>;
686
+ country: z.ZodNullable<z.ZodString>;
687
+ }, z.core.$strict>;
688
+ }, z.core.$strict>;
689
+ builder: z.ZodObject<{
690
+ name: z.ZodNullable<z.ZodString>;
691
+ }, z.core.$strict>;
692
+ franchise: z.ZodNullable<z.ZodString>;
693
+ }, z.core.$strict>>;
694
+ permissions: z.ZodOptional<z.ZodObject<{
695
+ internet_display: z.ZodNullable<z.ZodBoolean>;
696
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
697
+ address_display: z.ZodNullable<z.ZodBoolean>;
698
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
699
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
700
+ }, z.core.$strict>>;
701
+ }, z.core.$strict>;
702
+ export type Listing = z.infer<typeof ListingWireSchema>;
703
+ export declare const ListingSchema: z.ZodObject<{
704
+ id: z.ZodString;
705
+ episode_id: z.ZodString;
706
+ revision: z.ZodString;
707
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
708
+ source_identities: z.ZodArray<z.ZodObject<{
709
+ source: z.ZodString;
710
+ key: z.ZodString;
711
+ }, z.core.$strict>>;
712
+ market_status: z.ZodEnum<{
713
+ pending: "pending";
714
+ unknown: "unknown";
715
+ expired: "expired";
716
+ active: "active";
717
+ active_under_contract: "active_under_contract";
718
+ sold: "sold";
719
+ withdrawn: "withdrawn";
720
+ }>;
721
+ source_availability: z.ZodEnum<{
722
+ present: "present";
723
+ removed_unknown: "removed_unknown";
724
+ }>;
725
+ display_eligibility: z.ZodBoolean;
726
+ price: z.ZodNullable<z.ZodObject<{
727
+ amount: z.ZodString;
728
+ currency: z.ZodString;
729
+ period: z.ZodNullable<z.ZodString>;
730
+ }, z.core.$strict>>;
731
+ transaction_type: z.ZodOptional<z.ZodEnum<{
732
+ unknown: "unknown";
733
+ conflicting: "conflicting";
734
+ for_sale: "for_sale";
735
+ for_rent: "for_rent";
736
+ }>>;
737
+ price_period_state: z.ZodOptional<z.ZodEnum<{
738
+ unknown: "unknown";
739
+ supported: "supported";
740
+ not_stated: "not_stated";
741
+ conflicting: "conflicting";
742
+ }>>;
743
+ address: z.ZodObject<{
744
+ street: z.ZodNullable<z.ZodString>;
745
+ unit: z.ZodNullable<z.ZodString>;
746
+ city: z.ZodNullable<z.ZodString>;
747
+ region: z.ZodNullable<z.ZodString>;
748
+ postal_code: z.ZodNullable<z.ZodString>;
749
+ country: z.ZodNullable<z.ZodString>;
750
+ }, z.core.$strict>;
751
+ listing_agent_ids: z.ZodArray<z.ZodString>;
752
+ description: z.ZodNullable<z.ZodString>;
753
+ photos: z.ZodArray<z.ZodString>;
754
+ photo_count: z.ZodOptional<z.ZodNumber>;
755
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
756
+ url: z.ZodURL;
757
+ order: z.ZodNumber;
758
+ caption: z.ZodNullable<z.ZodString>;
759
+ width: z.ZodNullable<z.ZodNumber>;
760
+ height: z.ZodNullable<z.ZodNumber>;
761
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
762
+ delivery: z.ZodEnum<{
763
+ source_url: "source_url";
764
+ hosted: "hosted";
765
+ }>;
766
+ renditions: z.ZodOptional<z.ZodObject<{
767
+ thumbnail: z.ZodObject<{
768
+ url: z.ZodURL;
769
+ max_width: z.ZodNumber;
770
+ max_height: z.ZodNumber;
771
+ }, z.core.$strict>;
772
+ map: z.ZodObject<{
773
+ url: z.ZodURL;
774
+ max_width: z.ZodNumber;
775
+ max_height: z.ZodNumber;
776
+ }, z.core.$strict>;
777
+ card: z.ZodObject<{
778
+ url: z.ZodURL;
779
+ max_width: z.ZodNumber;
780
+ max_height: z.ZodNumber;
781
+ }, z.core.$strict>;
782
+ gallery: z.ZodObject<{
783
+ url: z.ZodURL;
784
+ max_width: z.ZodNumber;
785
+ max_height: z.ZodNumber;
786
+ }, z.core.$strict>;
787
+ }, z.core.$strict>>;
788
+ }, z.core.$strict>>>;
789
+ attribution: z.ZodOptional<z.ZodObject<{
790
+ agent_name: z.ZodNullable<z.ZodString>;
791
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
792
+ office_name: z.ZodNullable<z.ZodString>;
793
+ office_key: z.ZodNullable<z.ZodString>;
794
+ office_phone: z.ZodNullable<z.ZodString>;
795
+ office_website: z.ZodNullable<z.ZodURL>;
796
+ broker_name: z.ZodNullable<z.ZodString>;
797
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
798
+ originating_system: z.ZodNullable<z.ZodString>;
799
+ }, z.core.$strict>>;
800
+ property_details: z.ZodOptional<z.ZodObject<{
801
+ category: z.ZodNullable<z.ZodString>;
802
+ sub_type: z.ZodNullable<z.ZodString>;
803
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
804
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
805
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
806
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
807
+ stories: z.ZodNullable<z.ZodNumber>;
808
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
809
+ parking_total: z.ZodNullable<z.ZodNumber>;
810
+ county: z.ZodNullable<z.ZodString>;
811
+ subdivision: z.ZodNullable<z.ZodString>;
812
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
813
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
814
+ AssociationYN: "AssociationYN";
815
+ AttachedGarageYN: "AttachedGarageYN";
816
+ BasementYN: "BasementYN";
817
+ CarportYN: "CarportYN";
818
+ CoolingYN: "CoolingYN";
819
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
820
+ FireplaceYN: "FireplaceYN";
821
+ GarageYN: "GarageYN";
822
+ HeatingYN: "HeatingYN";
823
+ NewConstructionYN: "NewConstructionYN";
824
+ PoolPrivateYN: "PoolPrivateYN";
825
+ SpaYN: "SpaYN";
826
+ WaterfrontYN: "WaterfrontYN";
827
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
828
+ Dock: "Dock";
829
+ }> & z.core.$partial, z.ZodBoolean>>;
830
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
831
+ kind: z.ZodEnum<{
832
+ association: "association";
833
+ association_secondary: "association_secondary";
834
+ }>;
835
+ amount: z.ZodNullable<z.ZodString>;
836
+ amount_state: z.ZodEnum<{
837
+ unknown: "unknown";
838
+ supported: "supported";
839
+ not_stated: "not_stated";
840
+ }>;
841
+ currency: z.ZodNullable<z.ZodString>;
842
+ currency_source: z.ZodNullable<z.ZodEnum<{
843
+ field: "field";
844
+ source_default: "source_default";
845
+ }>>;
846
+ currency_state: z.ZodEnum<{
847
+ unknown: "unknown";
848
+ supported: "supported";
849
+ not_stated: "not_stated";
850
+ }>;
851
+ period: z.ZodNullable<z.ZodEnum<{
852
+ year: "year";
853
+ day: "day";
854
+ week: "week";
855
+ month: "month";
856
+ quarter: "quarter";
857
+ half_year: "half_year";
858
+ one_time: "one_time";
859
+ }>>;
860
+ period_state: z.ZodEnum<{
861
+ unknown: "unknown";
862
+ supported: "supported";
863
+ not_stated: "not_stated";
864
+ }>;
865
+ source_paths: z.ZodArray<z.ZodString>;
866
+ }, z.core.$strict>>>;
867
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
868
+ type: z.ZodNullable<z.ZodString>;
869
+ level: z.ZodNullable<z.ZodString>;
870
+ features: z.ZodArray<z.ZodString>;
871
+ dimensions: z.ZodNullable<z.ZodString>;
872
+ length: z.ZodNullable<z.ZodNumber>;
873
+ width: z.ZodNullable<z.ZodNumber>;
874
+ unit: z.ZodNullable<z.ZodString>;
875
+ source_paths: z.ZodArray<z.ZodString>;
876
+ }, z.core.$strict>>>;
877
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
878
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
879
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
880
+ }, z.core.$strict>>;
881
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
882
+ property_type: z.ZodNullable<z.ZodString>;
883
+ bedrooms: z.ZodNullable<z.ZodNumber>;
884
+ bathrooms: z.ZodNullable<z.ZodNumber>;
885
+ living_area: z.ZodNullable<z.ZodNumber>;
886
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
887
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
888
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
889
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
890
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
891
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
892
+ location: z.ZodOptional<z.ZodObject<{
893
+ state: z.ZodEnum<{
894
+ source: "source";
895
+ pending: "pending";
896
+ resolved: "resolved";
897
+ coarse: "coarse";
898
+ unavailable: "unavailable";
899
+ stale: "stale";
900
+ suppressed: "suppressed";
901
+ }>;
902
+ origin: z.ZodNullable<z.ZodEnum<{
903
+ source: "source";
904
+ geocoded: "geocoded";
905
+ }>>;
906
+ precision: z.ZodEnum<{
907
+ source_unknown: "source_unknown";
908
+ parcel: "parcel";
909
+ street: "street";
910
+ area: "area";
911
+ unknown: "unknown";
912
+ }>;
913
+ map_eligible: z.ZodBoolean;
914
+ coordinates: z.ZodNullable<z.ZodObject<{
915
+ latitude: z.ZodNumber;
916
+ longitude: z.ZodNumber;
917
+ }, z.core.$strip>>;
918
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
919
+ accuracy_type: z.ZodNullable<z.ZodString>;
920
+ match_type: z.ZodNullable<z.ZodString>;
921
+ provider: z.ZodNullable<z.ZodString>;
922
+ provider_version: z.ZodNullable<z.ZodString>;
923
+ policy_version: z.ZodString;
924
+ source: z.ZodNullable<z.ZodString>;
925
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
926
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
927
+ country_code: z.ZodNullable<z.ZodString>;
928
+ region_code: z.ZodNullable<z.ZodString>;
929
+ timezone: z.ZodNullable<z.ZodString>;
930
+ enrichment: z.ZodNullable<z.ZodObject<{
931
+ provider: z.ZodString;
932
+ provider_version: z.ZodString;
933
+ resolved_at: z.ZodISODateTime;
934
+ valid_until: z.ZodISODateTime;
935
+ fields: z.ZodArray<z.ZodEnum<{
936
+ timezone: "timezone";
937
+ census2025: "census2025";
938
+ }>>;
939
+ }, z.core.$strip>>;
940
+ geography: z.ZodNullable<z.ZodObject<{
941
+ census_year: z.ZodNumber;
942
+ state_fips: z.ZodNullable<z.ZodString>;
943
+ county_fips: z.ZodNullable<z.ZodString>;
944
+ tract_geoid: z.ZodNullable<z.ZodString>;
945
+ block_geoid: z.ZodNullable<z.ZodString>;
946
+ place_fips: z.ZodNullable<z.ZodString>;
947
+ cbsa_code: z.ZodNullable<z.ZodString>;
948
+ source: z.ZodNullable<z.ZodString>;
949
+ }, z.core.$strip>>;
950
+ issue: z.ZodNullable<z.ZodEnum<{
951
+ pending: "pending";
952
+ invalid_source_point: "invalid_source_point";
953
+ insufficient_address: "insufficient_address";
954
+ unsupported_country: "unsupported_country";
955
+ no_match: "no_match";
956
+ low_quality: "low_quality";
957
+ provider_failure: "provider_failure";
958
+ expired: "expired";
959
+ display_restricted: "display_restricted";
960
+ }>>;
961
+ }, z.core.$strip>>;
962
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
963
+ source_url: z.ZodNullable<z.ZodString>;
964
+ listed_date: z.ZodNullable<z.ZodString>;
965
+ listed_precision: z.ZodEnum<{
966
+ unknown: "unknown";
967
+ date: "date";
968
+ instant: "instant";
969
+ }>;
970
+ open_houses: z.ZodArray<z.ZodObject<{
971
+ id: z.ZodString;
972
+ start_at: z.ZodString;
973
+ end_at: z.ZodNullable<z.ZodString>;
974
+ timezone: z.ZodNullable<z.ZodString>;
975
+ status: z.ZodEnum<{
976
+ scheduled: "scheduled";
977
+ cancelled: "cancelled";
978
+ }>;
979
+ }, z.core.$strict>>;
980
+ classifications: z.ZodArray<z.ZodObject<{
981
+ attribute: z.ZodString;
982
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
983
+ evidence_state: z.ZodEnum<{
984
+ supported: "supported";
985
+ not_stated: "not_stated";
986
+ conflicting: "conflicting";
987
+ explicitly_absent: "explicitly_absent";
988
+ }>;
989
+ origin: z.ZodEnum<{
990
+ source_structured: "source_structured";
991
+ source_text_interpreted: "source_text_interpreted";
992
+ }>;
993
+ evidence_refs: z.ZodArray<z.ZodString>;
994
+ input_fingerprint: z.ZodString;
995
+ taxonomy_version: z.ZodString;
996
+ evaluation_id: z.ZodString;
997
+ freshness: z.ZodEnum<{
998
+ pending: "pending";
999
+ current: "current";
1000
+ invalidated: "invalidated";
1001
+ failed: "failed";
1002
+ }>;
1003
+ }, z.core.$strict>>;
1004
+ display: z.ZodObject<{
1005
+ address_allowed: z.ZodBoolean;
1006
+ disclaimer: z.ZodNullable<z.ZodString>;
1007
+ }, z.core.$strict>;
1008
+ freshness: z.ZodObject<{
1009
+ last_seen_at: z.ZodISODateTime;
1010
+ published_at: z.ZodISODateTime;
1011
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
1012
+ }, z.core.$strict>;
1013
+ source_amenities: z.ZodOptional<z.ZodObject<{
1014
+ version: z.ZodLiteral<"source-amenities-v1">;
1015
+ values: z.ZodRecord<z.ZodEnum<{
1016
+ hardwood: "hardwood";
1017
+ solar: "solar";
1018
+ ev_charger: "ev_charger";
1019
+ rv_parking: "rv_parking";
1020
+ view: "view";
1021
+ }>, z.ZodObject<{
1022
+ value: z.ZodNullable<z.ZodBoolean>;
1023
+ state: z.ZodEnum<{
1024
+ supported: "supported";
1025
+ not_stated: "not_stated";
1026
+ conflicting: "conflicting";
1027
+ }>;
1028
+ source_paths: z.ZodArray<z.ZodString>;
1029
+ }, z.core.$strict>>;
1030
+ }, z.core.$strict>>;
1031
+ search_document: z.ZodOptional<z.ZodObject<{
1032
+ version: z.ZodLiteral<"catalog-search-text-v1">;
1033
+ text: z.ZodString;
1034
+ }, z.core.$strict>>;
1035
+ content_hash: z.ZodOptional<z.ZodString>;
1036
+ source_fields: z.ZodOptional<z.ZodObject<{
1037
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
1038
+ }, z.core.$strict>>;
1039
+ source_metadata: z.ZodOptional<z.ZodObject<{
1040
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
1041
+ parser_version: z.ZodString;
1042
+ exposure_version: z.ZodString;
1043
+ source_system_id: z.ZodNullable<z.ZodString>;
1044
+ source_system_name: z.ZodNullable<z.ZodString>;
1045
+ originating_system_name: z.ZodNullable<z.ZodString>;
1046
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
1047
+ supplied_paths: z.ZodArray<z.ZodString>;
1048
+ }, z.core.$strict>>;
1049
+ market_dates: z.ZodOptional<z.ZodObject<{
1050
+ listing_contract: z.ZodObject<{
1051
+ value: z.ZodNullable<z.ZodString>;
1052
+ precision: z.ZodEnum<{
1053
+ unknown: "unknown";
1054
+ date: "date";
1055
+ instant: "instant";
1056
+ }>;
1057
+ }, z.core.$strict>;
1058
+ on_market: z.ZodObject<{
1059
+ value: z.ZodNullable<z.ZodString>;
1060
+ precision: z.ZodEnum<{
1061
+ unknown: "unknown";
1062
+ date: "date";
1063
+ instant: "instant";
1064
+ }>;
1065
+ }, z.core.$strict>;
1066
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
1067
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
1068
+ }, z.core.$strict>>;
1069
+ taxes: z.ZodOptional<z.ZodObject<{
1070
+ annual_amount: z.ZodNullable<z.ZodString>;
1071
+ currency: z.ZodNullable<z.ZodString>;
1072
+ year: z.ZodNullable<z.ZodNumber>;
1073
+ }, z.core.$strict>>;
1074
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
1075
+ level: z.ZodEnum<{
1076
+ elementary: "elementary";
1077
+ middle: "middle";
1078
+ high: "high";
1079
+ }>;
1080
+ name: z.ZodNullable<z.ZodString>;
1081
+ district: z.ZodNullable<z.ZodString>;
1082
+ }, z.core.$strict>>>;
1083
+ price_history: z.ZodOptional<z.ZodObject<{
1084
+ original_amount: z.ZodNullable<z.ZodString>;
1085
+ previous_amount: z.ZodNullable<z.ZodString>;
1086
+ low_amount: z.ZodNullable<z.ZodString>;
1087
+ currency: z.ZodNullable<z.ZodString>;
1088
+ original_currency: z.ZodNullable<z.ZodString>;
1089
+ previous_currency: z.ZodNullable<z.ZodString>;
1090
+ low_currency: z.ZodNullable<z.ZodString>;
1091
+ changed_at: z.ZodObject<{
1092
+ value: z.ZodNullable<z.ZodString>;
1093
+ precision: z.ZodEnum<{
1094
+ unknown: "unknown";
1095
+ date: "date";
1096
+ instant: "instant";
1097
+ }>;
1098
+ }, z.core.$strict>;
1099
+ }, z.core.$strict>>;
1100
+ virtual_tours: z.ZodOptional<z.ZodObject<{
1101
+ branded_url: z.ZodNullable<z.ZodURL>;
1102
+ unbranded_url: z.ZodNullable<z.ZodURL>;
1103
+ }, z.core.$strict>>;
1104
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1105
+ url: z.ZodURL;
1106
+ categories: z.ZodArray<z.ZodString>;
1107
+ order: z.ZodNumber;
1108
+ caption: z.ZodNullable<z.ZodString>;
1109
+ }, z.core.$strict>>>;
1110
+ professionals: z.ZodOptional<z.ZodObject<{
1111
+ agent: z.ZodObject<{
1112
+ full_name: z.ZodNullable<z.ZodString>;
1113
+ first_name: z.ZodNullable<z.ZodString>;
1114
+ last_name: z.ZodNullable<z.ZodString>;
1115
+ license: z.ZodNullable<z.ZodString>;
1116
+ }, z.core.$strict>;
1117
+ office: z.ZodObject<{
1118
+ key: z.ZodNullable<z.ZodString>;
1119
+ mls_id: z.ZodNullable<z.ZodString>;
1120
+ name: z.ZodNullable<z.ZodString>;
1121
+ broker_mls_id: z.ZodNullable<z.ZodString>;
1122
+ corporate_id: z.ZodNullable<z.ZodString>;
1123
+ main_office_id: z.ZodNullable<z.ZodString>;
1124
+ website_url: z.ZodNullable<z.ZodURL>;
1125
+ address: z.ZodObject<{
1126
+ street: z.ZodNullable<z.ZodString>;
1127
+ unit: z.ZodNullable<z.ZodString>;
1128
+ city: z.ZodNullable<z.ZodString>;
1129
+ region: z.ZodNullable<z.ZodString>;
1130
+ postal_code: z.ZodNullable<z.ZodString>;
1131
+ country: z.ZodNullable<z.ZodString>;
1132
+ }, z.core.$strict>;
1133
+ }, z.core.$strict>;
1134
+ brokerage: z.ZodObject<{
1135
+ name: z.ZodNullable<z.ZodString>;
1136
+ website_url: z.ZodNullable<z.ZodURL>;
1137
+ logo_url: z.ZodNullable<z.ZodURL>;
1138
+ address: z.ZodObject<{
1139
+ street: z.ZodNullable<z.ZodString>;
1140
+ unit: z.ZodNullable<z.ZodString>;
1141
+ city: z.ZodNullable<z.ZodString>;
1142
+ region: z.ZodNullable<z.ZodString>;
1143
+ postal_code: z.ZodNullable<z.ZodString>;
1144
+ country: z.ZodNullable<z.ZodString>;
1145
+ }, z.core.$strict>;
1146
+ }, z.core.$strict>;
1147
+ builder: z.ZodObject<{
1148
+ name: z.ZodNullable<z.ZodString>;
1149
+ }, z.core.$strict>;
1150
+ franchise: z.ZodNullable<z.ZodString>;
1151
+ }, z.core.$strict>>;
1152
+ permissions: z.ZodOptional<z.ZodObject<{
1153
+ internet_display: z.ZodNullable<z.ZodBoolean>;
1154
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
1155
+ address_display: z.ZodNullable<z.ZodBoolean>;
1156
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
1157
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
1158
+ }, z.core.$strict>>;
1159
+ }, z.core.$strict>;
1160
+ /** Contact routing is server-only and never embedded in public listing projections. */
1161
+ export declare const ListingContactsSchema: z.ZodObject<{
1162
+ professionals: z.ZodOptional<z.ZodObject<{
1163
+ agent: z.ZodObject<{
1164
+ email: z.ZodNullable<z.ZodEmail>;
1165
+ preferred_phone: z.ZodNullable<z.ZodString>;
1166
+ direct_phone: z.ZodNullable<z.ZodString>;
1167
+ office_phone: z.ZodNullable<z.ZodString>;
1168
+ fax: z.ZodNullable<z.ZodString>;
1169
+ website_url: z.ZodNullable<z.ZodURL>;
1170
+ }, z.core.$strict>;
1171
+ office: z.ZodObject<{
1172
+ email: z.ZodNullable<z.ZodEmail>;
1173
+ phone: z.ZodNullable<z.ZodString>;
1174
+ }, z.core.$strict>;
1175
+ brokerage: z.ZodObject<{
1176
+ email: z.ZodNullable<z.ZodEmail>;
1177
+ phone: z.ZodNullable<z.ZodString>;
1178
+ }, z.core.$strict>;
1179
+ builder: z.ZodObject<{
1180
+ email: z.ZodNullable<z.ZodEmail>;
1181
+ phone: z.ZodNullable<z.ZodString>;
1182
+ fax: z.ZodNullable<z.ZodString>;
1183
+ }, z.core.$strict>;
1184
+ }, z.core.$strict>>;
1185
+ source_fields: z.ZodOptional<z.ZodObject<{
1186
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
1187
+ }, z.core.$strict>>;
1188
+ listing_id: z.ZodString;
1189
+ agent_name: z.ZodNullable<z.ZodString>;
1190
+ agent_email: z.ZodNullable<z.ZodEmail>;
1191
+ agent_phone: z.ZodNullable<z.ZodString>;
1192
+ agent_license: z.ZodNullable<z.ZodString>;
1193
+ agent_website: z.ZodNullable<z.ZodURL>;
1194
+ lead_routing_email: z.ZodNullable<z.ZodEmail>;
1195
+ preferred_email: z.ZodNullable<z.ZodEmail>;
1196
+ }, z.core.$strict>;
1197
+ export declare const AgentSchema: z.ZodObject<{
1198
+ id: z.ZodString;
1199
+ source_identities: z.ZodArray<z.ZodObject<{
1200
+ source: z.ZodString;
1201
+ key: z.ZodString;
1202
+ }, z.core.$strict>>;
1203
+ name: z.ZodNullable<z.ZodString>;
1204
+ first_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1205
+ last_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1206
+ email: z.ZodOptional<z.ZodNullable<z.ZodEmail>>;
1207
+ office_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1208
+ primary_contact_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1209
+ website_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1210
+ listings_count_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1211
+ listings_count_active: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1212
+ mls_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1213
+ license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1214
+ fax: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1215
+ profile_observation: z.ZodOptional<z.ZodObject<{
1216
+ observed_at: z.ZodISODateTime;
1217
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
1218
+ basis: z.ZodLiteral<"retained_source_profile">;
1219
+ }, z.core.$strict>>;
1220
+ inventory: z.ZodOptional<z.ZodObject<{
1221
+ as_of: z.ZodISODateTime;
1222
+ source: z.ZodString;
1223
+ basis: z.ZodLiteral<"current_visible_catalog">;
1224
+ coverage: z.ZodLiteral<"imported_inventory_only">;
1225
+ }, z.core.$strict>>;
1226
+ }, z.core.$strict>;
1227
+ export declare const ListingQuery: z.ZodObject<{
1228
+ cursor: z.ZodOptional<z.ZodString>;
1229
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
1230
+ dataset_id: z.ZodOptional<z.ZodString>;
1231
+ transaction_type: z.ZodOptional<z.ZodEnum<{
1232
+ for_sale: "for_sale";
1233
+ for_rent: "for_rent";
1234
+ }>>;
1235
+ price_period: z.ZodOptional<z.ZodString>;
1236
+ profile: z.ZodOptional<z.ZodEnum<{
1237
+ catalog: "catalog";
1238
+ portal_active: "portal_active";
1239
+ }>>;
1240
+ sort: z.ZodOptional<z.ZodEnum<{
1241
+ id: "id";
1242
+ price_asc: "price_asc";
1243
+ price_desc: "price_desc";
1244
+ newest: "newest";
1245
+ bedrooms_desc: "bedrooms_desc";
1246
+ source_modified_desc: "source_modified_desc";
1247
+ }>>;
1248
+ include_total: z.ZodOptional<z.ZodUnion<readonly [z.ZodBoolean, z.ZodEnum<{
1249
+ true: "true";
1250
+ false: "false";
1251
+ }>]>>;
1252
+ city: z.ZodOptional<z.ZodString>;
1253
+ region: z.ZodOptional<z.ZodString>;
1254
+ postal_code: z.ZodOptional<z.ZodString>;
1255
+ property_type: z.ZodOptional<z.ZodString>;
1256
+ currency: z.ZodOptional<z.ZodString>;
1257
+ max_bedrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1258
+ min_bathrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1259
+ max_bathrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1260
+ min_living_area: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1261
+ max_living_area: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1262
+ living_area_unit: z.ZodOptional<z.ZodEnum<{
1263
+ sqft: "sqft";
1264
+ sqm: "sqm";
1265
+ }>>;
1266
+ q: z.ZodOptional<z.ZodString>;
1267
+ address_q: z.ZodOptional<z.ZodString>;
1268
+ market_status: z.ZodOptional<z.ZodEnum<{
1269
+ pending: "pending";
1270
+ unknown: "unknown";
1271
+ expired: "expired";
1272
+ active: "active";
1273
+ active_under_contract: "active_under_contract";
1274
+ sold: "sold";
1275
+ withdrawn: "withdrawn";
1276
+ }>>;
1277
+ agent_id: z.ZodOptional<z.ZodString>;
1278
+ party_id: z.ZodOptional<z.ZodString>;
1279
+ inventory_basis: z.ZodOptional<z.ZodLiteral<"listing_representation">>;
1280
+ mls_number: z.ZodOptional<z.ZodString>;
1281
+ modified_since: z.ZodOptional<z.ZodISODateTime>;
1282
+ source_modified_since: z.ZodOptional<z.ZodISODateTime>;
1283
+ min_price: z.ZodOptional<z.ZodString>;
1284
+ max_price: z.ZodOptional<z.ZodString>;
1285
+ min_bedrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1286
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
1287
+ bbox: z.ZodOptional<z.ZodString>;
1288
+ }, z.core.$strict>;
1289
+ export declare const IdentityQuery: z.ZodObject<{
1290
+ source: z.ZodString;
1291
+ key: z.ZodString;
1292
+ }, z.core.$strict>;
1293
+ export declare const IdentitySchema: z.ZodObject<{
1294
+ source: z.ZodString;
1295
+ key: z.ZodString;
1296
+ listing_id: z.ZodString;
1297
+ episode_id: z.ZodString;
1298
+ }, z.core.$strict>;
1299
+ export declare const AgentIdentitySchema: z.ZodObject<{
1300
+ source: z.ZodString;
1301
+ key: z.ZodString;
1302
+ agent_id: z.ZodString;
1303
+ }, z.core.$strict>;
1304
+ export declare function page<T extends z.ZodType>(item: T): z.ZodObject<{
1305
+ data: z.ZodArray<T>;
1306
+ next_cursor: z.ZodNullable<z.ZodString>;
1307
+ has_more: z.ZodBoolean;
1308
+ meta: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
1309
+ }, z.core.$strict>;
1310
+ /** Operational source health is live metadata; immutable listing snapshots keep their original observation times. */
1311
+ export declare const CatalogSourceFreshnessSchema: z.ZodObject<{
1312
+ source: z.ZodString;
1313
+ last_completed_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
1314
+ last_full_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
1315
+ state: z.ZodEnum<{
1316
+ stale: "stale";
1317
+ fresh: "fresh";
1318
+ never_completed: "never_completed";
1319
+ }>;
1320
+ freshness_window_seconds: z.ZodNumber;
1321
+ full_enumeration_window_seconds: z.ZodOptional<z.ZodNumber>;
1322
+ last_contact_at: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
1323
+ last_contact_status: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1324
+ refresh: z.ZodOptional<z.ZodObject<{
1325
+ state: z.ZodEnum<{
1326
+ on_schedule: "on_schedule";
1327
+ delayed: "delayed";
1328
+ blocked: "blocked";
1329
+ }>;
1330
+ cadence_seconds: z.ZodNumber;
1331
+ next_due_at: z.ZodISODateTime;
1332
+ phase: z.ZodNullable<z.ZodString>;
1333
+ last_attempt_at: z.ZodNullable<z.ZodISODateTime>;
1334
+ last_progress_at: z.ZodNullable<z.ZodISODateTime>;
1335
+ last_error_at: z.ZodNullable<z.ZodISODateTime>;
1336
+ error_code: z.ZodNullable<z.ZodString>;
1337
+ consecutive_failures: z.ZodNumber;
1338
+ }, z.core.$strict>>;
1339
+ }, z.core.$strict>;
1340
+ export declare const CatalogHealthQuery: z.ZodObject<{
1341
+ dataset_id: z.ZodString;
1342
+ }, z.core.$strict>;
1343
+ export declare const CatalogHealthSchema: z.ZodObject<{
1344
+ dataset_id: z.ZodString;
1345
+ source_freshness: z.ZodArray<z.ZodObject<{
1346
+ source: z.ZodString;
1347
+ last_completed_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
1348
+ last_full_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
1349
+ state: z.ZodEnum<{
1350
+ stale: "stale";
1351
+ fresh: "fresh";
1352
+ never_completed: "never_completed";
1353
+ }>;
1354
+ freshness_window_seconds: z.ZodNumber;
1355
+ full_enumeration_window_seconds: z.ZodOptional<z.ZodNumber>;
1356
+ last_contact_at: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
1357
+ last_contact_status: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1358
+ refresh: z.ZodOptional<z.ZodObject<{
1359
+ state: z.ZodEnum<{
1360
+ on_schedule: "on_schedule";
1361
+ delayed: "delayed";
1362
+ blocked: "blocked";
1363
+ }>;
1364
+ cadence_seconds: z.ZodNumber;
1365
+ next_due_at: z.ZodISODateTime;
1366
+ phase: z.ZodNullable<z.ZodString>;
1367
+ last_attempt_at: z.ZodNullable<z.ZodISODateTime>;
1368
+ last_progress_at: z.ZodNullable<z.ZodISODateTime>;
1369
+ last_error_at: z.ZodNullable<z.ZodISODateTime>;
1370
+ error_code: z.ZodNullable<z.ZodString>;
1371
+ consecutive_failures: z.ZodNumber;
1372
+ }, z.core.$strict>>;
1373
+ }, z.core.$strict>>;
1374
+ inventory: z.ZodOptional<z.ZodObject<{
1375
+ state: z.ZodEnum<{
1376
+ partial: "partial";
1377
+ complete: "complete";
1378
+ }>;
1379
+ source_observed_at: z.ZodNullable<z.ZodISODateTime>;
1380
+ expected_source_records: z.ZodNullable<z.ZodNumber>;
1381
+ processed_source_records: z.ZodNullable<z.ZodNumber>;
1382
+ valid_until: z.ZodISODateTime;
1383
+ }, z.core.$strict>>;
1384
+ checked_at: z.ZodISODateTime;
1385
+ }, z.core.$strict>;
1386
+ export declare const ListingPage: z.ZodObject<{
1387
+ data: z.ZodArray<z.ZodObject<{
1388
+ id: z.ZodString;
1389
+ episode_id: z.ZodString;
1390
+ revision: z.ZodString;
1391
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1392
+ source_identities: z.ZodArray<z.ZodObject<{
1393
+ source: z.ZodString;
1394
+ key: z.ZodString;
1395
+ }, z.core.$strict>>;
1396
+ market_status: z.ZodEnum<{
1397
+ pending: "pending";
1398
+ unknown: "unknown";
1399
+ expired: "expired";
1400
+ active: "active";
1401
+ active_under_contract: "active_under_contract";
1402
+ sold: "sold";
1403
+ withdrawn: "withdrawn";
1404
+ }>;
1405
+ source_availability: z.ZodEnum<{
1406
+ present: "present";
1407
+ removed_unknown: "removed_unknown";
1408
+ }>;
1409
+ display_eligibility: z.ZodBoolean;
1410
+ price: z.ZodNullable<z.ZodObject<{
1411
+ amount: z.ZodString;
1412
+ currency: z.ZodString;
1413
+ period: z.ZodNullable<z.ZodString>;
1414
+ }, z.core.$strict>>;
1415
+ transaction_type: z.ZodOptional<z.ZodEnum<{
1416
+ unknown: "unknown";
1417
+ conflicting: "conflicting";
1418
+ for_sale: "for_sale";
1419
+ for_rent: "for_rent";
1420
+ }>>;
1421
+ price_period_state: z.ZodOptional<z.ZodEnum<{
1422
+ unknown: "unknown";
1423
+ supported: "supported";
1424
+ not_stated: "not_stated";
1425
+ conflicting: "conflicting";
1426
+ }>>;
1427
+ address: z.ZodObject<{
1428
+ street: z.ZodNullable<z.ZodString>;
1429
+ unit: z.ZodNullable<z.ZodString>;
1430
+ city: z.ZodNullable<z.ZodString>;
1431
+ region: z.ZodNullable<z.ZodString>;
1432
+ postal_code: z.ZodNullable<z.ZodString>;
1433
+ country: z.ZodNullable<z.ZodString>;
1434
+ }, z.core.$strict>;
1435
+ listing_agent_ids: z.ZodArray<z.ZodString>;
1436
+ description: z.ZodNullable<z.ZodString>;
1437
+ photos: z.ZodArray<z.ZodString>;
1438
+ photo_count: z.ZodOptional<z.ZodNumber>;
1439
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1440
+ url: z.ZodURL;
1441
+ order: z.ZodNumber;
1442
+ caption: z.ZodNullable<z.ZodString>;
1443
+ width: z.ZodNullable<z.ZodNumber>;
1444
+ height: z.ZodNullable<z.ZodNumber>;
1445
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
1446
+ delivery: z.ZodEnum<{
1447
+ source_url: "source_url";
1448
+ hosted: "hosted";
1449
+ }>;
1450
+ renditions: z.ZodOptional<z.ZodObject<{
1451
+ thumbnail: z.ZodObject<{
1452
+ url: z.ZodURL;
1453
+ max_width: z.ZodNumber;
1454
+ max_height: z.ZodNumber;
1455
+ }, z.core.$strict>;
1456
+ map: z.ZodObject<{
1457
+ url: z.ZodURL;
1458
+ max_width: z.ZodNumber;
1459
+ max_height: z.ZodNumber;
1460
+ }, z.core.$strict>;
1461
+ card: z.ZodObject<{
1462
+ url: z.ZodURL;
1463
+ max_width: z.ZodNumber;
1464
+ max_height: z.ZodNumber;
1465
+ }, z.core.$strict>;
1466
+ gallery: z.ZodObject<{
1467
+ url: z.ZodURL;
1468
+ max_width: z.ZodNumber;
1469
+ max_height: z.ZodNumber;
1470
+ }, z.core.$strict>;
1471
+ }, z.core.$strict>>;
1472
+ }, z.core.$strict>>>;
1473
+ attribution: z.ZodOptional<z.ZodObject<{
1474
+ agent_name: z.ZodNullable<z.ZodString>;
1475
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1476
+ office_name: z.ZodNullable<z.ZodString>;
1477
+ office_key: z.ZodNullable<z.ZodString>;
1478
+ office_phone: z.ZodNullable<z.ZodString>;
1479
+ office_website: z.ZodNullable<z.ZodURL>;
1480
+ broker_name: z.ZodNullable<z.ZodString>;
1481
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1482
+ originating_system: z.ZodNullable<z.ZodString>;
1483
+ }, z.core.$strict>>;
1484
+ property_details: z.ZodOptional<z.ZodObject<{
1485
+ category: z.ZodNullable<z.ZodString>;
1486
+ sub_type: z.ZodNullable<z.ZodString>;
1487
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
1488
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
1489
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1490
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1491
+ stories: z.ZodNullable<z.ZodNumber>;
1492
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
1493
+ parking_total: z.ZodNullable<z.ZodNumber>;
1494
+ county: z.ZodNullable<z.ZodString>;
1495
+ subdivision: z.ZodNullable<z.ZodString>;
1496
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
1497
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
1498
+ AssociationYN: "AssociationYN";
1499
+ AttachedGarageYN: "AttachedGarageYN";
1500
+ BasementYN: "BasementYN";
1501
+ CarportYN: "CarportYN";
1502
+ CoolingYN: "CoolingYN";
1503
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
1504
+ FireplaceYN: "FireplaceYN";
1505
+ GarageYN: "GarageYN";
1506
+ HeatingYN: "HeatingYN";
1507
+ NewConstructionYN: "NewConstructionYN";
1508
+ PoolPrivateYN: "PoolPrivateYN";
1509
+ SpaYN: "SpaYN";
1510
+ WaterfrontYN: "WaterfrontYN";
1511
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
1512
+ Dock: "Dock";
1513
+ }> & z.core.$partial, z.ZodBoolean>>;
1514
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
1515
+ kind: z.ZodEnum<{
1516
+ association: "association";
1517
+ association_secondary: "association_secondary";
1518
+ }>;
1519
+ amount: z.ZodNullable<z.ZodString>;
1520
+ amount_state: z.ZodEnum<{
1521
+ unknown: "unknown";
1522
+ supported: "supported";
1523
+ not_stated: "not_stated";
1524
+ }>;
1525
+ currency: z.ZodNullable<z.ZodString>;
1526
+ currency_source: z.ZodNullable<z.ZodEnum<{
1527
+ field: "field";
1528
+ source_default: "source_default";
1529
+ }>>;
1530
+ currency_state: z.ZodEnum<{
1531
+ unknown: "unknown";
1532
+ supported: "supported";
1533
+ not_stated: "not_stated";
1534
+ }>;
1535
+ period: z.ZodNullable<z.ZodEnum<{
1536
+ year: "year";
1537
+ day: "day";
1538
+ week: "week";
1539
+ month: "month";
1540
+ quarter: "quarter";
1541
+ half_year: "half_year";
1542
+ one_time: "one_time";
1543
+ }>>;
1544
+ period_state: z.ZodEnum<{
1545
+ unknown: "unknown";
1546
+ supported: "supported";
1547
+ not_stated: "not_stated";
1548
+ }>;
1549
+ source_paths: z.ZodArray<z.ZodString>;
1550
+ }, z.core.$strict>>>;
1551
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
1552
+ type: z.ZodNullable<z.ZodString>;
1553
+ level: z.ZodNullable<z.ZodString>;
1554
+ features: z.ZodArray<z.ZodString>;
1555
+ dimensions: z.ZodNullable<z.ZodString>;
1556
+ length: z.ZodNullable<z.ZodNumber>;
1557
+ width: z.ZodNullable<z.ZodNumber>;
1558
+ unit: z.ZodNullable<z.ZodString>;
1559
+ source_paths: z.ZodArray<z.ZodString>;
1560
+ }, z.core.$strict>>>;
1561
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1562
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1563
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1564
+ }, z.core.$strict>>;
1565
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1566
+ property_type: z.ZodNullable<z.ZodString>;
1567
+ bedrooms: z.ZodNullable<z.ZodNumber>;
1568
+ bathrooms: z.ZodNullable<z.ZodNumber>;
1569
+ living_area: z.ZodNullable<z.ZodNumber>;
1570
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1571
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1572
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1573
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1574
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1575
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1576
+ location: z.ZodOptional<z.ZodObject<{
1577
+ state: z.ZodEnum<{
1578
+ source: "source";
1579
+ pending: "pending";
1580
+ resolved: "resolved";
1581
+ coarse: "coarse";
1582
+ unavailable: "unavailable";
1583
+ stale: "stale";
1584
+ suppressed: "suppressed";
1585
+ }>;
1586
+ origin: z.ZodNullable<z.ZodEnum<{
1587
+ source: "source";
1588
+ geocoded: "geocoded";
1589
+ }>>;
1590
+ precision: z.ZodEnum<{
1591
+ source_unknown: "source_unknown";
1592
+ parcel: "parcel";
1593
+ street: "street";
1594
+ area: "area";
1595
+ unknown: "unknown";
1596
+ }>;
1597
+ map_eligible: z.ZodBoolean;
1598
+ coordinates: z.ZodNullable<z.ZodObject<{
1599
+ latitude: z.ZodNumber;
1600
+ longitude: z.ZodNumber;
1601
+ }, z.core.$strip>>;
1602
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
1603
+ accuracy_type: z.ZodNullable<z.ZodString>;
1604
+ match_type: z.ZodNullable<z.ZodString>;
1605
+ provider: z.ZodNullable<z.ZodString>;
1606
+ provider_version: z.ZodNullable<z.ZodString>;
1607
+ policy_version: z.ZodString;
1608
+ source: z.ZodNullable<z.ZodString>;
1609
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
1610
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
1611
+ country_code: z.ZodNullable<z.ZodString>;
1612
+ region_code: z.ZodNullable<z.ZodString>;
1613
+ timezone: z.ZodNullable<z.ZodString>;
1614
+ enrichment: z.ZodNullable<z.ZodObject<{
1615
+ provider: z.ZodString;
1616
+ provider_version: z.ZodString;
1617
+ resolved_at: z.ZodISODateTime;
1618
+ valid_until: z.ZodISODateTime;
1619
+ fields: z.ZodArray<z.ZodEnum<{
1620
+ timezone: "timezone";
1621
+ census2025: "census2025";
1622
+ }>>;
1623
+ }, z.core.$strip>>;
1624
+ geography: z.ZodNullable<z.ZodObject<{
1625
+ census_year: z.ZodNumber;
1626
+ state_fips: z.ZodNullable<z.ZodString>;
1627
+ county_fips: z.ZodNullable<z.ZodString>;
1628
+ tract_geoid: z.ZodNullable<z.ZodString>;
1629
+ block_geoid: z.ZodNullable<z.ZodString>;
1630
+ place_fips: z.ZodNullable<z.ZodString>;
1631
+ cbsa_code: z.ZodNullable<z.ZodString>;
1632
+ source: z.ZodNullable<z.ZodString>;
1633
+ }, z.core.$strip>>;
1634
+ issue: z.ZodNullable<z.ZodEnum<{
1635
+ pending: "pending";
1636
+ invalid_source_point: "invalid_source_point";
1637
+ insufficient_address: "insufficient_address";
1638
+ unsupported_country: "unsupported_country";
1639
+ no_match: "no_match";
1640
+ low_quality: "low_quality";
1641
+ provider_failure: "provider_failure";
1642
+ expired: "expired";
1643
+ display_restricted: "display_restricted";
1644
+ }>>;
1645
+ }, z.core.$strip>>;
1646
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1647
+ source_url: z.ZodNullable<z.ZodString>;
1648
+ listed_date: z.ZodNullable<z.ZodString>;
1649
+ listed_precision: z.ZodEnum<{
1650
+ unknown: "unknown";
1651
+ date: "date";
1652
+ instant: "instant";
1653
+ }>;
1654
+ open_houses: z.ZodArray<z.ZodObject<{
1655
+ id: z.ZodString;
1656
+ start_at: z.ZodString;
1657
+ end_at: z.ZodNullable<z.ZodString>;
1658
+ timezone: z.ZodNullable<z.ZodString>;
1659
+ status: z.ZodEnum<{
1660
+ scheduled: "scheduled";
1661
+ cancelled: "cancelled";
1662
+ }>;
1663
+ }, z.core.$strict>>;
1664
+ classifications: z.ZodArray<z.ZodObject<{
1665
+ attribute: z.ZodString;
1666
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
1667
+ evidence_state: z.ZodEnum<{
1668
+ supported: "supported";
1669
+ not_stated: "not_stated";
1670
+ conflicting: "conflicting";
1671
+ explicitly_absent: "explicitly_absent";
1672
+ }>;
1673
+ origin: z.ZodEnum<{
1674
+ source_structured: "source_structured";
1675
+ source_text_interpreted: "source_text_interpreted";
1676
+ }>;
1677
+ evidence_refs: z.ZodArray<z.ZodString>;
1678
+ input_fingerprint: z.ZodString;
1679
+ taxonomy_version: z.ZodString;
1680
+ evaluation_id: z.ZodString;
1681
+ freshness: z.ZodEnum<{
1682
+ pending: "pending";
1683
+ current: "current";
1684
+ invalidated: "invalidated";
1685
+ failed: "failed";
1686
+ }>;
1687
+ }, z.core.$strict>>;
1688
+ display: z.ZodObject<{
1689
+ address_allowed: z.ZodBoolean;
1690
+ disclaimer: z.ZodNullable<z.ZodString>;
1691
+ }, z.core.$strict>;
1692
+ freshness: z.ZodObject<{
1693
+ last_seen_at: z.ZodISODateTime;
1694
+ published_at: z.ZodISODateTime;
1695
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
1696
+ }, z.core.$strict>;
1697
+ source_amenities: z.ZodOptional<z.ZodObject<{
1698
+ version: z.ZodLiteral<"source-amenities-v1">;
1699
+ values: z.ZodRecord<z.ZodEnum<{
1700
+ hardwood: "hardwood";
1701
+ solar: "solar";
1702
+ ev_charger: "ev_charger";
1703
+ rv_parking: "rv_parking";
1704
+ view: "view";
1705
+ }>, z.ZodObject<{
1706
+ value: z.ZodNullable<z.ZodBoolean>;
1707
+ state: z.ZodEnum<{
1708
+ supported: "supported";
1709
+ not_stated: "not_stated";
1710
+ conflicting: "conflicting";
1711
+ }>;
1712
+ source_paths: z.ZodArray<z.ZodString>;
1713
+ }, z.core.$strict>>;
1714
+ }, z.core.$strict>>;
1715
+ search_document: z.ZodOptional<z.ZodObject<{
1716
+ version: z.ZodLiteral<"catalog-search-text-v1">;
1717
+ text: z.ZodString;
1718
+ }, z.core.$strict>>;
1719
+ content_hash: z.ZodOptional<z.ZodString>;
1720
+ source_fields: z.ZodOptional<z.ZodObject<{
1721
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
1722
+ }, z.core.$strict>>;
1723
+ source_metadata: z.ZodOptional<z.ZodObject<{
1724
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
1725
+ parser_version: z.ZodString;
1726
+ exposure_version: z.ZodString;
1727
+ source_system_id: z.ZodNullable<z.ZodString>;
1728
+ source_system_name: z.ZodNullable<z.ZodString>;
1729
+ originating_system_name: z.ZodNullable<z.ZodString>;
1730
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
1731
+ supplied_paths: z.ZodArray<z.ZodString>;
1732
+ }, z.core.$strict>>;
1733
+ market_dates: z.ZodOptional<z.ZodObject<{
1734
+ listing_contract: z.ZodObject<{
1735
+ value: z.ZodNullable<z.ZodString>;
1736
+ precision: z.ZodEnum<{
1737
+ unknown: "unknown";
1738
+ date: "date";
1739
+ instant: "instant";
1740
+ }>;
1741
+ }, z.core.$strict>;
1742
+ on_market: z.ZodObject<{
1743
+ value: z.ZodNullable<z.ZodString>;
1744
+ precision: z.ZodEnum<{
1745
+ unknown: "unknown";
1746
+ date: "date";
1747
+ instant: "instant";
1748
+ }>;
1749
+ }, z.core.$strict>;
1750
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
1751
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
1752
+ }, z.core.$strict>>;
1753
+ taxes: z.ZodOptional<z.ZodObject<{
1754
+ annual_amount: z.ZodNullable<z.ZodString>;
1755
+ currency: z.ZodNullable<z.ZodString>;
1756
+ year: z.ZodNullable<z.ZodNumber>;
1757
+ }, z.core.$strict>>;
1758
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
1759
+ level: z.ZodEnum<{
1760
+ elementary: "elementary";
1761
+ middle: "middle";
1762
+ high: "high";
1763
+ }>;
1764
+ name: z.ZodNullable<z.ZodString>;
1765
+ district: z.ZodNullable<z.ZodString>;
1766
+ }, z.core.$strict>>>;
1767
+ price_history: z.ZodOptional<z.ZodObject<{
1768
+ original_amount: z.ZodNullable<z.ZodString>;
1769
+ previous_amount: z.ZodNullable<z.ZodString>;
1770
+ low_amount: z.ZodNullable<z.ZodString>;
1771
+ currency: z.ZodNullable<z.ZodString>;
1772
+ original_currency: z.ZodNullable<z.ZodString>;
1773
+ previous_currency: z.ZodNullable<z.ZodString>;
1774
+ low_currency: z.ZodNullable<z.ZodString>;
1775
+ changed_at: z.ZodObject<{
1776
+ value: z.ZodNullable<z.ZodString>;
1777
+ precision: z.ZodEnum<{
1778
+ unknown: "unknown";
1779
+ date: "date";
1780
+ instant: "instant";
1781
+ }>;
1782
+ }, z.core.$strict>;
1783
+ }, z.core.$strict>>;
1784
+ virtual_tours: z.ZodOptional<z.ZodObject<{
1785
+ branded_url: z.ZodNullable<z.ZodURL>;
1786
+ unbranded_url: z.ZodNullable<z.ZodURL>;
1787
+ }, z.core.$strict>>;
1788
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1789
+ url: z.ZodURL;
1790
+ categories: z.ZodArray<z.ZodString>;
1791
+ order: z.ZodNumber;
1792
+ caption: z.ZodNullable<z.ZodString>;
1793
+ }, z.core.$strict>>>;
1794
+ professionals: z.ZodOptional<z.ZodObject<{
1795
+ agent: z.ZodObject<{
1796
+ full_name: z.ZodNullable<z.ZodString>;
1797
+ first_name: z.ZodNullable<z.ZodString>;
1798
+ last_name: z.ZodNullable<z.ZodString>;
1799
+ license: z.ZodNullable<z.ZodString>;
1800
+ }, z.core.$strict>;
1801
+ office: z.ZodObject<{
1802
+ key: z.ZodNullable<z.ZodString>;
1803
+ mls_id: z.ZodNullable<z.ZodString>;
1804
+ name: z.ZodNullable<z.ZodString>;
1805
+ broker_mls_id: z.ZodNullable<z.ZodString>;
1806
+ corporate_id: z.ZodNullable<z.ZodString>;
1807
+ main_office_id: z.ZodNullable<z.ZodString>;
1808
+ website_url: z.ZodNullable<z.ZodURL>;
1809
+ address: z.ZodObject<{
1810
+ street: z.ZodNullable<z.ZodString>;
1811
+ unit: z.ZodNullable<z.ZodString>;
1812
+ city: z.ZodNullable<z.ZodString>;
1813
+ region: z.ZodNullable<z.ZodString>;
1814
+ postal_code: z.ZodNullable<z.ZodString>;
1815
+ country: z.ZodNullable<z.ZodString>;
1816
+ }, z.core.$strict>;
1817
+ }, z.core.$strict>;
1818
+ brokerage: z.ZodObject<{
1819
+ name: z.ZodNullable<z.ZodString>;
1820
+ website_url: z.ZodNullable<z.ZodURL>;
1821
+ logo_url: z.ZodNullable<z.ZodURL>;
1822
+ address: z.ZodObject<{
1823
+ street: z.ZodNullable<z.ZodString>;
1824
+ unit: z.ZodNullable<z.ZodString>;
1825
+ city: z.ZodNullable<z.ZodString>;
1826
+ region: z.ZodNullable<z.ZodString>;
1827
+ postal_code: z.ZodNullable<z.ZodString>;
1828
+ country: z.ZodNullable<z.ZodString>;
1829
+ }, z.core.$strict>;
1830
+ }, z.core.$strict>;
1831
+ builder: z.ZodObject<{
1832
+ name: z.ZodNullable<z.ZodString>;
1833
+ }, z.core.$strict>;
1834
+ franchise: z.ZodNullable<z.ZodString>;
1835
+ }, z.core.$strict>>;
1836
+ permissions: z.ZodOptional<z.ZodObject<{
1837
+ internet_display: z.ZodNullable<z.ZodBoolean>;
1838
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
1839
+ address_display: z.ZodNullable<z.ZodBoolean>;
1840
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
1841
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
1842
+ }, z.core.$strict>>;
1843
+ }, z.core.$strict>>;
1844
+ next_cursor: z.ZodNullable<z.ZodString>;
1845
+ has_more: z.ZodBoolean;
1846
+ meta: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
1847
+ }, z.core.$strict>;
1848
+ export declare const ListingMapQuery: z.ZodObject<{
1849
+ city: z.ZodOptional<z.ZodString>;
1850
+ region: z.ZodOptional<z.ZodString>;
1851
+ postal_code: z.ZodOptional<z.ZodString>;
1852
+ currency: z.ZodOptional<z.ZodString>;
1853
+ market_status: z.ZodOptional<z.ZodEnum<{
1854
+ pending: "pending";
1855
+ unknown: "unknown";
1856
+ expired: "expired";
1857
+ active: "active";
1858
+ active_under_contract: "active_under_contract";
1859
+ sold: "sold";
1860
+ withdrawn: "withdrawn";
1861
+ }>>;
1862
+ transaction_type: z.ZodOptional<z.ZodEnum<{
1863
+ for_sale: "for_sale";
1864
+ for_rent: "for_rent";
1865
+ }>>;
1866
+ features: z.ZodOptional<z.ZodArray<z.ZodString>>;
1867
+ property_type: z.ZodOptional<z.ZodString>;
1868
+ living_area_unit: z.ZodOptional<z.ZodEnum<{
1869
+ sqft: "sqft";
1870
+ sqm: "sqm";
1871
+ }>>;
1872
+ mls_number: z.ZodOptional<z.ZodString>;
1873
+ inventory_basis: z.ZodOptional<z.ZodLiteral<"listing_representation">>;
1874
+ dataset_id: z.ZodOptional<z.ZodString>;
1875
+ q: z.ZodOptional<z.ZodString>;
1876
+ party_id: z.ZodOptional<z.ZodString>;
1877
+ price_period: z.ZodOptional<z.ZodString>;
1878
+ profile: z.ZodOptional<z.ZodEnum<{
1879
+ catalog: "catalog";
1880
+ portal_active: "portal_active";
1881
+ }>>;
1882
+ max_bedrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1883
+ min_bathrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1884
+ max_bathrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1885
+ min_living_area: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1886
+ max_living_area: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1887
+ address_q: z.ZodOptional<z.ZodString>;
1888
+ agent_id: z.ZodOptional<z.ZodString>;
1889
+ modified_since: z.ZodOptional<z.ZodISODateTime>;
1890
+ source_modified_since: z.ZodOptional<z.ZodISODateTime>;
1891
+ min_price: z.ZodOptional<z.ZodString>;
1892
+ max_price: z.ZodOptional<z.ZodString>;
1893
+ min_bedrooms: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
1894
+ bbox: z.ZodString;
1895
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
1896
+ }, z.core.$strict>;
1897
+ export declare const ListingMapSchema: z.ZodObject<{
1898
+ data: z.ZodArray<z.ZodObject<{
1899
+ id: z.ZodString;
1900
+ latitude: z.ZodNumber;
1901
+ longitude: z.ZodNumber;
1902
+ price: z.ZodNullable<z.ZodObject<{
1903
+ amount: z.ZodString;
1904
+ currency: z.ZodString;
1905
+ period: z.ZodNullable<z.ZodString>;
1906
+ }, z.core.$strict>>;
1907
+ property_type: z.ZodNullable<z.ZodString>;
1908
+ market_status: z.ZodEnum<{
1909
+ pending: "pending";
1910
+ unknown: "unknown";
1911
+ expired: "expired";
1912
+ active: "active";
1913
+ active_under_contract: "active_under_contract";
1914
+ sold: "sold";
1915
+ withdrawn: "withdrawn";
1916
+ }>;
1917
+ }, z.core.$strict>>;
1918
+ total: z.ZodNumber;
1919
+ truncated: z.ZodBoolean;
1920
+ meta: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
1921
+ }, z.core.$strict>;
1922
+ export declare const SimilarListingQuery: z.ZodObject<{
1923
+ id: z.ZodString;
1924
+ dataset_id: z.ZodOptional<z.ZodString>;
1925
+ profile: z.ZodOptional<z.ZodEnum<{
1926
+ catalog: "catalog";
1927
+ portal_active: "portal_active";
1928
+ }>>;
1929
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
1930
+ }, z.core.$strict>;
1931
+ export declare const SimilarListingsSchema: z.ZodObject<{
1932
+ data: z.ZodArray<z.ZodObject<{
1933
+ listing: z.ZodObject<{
1934
+ id: z.ZodString;
1935
+ episode_id: z.ZodString;
1936
+ revision: z.ZodString;
1937
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1938
+ source_identities: z.ZodArray<z.ZodObject<{
1939
+ source: z.ZodString;
1940
+ key: z.ZodString;
1941
+ }, z.core.$strict>>;
1942
+ market_status: z.ZodEnum<{
1943
+ pending: "pending";
1944
+ unknown: "unknown";
1945
+ expired: "expired";
1946
+ active: "active";
1947
+ active_under_contract: "active_under_contract";
1948
+ sold: "sold";
1949
+ withdrawn: "withdrawn";
1950
+ }>;
1951
+ source_availability: z.ZodEnum<{
1952
+ present: "present";
1953
+ removed_unknown: "removed_unknown";
1954
+ }>;
1955
+ display_eligibility: z.ZodBoolean;
1956
+ price: z.ZodNullable<z.ZodObject<{
1957
+ amount: z.ZodString;
1958
+ currency: z.ZodString;
1959
+ period: z.ZodNullable<z.ZodString>;
1960
+ }, z.core.$strict>>;
1961
+ transaction_type: z.ZodOptional<z.ZodEnum<{
1962
+ unknown: "unknown";
1963
+ conflicting: "conflicting";
1964
+ for_sale: "for_sale";
1965
+ for_rent: "for_rent";
1966
+ }>>;
1967
+ price_period_state: z.ZodOptional<z.ZodEnum<{
1968
+ unknown: "unknown";
1969
+ supported: "supported";
1970
+ not_stated: "not_stated";
1971
+ conflicting: "conflicting";
1972
+ }>>;
1973
+ address: z.ZodObject<{
1974
+ street: z.ZodNullable<z.ZodString>;
1975
+ unit: z.ZodNullable<z.ZodString>;
1976
+ city: z.ZodNullable<z.ZodString>;
1977
+ region: z.ZodNullable<z.ZodString>;
1978
+ postal_code: z.ZodNullable<z.ZodString>;
1979
+ country: z.ZodNullable<z.ZodString>;
1980
+ }, z.core.$strict>;
1981
+ listing_agent_ids: z.ZodArray<z.ZodString>;
1982
+ description: z.ZodNullable<z.ZodString>;
1983
+ photos: z.ZodArray<z.ZodString>;
1984
+ photo_count: z.ZodOptional<z.ZodNumber>;
1985
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1986
+ url: z.ZodURL;
1987
+ order: z.ZodNumber;
1988
+ caption: z.ZodNullable<z.ZodString>;
1989
+ width: z.ZodNullable<z.ZodNumber>;
1990
+ height: z.ZodNullable<z.ZodNumber>;
1991
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
1992
+ delivery: z.ZodEnum<{
1993
+ source_url: "source_url";
1994
+ hosted: "hosted";
1995
+ }>;
1996
+ renditions: z.ZodOptional<z.ZodObject<{
1997
+ thumbnail: z.ZodObject<{
1998
+ url: z.ZodURL;
1999
+ max_width: z.ZodNumber;
2000
+ max_height: z.ZodNumber;
2001
+ }, z.core.$strict>;
2002
+ map: z.ZodObject<{
2003
+ url: z.ZodURL;
2004
+ max_width: z.ZodNumber;
2005
+ max_height: z.ZodNumber;
2006
+ }, z.core.$strict>;
2007
+ card: z.ZodObject<{
2008
+ url: z.ZodURL;
2009
+ max_width: z.ZodNumber;
2010
+ max_height: z.ZodNumber;
2011
+ }, z.core.$strict>;
2012
+ gallery: z.ZodObject<{
2013
+ url: z.ZodURL;
2014
+ max_width: z.ZodNumber;
2015
+ max_height: z.ZodNumber;
2016
+ }, z.core.$strict>;
2017
+ }, z.core.$strict>>;
2018
+ }, z.core.$strict>>>;
2019
+ attribution: z.ZodOptional<z.ZodObject<{
2020
+ agent_name: z.ZodNullable<z.ZodString>;
2021
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2022
+ office_name: z.ZodNullable<z.ZodString>;
2023
+ office_key: z.ZodNullable<z.ZodString>;
2024
+ office_phone: z.ZodNullable<z.ZodString>;
2025
+ office_website: z.ZodNullable<z.ZodURL>;
2026
+ broker_name: z.ZodNullable<z.ZodString>;
2027
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2028
+ originating_system: z.ZodNullable<z.ZodString>;
2029
+ }, z.core.$strict>>;
2030
+ property_details: z.ZodOptional<z.ZodObject<{
2031
+ category: z.ZodNullable<z.ZodString>;
2032
+ sub_type: z.ZodNullable<z.ZodString>;
2033
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
2034
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
2035
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2036
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2037
+ stories: z.ZodNullable<z.ZodNumber>;
2038
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
2039
+ parking_total: z.ZodNullable<z.ZodNumber>;
2040
+ county: z.ZodNullable<z.ZodString>;
2041
+ subdivision: z.ZodNullable<z.ZodString>;
2042
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
2043
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
2044
+ AssociationYN: "AssociationYN";
2045
+ AttachedGarageYN: "AttachedGarageYN";
2046
+ BasementYN: "BasementYN";
2047
+ CarportYN: "CarportYN";
2048
+ CoolingYN: "CoolingYN";
2049
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
2050
+ FireplaceYN: "FireplaceYN";
2051
+ GarageYN: "GarageYN";
2052
+ HeatingYN: "HeatingYN";
2053
+ NewConstructionYN: "NewConstructionYN";
2054
+ PoolPrivateYN: "PoolPrivateYN";
2055
+ SpaYN: "SpaYN";
2056
+ WaterfrontYN: "WaterfrontYN";
2057
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
2058
+ Dock: "Dock";
2059
+ }> & z.core.$partial, z.ZodBoolean>>;
2060
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
2061
+ kind: z.ZodEnum<{
2062
+ association: "association";
2063
+ association_secondary: "association_secondary";
2064
+ }>;
2065
+ amount: z.ZodNullable<z.ZodString>;
2066
+ amount_state: z.ZodEnum<{
2067
+ unknown: "unknown";
2068
+ supported: "supported";
2069
+ not_stated: "not_stated";
2070
+ }>;
2071
+ currency: z.ZodNullable<z.ZodString>;
2072
+ currency_source: z.ZodNullable<z.ZodEnum<{
2073
+ field: "field";
2074
+ source_default: "source_default";
2075
+ }>>;
2076
+ currency_state: z.ZodEnum<{
2077
+ unknown: "unknown";
2078
+ supported: "supported";
2079
+ not_stated: "not_stated";
2080
+ }>;
2081
+ period: z.ZodNullable<z.ZodEnum<{
2082
+ year: "year";
2083
+ day: "day";
2084
+ week: "week";
2085
+ month: "month";
2086
+ quarter: "quarter";
2087
+ half_year: "half_year";
2088
+ one_time: "one_time";
2089
+ }>>;
2090
+ period_state: z.ZodEnum<{
2091
+ unknown: "unknown";
2092
+ supported: "supported";
2093
+ not_stated: "not_stated";
2094
+ }>;
2095
+ source_paths: z.ZodArray<z.ZodString>;
2096
+ }, z.core.$strict>>>;
2097
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
2098
+ type: z.ZodNullable<z.ZodString>;
2099
+ level: z.ZodNullable<z.ZodString>;
2100
+ features: z.ZodArray<z.ZodString>;
2101
+ dimensions: z.ZodNullable<z.ZodString>;
2102
+ length: z.ZodNullable<z.ZodNumber>;
2103
+ width: z.ZodNullable<z.ZodNumber>;
2104
+ unit: z.ZodNullable<z.ZodString>;
2105
+ source_paths: z.ZodArray<z.ZodString>;
2106
+ }, z.core.$strict>>>;
2107
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2108
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2109
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2110
+ }, z.core.$strict>>;
2111
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2112
+ property_type: z.ZodNullable<z.ZodString>;
2113
+ bedrooms: z.ZodNullable<z.ZodNumber>;
2114
+ bathrooms: z.ZodNullable<z.ZodNumber>;
2115
+ living_area: z.ZodNullable<z.ZodNumber>;
2116
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2117
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2118
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2119
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2120
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2121
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2122
+ location: z.ZodOptional<z.ZodObject<{
2123
+ state: z.ZodEnum<{
2124
+ source: "source";
2125
+ pending: "pending";
2126
+ resolved: "resolved";
2127
+ coarse: "coarse";
2128
+ unavailable: "unavailable";
2129
+ stale: "stale";
2130
+ suppressed: "suppressed";
2131
+ }>;
2132
+ origin: z.ZodNullable<z.ZodEnum<{
2133
+ source: "source";
2134
+ geocoded: "geocoded";
2135
+ }>>;
2136
+ precision: z.ZodEnum<{
2137
+ source_unknown: "source_unknown";
2138
+ parcel: "parcel";
2139
+ street: "street";
2140
+ area: "area";
2141
+ unknown: "unknown";
2142
+ }>;
2143
+ map_eligible: z.ZodBoolean;
2144
+ coordinates: z.ZodNullable<z.ZodObject<{
2145
+ latitude: z.ZodNumber;
2146
+ longitude: z.ZodNumber;
2147
+ }, z.core.$strip>>;
2148
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
2149
+ accuracy_type: z.ZodNullable<z.ZodString>;
2150
+ match_type: z.ZodNullable<z.ZodString>;
2151
+ provider: z.ZodNullable<z.ZodString>;
2152
+ provider_version: z.ZodNullable<z.ZodString>;
2153
+ policy_version: z.ZodString;
2154
+ source: z.ZodNullable<z.ZodString>;
2155
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
2156
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
2157
+ country_code: z.ZodNullable<z.ZodString>;
2158
+ region_code: z.ZodNullable<z.ZodString>;
2159
+ timezone: z.ZodNullable<z.ZodString>;
2160
+ enrichment: z.ZodNullable<z.ZodObject<{
2161
+ provider: z.ZodString;
2162
+ provider_version: z.ZodString;
2163
+ resolved_at: z.ZodISODateTime;
2164
+ valid_until: z.ZodISODateTime;
2165
+ fields: z.ZodArray<z.ZodEnum<{
2166
+ timezone: "timezone";
2167
+ census2025: "census2025";
2168
+ }>>;
2169
+ }, z.core.$strip>>;
2170
+ geography: z.ZodNullable<z.ZodObject<{
2171
+ census_year: z.ZodNumber;
2172
+ state_fips: z.ZodNullable<z.ZodString>;
2173
+ county_fips: z.ZodNullable<z.ZodString>;
2174
+ tract_geoid: z.ZodNullable<z.ZodString>;
2175
+ block_geoid: z.ZodNullable<z.ZodString>;
2176
+ place_fips: z.ZodNullable<z.ZodString>;
2177
+ cbsa_code: z.ZodNullable<z.ZodString>;
2178
+ source: z.ZodNullable<z.ZodString>;
2179
+ }, z.core.$strip>>;
2180
+ issue: z.ZodNullable<z.ZodEnum<{
2181
+ pending: "pending";
2182
+ invalid_source_point: "invalid_source_point";
2183
+ insufficient_address: "insufficient_address";
2184
+ unsupported_country: "unsupported_country";
2185
+ no_match: "no_match";
2186
+ low_quality: "low_quality";
2187
+ provider_failure: "provider_failure";
2188
+ expired: "expired";
2189
+ display_restricted: "display_restricted";
2190
+ }>>;
2191
+ }, z.core.$strip>>;
2192
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2193
+ source_url: z.ZodNullable<z.ZodString>;
2194
+ listed_date: z.ZodNullable<z.ZodString>;
2195
+ listed_precision: z.ZodEnum<{
2196
+ unknown: "unknown";
2197
+ date: "date";
2198
+ instant: "instant";
2199
+ }>;
2200
+ open_houses: z.ZodArray<z.ZodObject<{
2201
+ id: z.ZodString;
2202
+ start_at: z.ZodString;
2203
+ end_at: z.ZodNullable<z.ZodString>;
2204
+ timezone: z.ZodNullable<z.ZodString>;
2205
+ status: z.ZodEnum<{
2206
+ scheduled: "scheduled";
2207
+ cancelled: "cancelled";
2208
+ }>;
2209
+ }, z.core.$strict>>;
2210
+ classifications: z.ZodArray<z.ZodObject<{
2211
+ attribute: z.ZodString;
2212
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
2213
+ evidence_state: z.ZodEnum<{
2214
+ supported: "supported";
2215
+ not_stated: "not_stated";
2216
+ conflicting: "conflicting";
2217
+ explicitly_absent: "explicitly_absent";
2218
+ }>;
2219
+ origin: z.ZodEnum<{
2220
+ source_structured: "source_structured";
2221
+ source_text_interpreted: "source_text_interpreted";
2222
+ }>;
2223
+ evidence_refs: z.ZodArray<z.ZodString>;
2224
+ input_fingerprint: z.ZodString;
2225
+ taxonomy_version: z.ZodString;
2226
+ evaluation_id: z.ZodString;
2227
+ freshness: z.ZodEnum<{
2228
+ pending: "pending";
2229
+ current: "current";
2230
+ invalidated: "invalidated";
2231
+ failed: "failed";
2232
+ }>;
2233
+ }, z.core.$strict>>;
2234
+ display: z.ZodObject<{
2235
+ address_allowed: z.ZodBoolean;
2236
+ disclaimer: z.ZodNullable<z.ZodString>;
2237
+ }, z.core.$strict>;
2238
+ freshness: z.ZodObject<{
2239
+ last_seen_at: z.ZodISODateTime;
2240
+ published_at: z.ZodISODateTime;
2241
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
2242
+ }, z.core.$strict>;
2243
+ source_amenities: z.ZodOptional<z.ZodObject<{
2244
+ version: z.ZodLiteral<"source-amenities-v1">;
2245
+ values: z.ZodRecord<z.ZodEnum<{
2246
+ hardwood: "hardwood";
2247
+ solar: "solar";
2248
+ ev_charger: "ev_charger";
2249
+ rv_parking: "rv_parking";
2250
+ view: "view";
2251
+ }>, z.ZodObject<{
2252
+ value: z.ZodNullable<z.ZodBoolean>;
2253
+ state: z.ZodEnum<{
2254
+ supported: "supported";
2255
+ not_stated: "not_stated";
2256
+ conflicting: "conflicting";
2257
+ }>;
2258
+ source_paths: z.ZodArray<z.ZodString>;
2259
+ }, z.core.$strict>>;
2260
+ }, z.core.$strict>>;
2261
+ search_document: z.ZodOptional<z.ZodObject<{
2262
+ version: z.ZodLiteral<"catalog-search-text-v1">;
2263
+ text: z.ZodString;
2264
+ }, z.core.$strict>>;
2265
+ content_hash: z.ZodOptional<z.ZodString>;
2266
+ source_fields: z.ZodOptional<z.ZodObject<{
2267
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
2268
+ }, z.core.$strict>>;
2269
+ source_metadata: z.ZodOptional<z.ZodObject<{
2270
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
2271
+ parser_version: z.ZodString;
2272
+ exposure_version: z.ZodString;
2273
+ source_system_id: z.ZodNullable<z.ZodString>;
2274
+ source_system_name: z.ZodNullable<z.ZodString>;
2275
+ originating_system_name: z.ZodNullable<z.ZodString>;
2276
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
2277
+ supplied_paths: z.ZodArray<z.ZodString>;
2278
+ }, z.core.$strict>>;
2279
+ market_dates: z.ZodOptional<z.ZodObject<{
2280
+ listing_contract: z.ZodObject<{
2281
+ value: z.ZodNullable<z.ZodString>;
2282
+ precision: z.ZodEnum<{
2283
+ unknown: "unknown";
2284
+ date: "date";
2285
+ instant: "instant";
2286
+ }>;
2287
+ }, z.core.$strict>;
2288
+ on_market: z.ZodObject<{
2289
+ value: z.ZodNullable<z.ZodString>;
2290
+ precision: z.ZodEnum<{
2291
+ unknown: "unknown";
2292
+ date: "date";
2293
+ instant: "instant";
2294
+ }>;
2295
+ }, z.core.$strict>;
2296
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
2297
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
2298
+ }, z.core.$strict>>;
2299
+ taxes: z.ZodOptional<z.ZodObject<{
2300
+ annual_amount: z.ZodNullable<z.ZodString>;
2301
+ currency: z.ZodNullable<z.ZodString>;
2302
+ year: z.ZodNullable<z.ZodNumber>;
2303
+ }, z.core.$strict>>;
2304
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
2305
+ level: z.ZodEnum<{
2306
+ elementary: "elementary";
2307
+ middle: "middle";
2308
+ high: "high";
2309
+ }>;
2310
+ name: z.ZodNullable<z.ZodString>;
2311
+ district: z.ZodNullable<z.ZodString>;
2312
+ }, z.core.$strict>>>;
2313
+ price_history: z.ZodOptional<z.ZodObject<{
2314
+ original_amount: z.ZodNullable<z.ZodString>;
2315
+ previous_amount: z.ZodNullable<z.ZodString>;
2316
+ low_amount: z.ZodNullable<z.ZodString>;
2317
+ currency: z.ZodNullable<z.ZodString>;
2318
+ original_currency: z.ZodNullable<z.ZodString>;
2319
+ previous_currency: z.ZodNullable<z.ZodString>;
2320
+ low_currency: z.ZodNullable<z.ZodString>;
2321
+ changed_at: z.ZodObject<{
2322
+ value: z.ZodNullable<z.ZodString>;
2323
+ precision: z.ZodEnum<{
2324
+ unknown: "unknown";
2325
+ date: "date";
2326
+ instant: "instant";
2327
+ }>;
2328
+ }, z.core.$strict>;
2329
+ }, z.core.$strict>>;
2330
+ virtual_tours: z.ZodOptional<z.ZodObject<{
2331
+ branded_url: z.ZodNullable<z.ZodURL>;
2332
+ unbranded_url: z.ZodNullable<z.ZodURL>;
2333
+ }, z.core.$strict>>;
2334
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
2335
+ url: z.ZodURL;
2336
+ categories: z.ZodArray<z.ZodString>;
2337
+ order: z.ZodNumber;
2338
+ caption: z.ZodNullable<z.ZodString>;
2339
+ }, z.core.$strict>>>;
2340
+ professionals: z.ZodOptional<z.ZodObject<{
2341
+ agent: z.ZodObject<{
2342
+ full_name: z.ZodNullable<z.ZodString>;
2343
+ first_name: z.ZodNullable<z.ZodString>;
2344
+ last_name: z.ZodNullable<z.ZodString>;
2345
+ license: z.ZodNullable<z.ZodString>;
2346
+ }, z.core.$strict>;
2347
+ office: z.ZodObject<{
2348
+ key: z.ZodNullable<z.ZodString>;
2349
+ mls_id: z.ZodNullable<z.ZodString>;
2350
+ name: z.ZodNullable<z.ZodString>;
2351
+ broker_mls_id: z.ZodNullable<z.ZodString>;
2352
+ corporate_id: z.ZodNullable<z.ZodString>;
2353
+ main_office_id: z.ZodNullable<z.ZodString>;
2354
+ website_url: z.ZodNullable<z.ZodURL>;
2355
+ address: z.ZodObject<{
2356
+ street: z.ZodNullable<z.ZodString>;
2357
+ unit: z.ZodNullable<z.ZodString>;
2358
+ city: z.ZodNullable<z.ZodString>;
2359
+ region: z.ZodNullable<z.ZodString>;
2360
+ postal_code: z.ZodNullable<z.ZodString>;
2361
+ country: z.ZodNullable<z.ZodString>;
2362
+ }, z.core.$strict>;
2363
+ }, z.core.$strict>;
2364
+ brokerage: z.ZodObject<{
2365
+ name: z.ZodNullable<z.ZodString>;
2366
+ website_url: z.ZodNullable<z.ZodURL>;
2367
+ logo_url: z.ZodNullable<z.ZodURL>;
2368
+ address: z.ZodObject<{
2369
+ street: z.ZodNullable<z.ZodString>;
2370
+ unit: z.ZodNullable<z.ZodString>;
2371
+ city: z.ZodNullable<z.ZodString>;
2372
+ region: z.ZodNullable<z.ZodString>;
2373
+ postal_code: z.ZodNullable<z.ZodString>;
2374
+ country: z.ZodNullable<z.ZodString>;
2375
+ }, z.core.$strict>;
2376
+ }, z.core.$strict>;
2377
+ builder: z.ZodObject<{
2378
+ name: z.ZodNullable<z.ZodString>;
2379
+ }, z.core.$strict>;
2380
+ franchise: z.ZodNullable<z.ZodString>;
2381
+ }, z.core.$strict>>;
2382
+ permissions: z.ZodOptional<z.ZodObject<{
2383
+ internet_display: z.ZodNullable<z.ZodBoolean>;
2384
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
2385
+ address_display: z.ZodNullable<z.ZodBoolean>;
2386
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
2387
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
2388
+ }, z.core.$strict>>;
2389
+ }, z.core.$strict>;
2390
+ score: z.ZodNumber;
2391
+ reasons: z.ZodArray<z.ZodString>;
2392
+ }, z.core.$strict>>;
2393
+ method: z.ZodLiteral<"facts_similarity_v1">;
2394
+ candidate_count: z.ZodNumber;
2395
+ candidates_truncated: z.ZodBoolean;
2396
+ }, z.core.$strict>;
2397
+ export declare const SnapshotRequest: z.ZodObject<{
2398
+ dataset_id: z.ZodString;
2399
+ }, z.core.$strict>;
2400
+ export declare const SnapshotSchema: z.ZodObject<{
2401
+ id: z.ZodString;
2402
+ dataset_id: z.ZodString;
2403
+ status: z.ZodEnum<{
2404
+ expired: "expired";
2405
+ failed: "failed";
2406
+ ready: "ready";
2407
+ building: "building";
2408
+ }>;
2409
+ schema_version: z.ZodString;
2410
+ snapshot_sequence: z.ZodString;
2411
+ replay_cursor: z.ZodString;
2412
+ created_at: z.ZodISODateTime;
2413
+ expires_at: z.ZodISODateTime;
2414
+ count: z.ZodOptional<z.ZodNumber>;
2415
+ }, z.core.$strict>;
2416
+ export declare const CatalogChangeSchema: z.ZodObject<{
2417
+ id: z.ZodString;
2418
+ sequence: z.ZodString;
2419
+ listing_id: z.ZodString;
2420
+ revision: z.ZodString;
2421
+ operation: z.ZodEnum<{
2422
+ upsert: "upsert";
2423
+ remove: "remove";
2424
+ }>;
2425
+ listing: z.ZodNullable<z.ZodObject<{
2426
+ id: z.ZodString;
2427
+ episode_id: z.ZodString;
2428
+ revision: z.ZodString;
2429
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2430
+ source_identities: z.ZodArray<z.ZodObject<{
2431
+ source: z.ZodString;
2432
+ key: z.ZodString;
2433
+ }, z.core.$strict>>;
2434
+ market_status: z.ZodEnum<{
2435
+ pending: "pending";
2436
+ unknown: "unknown";
2437
+ expired: "expired";
2438
+ active: "active";
2439
+ active_under_contract: "active_under_contract";
2440
+ sold: "sold";
2441
+ withdrawn: "withdrawn";
2442
+ }>;
2443
+ source_availability: z.ZodEnum<{
2444
+ present: "present";
2445
+ removed_unknown: "removed_unknown";
2446
+ }>;
2447
+ display_eligibility: z.ZodBoolean;
2448
+ price: z.ZodNullable<z.ZodObject<{
2449
+ amount: z.ZodString;
2450
+ currency: z.ZodString;
2451
+ period: z.ZodNullable<z.ZodString>;
2452
+ }, z.core.$strict>>;
2453
+ transaction_type: z.ZodOptional<z.ZodEnum<{
2454
+ unknown: "unknown";
2455
+ conflicting: "conflicting";
2456
+ for_sale: "for_sale";
2457
+ for_rent: "for_rent";
2458
+ }>>;
2459
+ price_period_state: z.ZodOptional<z.ZodEnum<{
2460
+ unknown: "unknown";
2461
+ supported: "supported";
2462
+ not_stated: "not_stated";
2463
+ conflicting: "conflicting";
2464
+ }>>;
2465
+ address: z.ZodObject<{
2466
+ street: z.ZodNullable<z.ZodString>;
2467
+ unit: z.ZodNullable<z.ZodString>;
2468
+ city: z.ZodNullable<z.ZodString>;
2469
+ region: z.ZodNullable<z.ZodString>;
2470
+ postal_code: z.ZodNullable<z.ZodString>;
2471
+ country: z.ZodNullable<z.ZodString>;
2472
+ }, z.core.$strict>;
2473
+ listing_agent_ids: z.ZodArray<z.ZodString>;
2474
+ description: z.ZodNullable<z.ZodString>;
2475
+ photos: z.ZodArray<z.ZodString>;
2476
+ photo_count: z.ZodOptional<z.ZodNumber>;
2477
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
2478
+ url: z.ZodURL;
2479
+ order: z.ZodNumber;
2480
+ caption: z.ZodNullable<z.ZodString>;
2481
+ width: z.ZodNullable<z.ZodNumber>;
2482
+ height: z.ZodNullable<z.ZodNumber>;
2483
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
2484
+ delivery: z.ZodEnum<{
2485
+ source_url: "source_url";
2486
+ hosted: "hosted";
2487
+ }>;
2488
+ renditions: z.ZodOptional<z.ZodObject<{
2489
+ thumbnail: z.ZodObject<{
2490
+ url: z.ZodURL;
2491
+ max_width: z.ZodNumber;
2492
+ max_height: z.ZodNumber;
2493
+ }, z.core.$strict>;
2494
+ map: z.ZodObject<{
2495
+ url: z.ZodURL;
2496
+ max_width: z.ZodNumber;
2497
+ max_height: z.ZodNumber;
2498
+ }, z.core.$strict>;
2499
+ card: z.ZodObject<{
2500
+ url: z.ZodURL;
2501
+ max_width: z.ZodNumber;
2502
+ max_height: z.ZodNumber;
2503
+ }, z.core.$strict>;
2504
+ gallery: z.ZodObject<{
2505
+ url: z.ZodURL;
2506
+ max_width: z.ZodNumber;
2507
+ max_height: z.ZodNumber;
2508
+ }, z.core.$strict>;
2509
+ }, z.core.$strict>>;
2510
+ }, z.core.$strict>>>;
2511
+ attribution: z.ZodOptional<z.ZodObject<{
2512
+ agent_name: z.ZodNullable<z.ZodString>;
2513
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2514
+ office_name: z.ZodNullable<z.ZodString>;
2515
+ office_key: z.ZodNullable<z.ZodString>;
2516
+ office_phone: z.ZodNullable<z.ZodString>;
2517
+ office_website: z.ZodNullable<z.ZodURL>;
2518
+ broker_name: z.ZodNullable<z.ZodString>;
2519
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2520
+ originating_system: z.ZodNullable<z.ZodString>;
2521
+ }, z.core.$strict>>;
2522
+ property_details: z.ZodOptional<z.ZodObject<{
2523
+ category: z.ZodNullable<z.ZodString>;
2524
+ sub_type: z.ZodNullable<z.ZodString>;
2525
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
2526
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
2527
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2528
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2529
+ stories: z.ZodNullable<z.ZodNumber>;
2530
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
2531
+ parking_total: z.ZodNullable<z.ZodNumber>;
2532
+ county: z.ZodNullable<z.ZodString>;
2533
+ subdivision: z.ZodNullable<z.ZodString>;
2534
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
2535
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
2536
+ AssociationYN: "AssociationYN";
2537
+ AttachedGarageYN: "AttachedGarageYN";
2538
+ BasementYN: "BasementYN";
2539
+ CarportYN: "CarportYN";
2540
+ CoolingYN: "CoolingYN";
2541
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
2542
+ FireplaceYN: "FireplaceYN";
2543
+ GarageYN: "GarageYN";
2544
+ HeatingYN: "HeatingYN";
2545
+ NewConstructionYN: "NewConstructionYN";
2546
+ PoolPrivateYN: "PoolPrivateYN";
2547
+ SpaYN: "SpaYN";
2548
+ WaterfrontYN: "WaterfrontYN";
2549
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
2550
+ Dock: "Dock";
2551
+ }> & z.core.$partial, z.ZodBoolean>>;
2552
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
2553
+ kind: z.ZodEnum<{
2554
+ association: "association";
2555
+ association_secondary: "association_secondary";
2556
+ }>;
2557
+ amount: z.ZodNullable<z.ZodString>;
2558
+ amount_state: z.ZodEnum<{
2559
+ unknown: "unknown";
2560
+ supported: "supported";
2561
+ not_stated: "not_stated";
2562
+ }>;
2563
+ currency: z.ZodNullable<z.ZodString>;
2564
+ currency_source: z.ZodNullable<z.ZodEnum<{
2565
+ field: "field";
2566
+ source_default: "source_default";
2567
+ }>>;
2568
+ currency_state: z.ZodEnum<{
2569
+ unknown: "unknown";
2570
+ supported: "supported";
2571
+ not_stated: "not_stated";
2572
+ }>;
2573
+ period: z.ZodNullable<z.ZodEnum<{
2574
+ year: "year";
2575
+ day: "day";
2576
+ week: "week";
2577
+ month: "month";
2578
+ quarter: "quarter";
2579
+ half_year: "half_year";
2580
+ one_time: "one_time";
2581
+ }>>;
2582
+ period_state: z.ZodEnum<{
2583
+ unknown: "unknown";
2584
+ supported: "supported";
2585
+ not_stated: "not_stated";
2586
+ }>;
2587
+ source_paths: z.ZodArray<z.ZodString>;
2588
+ }, z.core.$strict>>>;
2589
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
2590
+ type: z.ZodNullable<z.ZodString>;
2591
+ level: z.ZodNullable<z.ZodString>;
2592
+ features: z.ZodArray<z.ZodString>;
2593
+ dimensions: z.ZodNullable<z.ZodString>;
2594
+ length: z.ZodNullable<z.ZodNumber>;
2595
+ width: z.ZodNullable<z.ZodNumber>;
2596
+ unit: z.ZodNullable<z.ZodString>;
2597
+ source_paths: z.ZodArray<z.ZodString>;
2598
+ }, z.core.$strict>>>;
2599
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2600
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2601
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2602
+ }, z.core.$strict>>;
2603
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2604
+ property_type: z.ZodNullable<z.ZodString>;
2605
+ bedrooms: z.ZodNullable<z.ZodNumber>;
2606
+ bathrooms: z.ZodNullable<z.ZodNumber>;
2607
+ living_area: z.ZodNullable<z.ZodNumber>;
2608
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2609
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2610
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2611
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2612
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2613
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2614
+ location: z.ZodOptional<z.ZodObject<{
2615
+ state: z.ZodEnum<{
2616
+ source: "source";
2617
+ pending: "pending";
2618
+ resolved: "resolved";
2619
+ coarse: "coarse";
2620
+ unavailable: "unavailable";
2621
+ stale: "stale";
2622
+ suppressed: "suppressed";
2623
+ }>;
2624
+ origin: z.ZodNullable<z.ZodEnum<{
2625
+ source: "source";
2626
+ geocoded: "geocoded";
2627
+ }>>;
2628
+ precision: z.ZodEnum<{
2629
+ source_unknown: "source_unknown";
2630
+ parcel: "parcel";
2631
+ street: "street";
2632
+ area: "area";
2633
+ unknown: "unknown";
2634
+ }>;
2635
+ map_eligible: z.ZodBoolean;
2636
+ coordinates: z.ZodNullable<z.ZodObject<{
2637
+ latitude: z.ZodNumber;
2638
+ longitude: z.ZodNumber;
2639
+ }, z.core.$strip>>;
2640
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
2641
+ accuracy_type: z.ZodNullable<z.ZodString>;
2642
+ match_type: z.ZodNullable<z.ZodString>;
2643
+ provider: z.ZodNullable<z.ZodString>;
2644
+ provider_version: z.ZodNullable<z.ZodString>;
2645
+ policy_version: z.ZodString;
2646
+ source: z.ZodNullable<z.ZodString>;
2647
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
2648
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
2649
+ country_code: z.ZodNullable<z.ZodString>;
2650
+ region_code: z.ZodNullable<z.ZodString>;
2651
+ timezone: z.ZodNullable<z.ZodString>;
2652
+ enrichment: z.ZodNullable<z.ZodObject<{
2653
+ provider: z.ZodString;
2654
+ provider_version: z.ZodString;
2655
+ resolved_at: z.ZodISODateTime;
2656
+ valid_until: z.ZodISODateTime;
2657
+ fields: z.ZodArray<z.ZodEnum<{
2658
+ timezone: "timezone";
2659
+ census2025: "census2025";
2660
+ }>>;
2661
+ }, z.core.$strip>>;
2662
+ geography: z.ZodNullable<z.ZodObject<{
2663
+ census_year: z.ZodNumber;
2664
+ state_fips: z.ZodNullable<z.ZodString>;
2665
+ county_fips: z.ZodNullable<z.ZodString>;
2666
+ tract_geoid: z.ZodNullable<z.ZodString>;
2667
+ block_geoid: z.ZodNullable<z.ZodString>;
2668
+ place_fips: z.ZodNullable<z.ZodString>;
2669
+ cbsa_code: z.ZodNullable<z.ZodString>;
2670
+ source: z.ZodNullable<z.ZodString>;
2671
+ }, z.core.$strip>>;
2672
+ issue: z.ZodNullable<z.ZodEnum<{
2673
+ pending: "pending";
2674
+ invalid_source_point: "invalid_source_point";
2675
+ insufficient_address: "insufficient_address";
2676
+ unsupported_country: "unsupported_country";
2677
+ no_match: "no_match";
2678
+ low_quality: "low_quality";
2679
+ provider_failure: "provider_failure";
2680
+ expired: "expired";
2681
+ display_restricted: "display_restricted";
2682
+ }>>;
2683
+ }, z.core.$strip>>;
2684
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2685
+ source_url: z.ZodNullable<z.ZodString>;
2686
+ listed_date: z.ZodNullable<z.ZodString>;
2687
+ listed_precision: z.ZodEnum<{
2688
+ unknown: "unknown";
2689
+ date: "date";
2690
+ instant: "instant";
2691
+ }>;
2692
+ open_houses: z.ZodArray<z.ZodObject<{
2693
+ id: z.ZodString;
2694
+ start_at: z.ZodString;
2695
+ end_at: z.ZodNullable<z.ZodString>;
2696
+ timezone: z.ZodNullable<z.ZodString>;
2697
+ status: z.ZodEnum<{
2698
+ scheduled: "scheduled";
2699
+ cancelled: "cancelled";
2700
+ }>;
2701
+ }, z.core.$strict>>;
2702
+ classifications: z.ZodArray<z.ZodObject<{
2703
+ attribute: z.ZodString;
2704
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
2705
+ evidence_state: z.ZodEnum<{
2706
+ supported: "supported";
2707
+ not_stated: "not_stated";
2708
+ conflicting: "conflicting";
2709
+ explicitly_absent: "explicitly_absent";
2710
+ }>;
2711
+ origin: z.ZodEnum<{
2712
+ source_structured: "source_structured";
2713
+ source_text_interpreted: "source_text_interpreted";
2714
+ }>;
2715
+ evidence_refs: z.ZodArray<z.ZodString>;
2716
+ input_fingerprint: z.ZodString;
2717
+ taxonomy_version: z.ZodString;
2718
+ evaluation_id: z.ZodString;
2719
+ freshness: z.ZodEnum<{
2720
+ pending: "pending";
2721
+ current: "current";
2722
+ invalidated: "invalidated";
2723
+ failed: "failed";
2724
+ }>;
2725
+ }, z.core.$strict>>;
2726
+ display: z.ZodObject<{
2727
+ address_allowed: z.ZodBoolean;
2728
+ disclaimer: z.ZodNullable<z.ZodString>;
2729
+ }, z.core.$strict>;
2730
+ freshness: z.ZodObject<{
2731
+ last_seen_at: z.ZodISODateTime;
2732
+ published_at: z.ZodISODateTime;
2733
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
2734
+ }, z.core.$strict>;
2735
+ source_amenities: z.ZodOptional<z.ZodObject<{
2736
+ version: z.ZodLiteral<"source-amenities-v1">;
2737
+ values: z.ZodRecord<z.ZodEnum<{
2738
+ hardwood: "hardwood";
2739
+ solar: "solar";
2740
+ ev_charger: "ev_charger";
2741
+ rv_parking: "rv_parking";
2742
+ view: "view";
2743
+ }>, z.ZodObject<{
2744
+ value: z.ZodNullable<z.ZodBoolean>;
2745
+ state: z.ZodEnum<{
2746
+ supported: "supported";
2747
+ not_stated: "not_stated";
2748
+ conflicting: "conflicting";
2749
+ }>;
2750
+ source_paths: z.ZodArray<z.ZodString>;
2751
+ }, z.core.$strict>>;
2752
+ }, z.core.$strict>>;
2753
+ search_document: z.ZodOptional<z.ZodObject<{
2754
+ version: z.ZodLiteral<"catalog-search-text-v1">;
2755
+ text: z.ZodString;
2756
+ }, z.core.$strict>>;
2757
+ content_hash: z.ZodOptional<z.ZodString>;
2758
+ source_fields: z.ZodOptional<z.ZodObject<{
2759
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
2760
+ }, z.core.$strict>>;
2761
+ source_metadata: z.ZodOptional<z.ZodObject<{
2762
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
2763
+ parser_version: z.ZodString;
2764
+ exposure_version: z.ZodString;
2765
+ source_system_id: z.ZodNullable<z.ZodString>;
2766
+ source_system_name: z.ZodNullable<z.ZodString>;
2767
+ originating_system_name: z.ZodNullable<z.ZodString>;
2768
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
2769
+ supplied_paths: z.ZodArray<z.ZodString>;
2770
+ }, z.core.$strict>>;
2771
+ market_dates: z.ZodOptional<z.ZodObject<{
2772
+ listing_contract: z.ZodObject<{
2773
+ value: z.ZodNullable<z.ZodString>;
2774
+ precision: z.ZodEnum<{
2775
+ unknown: "unknown";
2776
+ date: "date";
2777
+ instant: "instant";
2778
+ }>;
2779
+ }, z.core.$strict>;
2780
+ on_market: z.ZodObject<{
2781
+ value: z.ZodNullable<z.ZodString>;
2782
+ precision: z.ZodEnum<{
2783
+ unknown: "unknown";
2784
+ date: "date";
2785
+ instant: "instant";
2786
+ }>;
2787
+ }, z.core.$strict>;
2788
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
2789
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
2790
+ }, z.core.$strict>>;
2791
+ taxes: z.ZodOptional<z.ZodObject<{
2792
+ annual_amount: z.ZodNullable<z.ZodString>;
2793
+ currency: z.ZodNullable<z.ZodString>;
2794
+ year: z.ZodNullable<z.ZodNumber>;
2795
+ }, z.core.$strict>>;
2796
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
2797
+ level: z.ZodEnum<{
2798
+ elementary: "elementary";
2799
+ middle: "middle";
2800
+ high: "high";
2801
+ }>;
2802
+ name: z.ZodNullable<z.ZodString>;
2803
+ district: z.ZodNullable<z.ZodString>;
2804
+ }, z.core.$strict>>>;
2805
+ price_history: z.ZodOptional<z.ZodObject<{
2806
+ original_amount: z.ZodNullable<z.ZodString>;
2807
+ previous_amount: z.ZodNullable<z.ZodString>;
2808
+ low_amount: z.ZodNullable<z.ZodString>;
2809
+ currency: z.ZodNullable<z.ZodString>;
2810
+ original_currency: z.ZodNullable<z.ZodString>;
2811
+ previous_currency: z.ZodNullable<z.ZodString>;
2812
+ low_currency: z.ZodNullable<z.ZodString>;
2813
+ changed_at: z.ZodObject<{
2814
+ value: z.ZodNullable<z.ZodString>;
2815
+ precision: z.ZodEnum<{
2816
+ unknown: "unknown";
2817
+ date: "date";
2818
+ instant: "instant";
2819
+ }>;
2820
+ }, z.core.$strict>;
2821
+ }, z.core.$strict>>;
2822
+ virtual_tours: z.ZodOptional<z.ZodObject<{
2823
+ branded_url: z.ZodNullable<z.ZodURL>;
2824
+ unbranded_url: z.ZodNullable<z.ZodURL>;
2825
+ }, z.core.$strict>>;
2826
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
2827
+ url: z.ZodURL;
2828
+ categories: z.ZodArray<z.ZodString>;
2829
+ order: z.ZodNumber;
2830
+ caption: z.ZodNullable<z.ZodString>;
2831
+ }, z.core.$strict>>>;
2832
+ professionals: z.ZodOptional<z.ZodObject<{
2833
+ agent: z.ZodObject<{
2834
+ full_name: z.ZodNullable<z.ZodString>;
2835
+ first_name: z.ZodNullable<z.ZodString>;
2836
+ last_name: z.ZodNullable<z.ZodString>;
2837
+ license: z.ZodNullable<z.ZodString>;
2838
+ }, z.core.$strict>;
2839
+ office: z.ZodObject<{
2840
+ key: z.ZodNullable<z.ZodString>;
2841
+ mls_id: z.ZodNullable<z.ZodString>;
2842
+ name: z.ZodNullable<z.ZodString>;
2843
+ broker_mls_id: z.ZodNullable<z.ZodString>;
2844
+ corporate_id: z.ZodNullable<z.ZodString>;
2845
+ main_office_id: z.ZodNullable<z.ZodString>;
2846
+ website_url: z.ZodNullable<z.ZodURL>;
2847
+ address: z.ZodObject<{
2848
+ street: z.ZodNullable<z.ZodString>;
2849
+ unit: z.ZodNullable<z.ZodString>;
2850
+ city: z.ZodNullable<z.ZodString>;
2851
+ region: z.ZodNullable<z.ZodString>;
2852
+ postal_code: z.ZodNullable<z.ZodString>;
2853
+ country: z.ZodNullable<z.ZodString>;
2854
+ }, z.core.$strict>;
2855
+ }, z.core.$strict>;
2856
+ brokerage: z.ZodObject<{
2857
+ name: z.ZodNullable<z.ZodString>;
2858
+ website_url: z.ZodNullable<z.ZodURL>;
2859
+ logo_url: z.ZodNullable<z.ZodURL>;
2860
+ address: z.ZodObject<{
2861
+ street: z.ZodNullable<z.ZodString>;
2862
+ unit: z.ZodNullable<z.ZodString>;
2863
+ city: z.ZodNullable<z.ZodString>;
2864
+ region: z.ZodNullable<z.ZodString>;
2865
+ postal_code: z.ZodNullable<z.ZodString>;
2866
+ country: z.ZodNullable<z.ZodString>;
2867
+ }, z.core.$strict>;
2868
+ }, z.core.$strict>;
2869
+ builder: z.ZodObject<{
2870
+ name: z.ZodNullable<z.ZodString>;
2871
+ }, z.core.$strict>;
2872
+ franchise: z.ZodNullable<z.ZodString>;
2873
+ }, z.core.$strict>>;
2874
+ permissions: z.ZodOptional<z.ZodObject<{
2875
+ internet_display: z.ZodNullable<z.ZodBoolean>;
2876
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
2877
+ address_display: z.ZodNullable<z.ZodBoolean>;
2878
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
2879
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
2880
+ }, z.core.$strict>>;
2881
+ }, z.core.$strict>>;
2882
+ published_at: z.ZodISODateTime;
2883
+ }, z.core.$strict>;
2884
+ export declare const DomainEventSchema: z.ZodObject<{
2885
+ id: z.ZodString;
2886
+ sequence: z.ZodString;
2887
+ listing_id: z.ZodString;
2888
+ episode_id: z.ZodString;
2889
+ type: z.ZodString;
2890
+ occurred_at: z.ZodISODateTime;
2891
+ observed_at: z.ZodISODateTime;
2892
+ evidence: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
2893
+ }, z.core.$strict>;
2894
+ export declare const ClassificationDefinitionSchema: z.ZodObject<{
2895
+ taxonomy_version: z.ZodString;
2896
+ attributes: z.ZodArray<z.ZodObject<{
2897
+ id: z.ZodString;
2898
+ description: z.ZodString;
2899
+ type: z.ZodEnum<{
2900
+ string: "string";
2901
+ number: "number";
2902
+ boolean: "boolean";
2903
+ }>;
2904
+ values: z.ZodOptional<z.ZodArray<z.ZodString>>;
2905
+ }, z.core.$strict>>;
2906
+ }, z.core.$strict>;
2907
+ export declare const ActionProfileSchema: z.ZodObject<{
2908
+ id: z.ZodString;
2909
+ family: z.ZodString;
2910
+ purpose: z.ZodString;
2911
+ owner_product: z.ZodString;
2912
+ channel: z.ZodEnum<{
2913
+ email: "email";
2914
+ social: "social";
2915
+ ads: "ads";
2916
+ }>;
2917
+ target_unit: z.ZodEnum<{
2918
+ contact_actions: "contact_actions";
2919
+ content_actions: "content_actions";
2920
+ ad_candidates: "ad_candidates";
2921
+ }>;
2922
+ timezone: z.ZodString;
2923
+ policy_revision: z.ZodString;
2924
+ required_context: z.ZodArray<z.ZodString>;
2925
+ enabled: z.ZodBoolean;
2926
+ }, z.core.$strict>;
2927
+ export declare const OpportunityQuery: z.ZodObject<{
2928
+ cursor: z.ZodOptional<z.ZodString>;
2929
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
2930
+ profile_id: z.ZodString;
2931
+ account_id: z.ZodOptional<z.ZodString>;
2932
+ agent_id: z.ZodOptional<z.ZodString>;
2933
+ }, z.core.$strict>;
2934
+ export declare const OpportunitySchema: z.ZodObject<{
2935
+ id: z.ZodString;
2936
+ profile_id: z.ZodString;
2937
+ listing_id: z.ZodString;
2938
+ episode_id: z.ZodString;
2939
+ recipient_id: z.ZodString;
2940
+ intent_id: z.ZodString;
2941
+ primary_angle: z.ZodString;
2942
+ trigger_event_ids: z.ZodArray<z.ZodString>;
2943
+ supporting_evidence_refs: z.ZodArray<z.ZodString>;
2944
+ reason_codes: z.ZodArray<z.ZodString>;
2945
+ priority_index: z.ZodNumber;
2946
+ valid_until: z.ZodISODateTime;
2947
+ decision_revision: z.ZodString;
2948
+ }, z.core.$strict>;
2949
+ export declare const PlanRequest: z.ZodObject<{
2950
+ profile_id: z.ZodString;
2951
+ business_date: z.ZodISODate;
2952
+ audience_id: z.ZodString;
2953
+ target: z.ZodObject<{
2954
+ count: z.ZodNumber;
2955
+ unit: z.ZodEnum<{
2956
+ contact_actions: "contact_actions";
2957
+ content_actions: "content_actions";
2958
+ ad_candidates: "ad_candidates";
2959
+ }>;
2960
+ }, z.core.$strict>;
2961
+ run_slot: z.ZodString;
2962
+ }, z.core.$strict>;
2963
+ export declare const PlanSchema: z.ZodObject<{
2964
+ id: z.ZodString;
2965
+ profile_id: z.ZodString;
2966
+ business_date: z.ZodISODate;
2967
+ timezone: z.ZodString;
2968
+ status: z.ZodEnum<{
2969
+ expired: "expired";
2970
+ cancelled: "cancelled";
2971
+ failed: "failed";
2972
+ ready: "ready";
2973
+ queued: "queued";
2974
+ building: "building";
2975
+ }>;
2976
+ requested_count: z.ZodNumber;
2977
+ selected_count: z.ZodNumber;
2978
+ unique_recipients: z.ZodNumber;
2979
+ reserve_count: z.ZodNumber;
2980
+ shortfall: z.ZodNumber;
2981
+ completeness: z.ZodEnum<{
2982
+ partial: "partial";
2983
+ complete: "complete";
2984
+ pending: "pending";
2985
+ }>;
2986
+ decision_mode: z.ZodEnum<{
2987
+ fixture: "fixture";
2988
+ jev: "jev";
2989
+ cached_jev: "cached_jev";
2990
+ }>;
2991
+ created_at: z.ZodISODateTime;
2992
+ expires_at: z.ZodISODateTime;
2993
+ policy_revision: z.ZodString;
2994
+ exclusions: z.ZodRecord<z.ZodString, z.ZodNumber>;
2995
+ cutoffs: z.ZodRecord<z.ZodString, z.ZodString>;
2996
+ execution_counts: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
2997
+ }, z.core.$strict>;
2998
+ export declare const ActionState: z.ZodEnum<{
2999
+ unknown: "unknown";
3000
+ invalidated: "invalidated";
3001
+ reserved: "reserved";
3002
+ dispatching: "dispatching";
3003
+ accepted: "accepted";
3004
+ delivered: "delivered";
3005
+ rejected: "rejected";
3006
+ unclaimed: "unclaimed";
3007
+ }>;
3008
+ export declare const PlanItemReplacementSchema: z.ZodObject<{
3009
+ item_id: z.ZodString;
3010
+ opportunity_id: z.ZodString;
3011
+ listing_id: z.ZodString;
3012
+ recipient_id: z.ZodString;
3013
+ reason: z.ZodString;
3014
+ replaced_at: z.ZodISODateTime;
3015
+ }, z.core.$strict>;
3016
+ export declare const PlanItemSchema: z.ZodObject<{
3017
+ id: z.ZodString;
3018
+ slot: z.ZodNumber;
3019
+ rank: z.ZodNumber;
3020
+ opportunity_id: z.ZodString;
3021
+ listing_id: z.ZodString;
3022
+ episode_id: z.ZodString;
3023
+ recipient_id: z.ZodString;
3024
+ primary_angle: z.ZodString;
3025
+ trigger_event_ids: z.ZodArray<z.ZodString>;
3026
+ supporting_evidence_refs: z.ZodArray<z.ZodString>;
3027
+ reason_codes: z.ZodArray<z.ZodString>;
3028
+ valid_until: z.ZodISODateTime;
3029
+ execution_state: z.ZodEnum<{
3030
+ unknown: "unknown";
3031
+ invalidated: "invalidated";
3032
+ reserved: "reserved";
3033
+ dispatching: "dispatching";
3034
+ accepted: "accepted";
3035
+ delivered: "delivered";
3036
+ rejected: "rejected";
3037
+ unclaimed: "unclaimed";
3038
+ }>;
3039
+ action_id: z.ZodNullable<z.ZodString>;
3040
+ replacement: z.ZodOptional<z.ZodObject<{
3041
+ item_id: z.ZodString;
3042
+ opportunity_id: z.ZodString;
3043
+ listing_id: z.ZodString;
3044
+ recipient_id: z.ZodString;
3045
+ reason: z.ZodString;
3046
+ replaced_at: z.ZodISODateTime;
3047
+ }, z.core.$strict>>;
3048
+ }, z.core.$strict>;
3049
+ export declare const DispatchRequest: z.ZodObject<{
3050
+ plan_id: z.ZodString;
3051
+ limit: z.ZodNumber;
3052
+ worker_id: z.ZodString;
3053
+ }, z.core.$strict>;
3054
+ export declare const DispatchActionSchema: z.ZodObject<{
3055
+ id: z.ZodString;
3056
+ plan_item_id: z.ZodString;
3057
+ listing_id: z.ZodString;
3058
+ recipient_id: z.ZodString;
3059
+ action_kind: z.ZodString;
3060
+ lease_token: z.ZodString;
3061
+ lease_expires_at: z.ZodISODateTime;
3062
+ endpoint: z.ZodString;
3063
+ payload: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
3064
+ }, z.core.$strict>;
3065
+ export declare const DispatchBatchSchema: z.ZodObject<{
3066
+ id: z.ZodString;
3067
+ plan_id: z.ZodString;
3068
+ actions: z.ZodArray<z.ZodObject<{
3069
+ id: z.ZodString;
3070
+ plan_item_id: z.ZodString;
3071
+ listing_id: z.ZodString;
3072
+ recipient_id: z.ZodString;
3073
+ action_kind: z.ZodString;
3074
+ lease_token: z.ZodString;
3075
+ lease_expires_at: z.ZodISODateTime;
3076
+ endpoint: z.ZodString;
3077
+ payload: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
3078
+ }, z.core.$strict>>;
3079
+ exhausted: z.ZodBoolean;
3080
+ }, z.core.$strict>;
3081
+ export declare const AttemptRequest: z.ZodObject<{
3082
+ id: z.ZodString;
3083
+ lease_token: z.ZodString;
3084
+ }, z.core.$strict>;
3085
+ export declare const AttemptSchema: z.ZodObject<{
3086
+ id: z.ZodString;
3087
+ action_id: z.ZodString;
3088
+ provider_idempotency_key: z.ZodString;
3089
+ state: z.ZodLiteral<"dispatching">;
3090
+ started_at: z.ZodISODateTime;
3091
+ replayed: z.ZodBoolean;
3092
+ }, z.core.$strict>;
3093
+ export declare const ActionOutcomeSchema: z.ZodObject<{
3094
+ event_id: z.ZodString;
3095
+ action_id: z.ZodString;
3096
+ attempt_id: z.ZodString;
3097
+ provider: z.ZodString;
3098
+ provider_event_id: z.ZodString;
3099
+ outcome: z.ZodEnum<{
3100
+ unknown: "unknown";
3101
+ accepted: "accepted";
3102
+ delivered: "delivered";
3103
+ rejected: "rejected";
3104
+ bounced: "bounced";
3105
+ complained: "complained";
3106
+ }>;
3107
+ occurred_at: z.ZodISODateTime;
3108
+ details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
3109
+ }, z.core.$strict>;
3110
+ export declare const OutcomesRequest: z.ZodObject<{
3111
+ outcomes: z.ZodArray<z.ZodObject<{
3112
+ event_id: z.ZodString;
3113
+ action_id: z.ZodString;
3114
+ attempt_id: z.ZodString;
3115
+ provider: z.ZodString;
3116
+ provider_event_id: z.ZodString;
3117
+ outcome: z.ZodEnum<{
3118
+ unknown: "unknown";
3119
+ accepted: "accepted";
3120
+ delivered: "delivered";
3121
+ rejected: "rejected";
3122
+ bounced: "bounced";
3123
+ complained: "complained";
3124
+ }>;
3125
+ occurred_at: z.ZodISODateTime;
3126
+ details: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
3127
+ }, z.core.$strict>>;
3128
+ }, z.core.$strict>;
3129
+ export declare const ProductContextEventSchema: z.ZodObject<{
3130
+ event_id: z.ZodString;
3131
+ producer_id: z.ZodString;
3132
+ stream_epoch: z.ZodString;
3133
+ coverage_id: z.ZodString;
3134
+ subject_id: z.ZodString;
3135
+ subject_type: z.ZodString;
3136
+ subject_version: z.ZodNumber;
3137
+ stream_sequence: z.ZodNumber;
3138
+ type: z.ZodString;
3139
+ occurred_at: z.ZodISODateTime;
3140
+ payload: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
3141
+ }, z.core.$strict>;
3142
+ export declare const ContextEventsRequest: z.ZodObject<{
3143
+ events: z.ZodArray<z.ZodObject<{
3144
+ event_id: z.ZodString;
3145
+ producer_id: z.ZodString;
3146
+ stream_epoch: z.ZodString;
3147
+ coverage_id: z.ZodString;
3148
+ subject_id: z.ZodString;
3149
+ subject_type: z.ZodString;
3150
+ subject_version: z.ZodNumber;
3151
+ stream_sequence: z.ZodNumber;
3152
+ type: z.ZodString;
3153
+ occurred_at: z.ZodISODateTime;
3154
+ payload: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
3155
+ }, z.core.$strict>>;
3156
+ }, z.core.$strict>;
3157
+ export declare const BatchResultSchema: z.ZodObject<{
3158
+ results: z.ZodArray<z.ZodObject<{
3159
+ event_id: z.ZodString;
3160
+ status: z.ZodEnum<{
3161
+ accepted: "accepted";
3162
+ rejected: "rejected";
3163
+ duplicate: "duplicate";
3164
+ }>;
3165
+ code: z.ZodNullable<z.ZodString>;
3166
+ }, z.core.$strict>>;
3167
+ }, z.core.$strict>;
3168
+ export declare const WebhookRequest: z.ZodObject<{
3169
+ url: z.ZodURL;
3170
+ dataset_id: z.ZodString;
3171
+ event_types: z.ZodArray<z.ZodString>;
3172
+ }, z.core.$strict>;
3173
+ export declare const WebhookSchema: z.ZodObject<{
3174
+ id: z.ZodString;
3175
+ url: z.ZodString;
3176
+ status: z.ZodEnum<{
3177
+ active: "active";
3178
+ disabled: "disabled";
3179
+ pending_verification: "pending_verification";
3180
+ }>;
3181
+ }, z.core.$strict>;
3182
+ export declare const CapabilitiesSchema: z.ZodObject<{
3183
+ api_version: z.ZodLiteral<"v1">;
3184
+ dataset_ids: z.ZodArray<z.ZodString>;
3185
+ profile_ids: z.ZodArray<z.ZodString>;
3186
+ features: z.ZodArray<z.ZodString>;
3187
+ limits: z.ZodRecord<z.ZodString, z.ZodNumber>;
3188
+ }, z.core.$strict>;
3189
+ export declare const ReadinessSchema: z.ZodObject<{
3190
+ ready: z.ZodBoolean;
3191
+ mode: z.ZodString;
3192
+ checks: z.ZodArray<z.ZodObject<{
3193
+ name: z.ZodString;
3194
+ ready: z.ZodBoolean;
3195
+ detail: z.ZodString;
3196
+ }, z.core.$strict>>;
3197
+ }, z.core.$strict>;
3198
+ export type { Operation, Input, InputRequest, Output } from './operations.js';