@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,3731 @@
1
+ import { z } from 'zod';
2
+ /** The selector is immutable for the lifetime of a snapshot/replay stream. */
3
+ export declare const SmartFeedSelectorSchema: z.ZodObject<{
4
+ mode: z.ZodDefault<z.ZodEnum<{
5
+ directory: "directory";
6
+ combined: "combined";
7
+ }>>;
8
+ party_id: z.ZodOptional<z.ZodString>;
9
+ inventory_basis: z.ZodDefault<z.ZodLiteral<"listing_representation">>;
10
+ }, z.core.$strict>;
11
+ export declare const SmartFeedResourceSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
12
+ resource_type: z.ZodLiteral<"identity_resolution">;
13
+ resource_id: z.ZodString;
14
+ revision: z.ZodString;
15
+ payload: z.ZodLazy<z.ZodObject<{
16
+ id: z.ZodString;
17
+ source_namespace: z.ZodString;
18
+ kind: z.ZodEnum<{
19
+ office: "office";
20
+ professional: "professional";
21
+ organization: "organization";
22
+ team: "team";
23
+ }>;
24
+ revision: z.ZodString;
25
+ canonical_id: z.ZodNullable<z.ZodString>;
26
+ state: z.ZodEnum<{
27
+ source_identity: "source_identity";
28
+ canonical: "canonical";
29
+ }>;
30
+ members: z.ZodArray<z.ZodObject<{
31
+ entity_id: z.ZodString;
32
+ source_namespace: z.ZodString;
33
+ }, z.core.$strict>>;
34
+ }, z.core.$strict>>;
35
+ }, z.core.$strict>, z.ZodObject<{
36
+ resource_type: z.ZodLiteral<"listing">;
37
+ resource_id: z.ZodString;
38
+ revision: z.ZodString;
39
+ payload: z.ZodLazy<z.ZodObject<{
40
+ id: z.ZodString;
41
+ episode_id: z.ZodString;
42
+ revision: z.ZodString;
43
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
44
+ source_identities: z.ZodArray<z.ZodObject<{
45
+ source: z.ZodString;
46
+ key: z.ZodString;
47
+ }, z.core.$strict>>;
48
+ market_status: z.ZodEnum<{
49
+ pending: "pending";
50
+ unknown: "unknown";
51
+ expired: "expired";
52
+ active: "active";
53
+ active_under_contract: "active_under_contract";
54
+ sold: "sold";
55
+ withdrawn: "withdrawn";
56
+ }>;
57
+ source_availability: z.ZodEnum<{
58
+ present: "present";
59
+ removed_unknown: "removed_unknown";
60
+ }>;
61
+ display_eligibility: z.ZodBoolean;
62
+ price: z.ZodNullable<z.ZodObject<{
63
+ amount: z.ZodString;
64
+ currency: z.ZodString;
65
+ period: z.ZodNullable<z.ZodString>;
66
+ }, z.core.$strict>>;
67
+ transaction_type: z.ZodOptional<z.ZodEnum<{
68
+ unknown: "unknown";
69
+ conflicting: "conflicting";
70
+ for_sale: "for_sale";
71
+ for_rent: "for_rent";
72
+ }>>;
73
+ price_period_state: z.ZodOptional<z.ZodEnum<{
74
+ unknown: "unknown";
75
+ supported: "supported";
76
+ not_stated: "not_stated";
77
+ conflicting: "conflicting";
78
+ }>>;
79
+ address: z.ZodObject<{
80
+ street: z.ZodNullable<z.ZodString>;
81
+ unit: z.ZodNullable<z.ZodString>;
82
+ city: z.ZodNullable<z.ZodString>;
83
+ region: z.ZodNullable<z.ZodString>;
84
+ postal_code: z.ZodNullable<z.ZodString>;
85
+ country: z.ZodNullable<z.ZodString>;
86
+ }, z.core.$strict>;
87
+ listing_agent_ids: z.ZodArray<z.ZodString>;
88
+ description: z.ZodNullable<z.ZodString>;
89
+ photos: z.ZodArray<z.ZodString>;
90
+ photo_count: z.ZodOptional<z.ZodNumber>;
91
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
92
+ url: z.ZodURL;
93
+ order: z.ZodNumber;
94
+ caption: z.ZodNullable<z.ZodString>;
95
+ width: z.ZodNullable<z.ZodNumber>;
96
+ height: z.ZodNullable<z.ZodNumber>;
97
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
98
+ delivery: z.ZodEnum<{
99
+ source_url: "source_url";
100
+ hosted: "hosted";
101
+ }>;
102
+ renditions: z.ZodOptional<z.ZodObject<{
103
+ thumbnail: z.ZodObject<{
104
+ url: z.ZodURL;
105
+ max_width: z.ZodNumber;
106
+ max_height: z.ZodNumber;
107
+ }, z.core.$strict>;
108
+ map: z.ZodObject<{
109
+ url: z.ZodURL;
110
+ max_width: z.ZodNumber;
111
+ max_height: z.ZodNumber;
112
+ }, z.core.$strict>;
113
+ card: z.ZodObject<{
114
+ url: z.ZodURL;
115
+ max_width: z.ZodNumber;
116
+ max_height: z.ZodNumber;
117
+ }, z.core.$strict>;
118
+ gallery: z.ZodObject<{
119
+ url: z.ZodURL;
120
+ max_width: z.ZodNumber;
121
+ max_height: z.ZodNumber;
122
+ }, z.core.$strict>;
123
+ }, z.core.$strict>>;
124
+ }, z.core.$strict>>>;
125
+ attribution: z.ZodOptional<z.ZodObject<{
126
+ agent_name: z.ZodNullable<z.ZodString>;
127
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
128
+ office_name: z.ZodNullable<z.ZodString>;
129
+ office_key: z.ZodNullable<z.ZodString>;
130
+ office_phone: z.ZodNullable<z.ZodString>;
131
+ office_website: z.ZodNullable<z.ZodURL>;
132
+ broker_name: z.ZodNullable<z.ZodString>;
133
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
134
+ originating_system: z.ZodNullable<z.ZodString>;
135
+ }, z.core.$strict>>;
136
+ property_details: z.ZodOptional<z.ZodObject<{
137
+ category: z.ZodNullable<z.ZodString>;
138
+ sub_type: z.ZodNullable<z.ZodString>;
139
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
140
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
141
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
142
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
143
+ stories: z.ZodNullable<z.ZodNumber>;
144
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
145
+ parking_total: z.ZodNullable<z.ZodNumber>;
146
+ county: z.ZodNullable<z.ZodString>;
147
+ subdivision: z.ZodNullable<z.ZodString>;
148
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
149
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
150
+ AssociationYN: "AssociationYN";
151
+ AttachedGarageYN: "AttachedGarageYN";
152
+ BasementYN: "BasementYN";
153
+ CarportYN: "CarportYN";
154
+ CoolingYN: "CoolingYN";
155
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
156
+ FireplaceYN: "FireplaceYN";
157
+ GarageYN: "GarageYN";
158
+ HeatingYN: "HeatingYN";
159
+ NewConstructionYN: "NewConstructionYN";
160
+ PoolPrivateYN: "PoolPrivateYN";
161
+ SpaYN: "SpaYN";
162
+ WaterfrontYN: "WaterfrontYN";
163
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
164
+ Dock: "Dock";
165
+ }> & z.core.$partial, z.ZodBoolean>>;
166
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
167
+ kind: z.ZodEnum<{
168
+ association: "association";
169
+ association_secondary: "association_secondary";
170
+ }>;
171
+ amount: z.ZodNullable<z.ZodString>;
172
+ amount_state: z.ZodEnum<{
173
+ unknown: "unknown";
174
+ supported: "supported";
175
+ not_stated: "not_stated";
176
+ }>;
177
+ currency: z.ZodNullable<z.ZodString>;
178
+ currency_source: z.ZodNullable<z.ZodEnum<{
179
+ field: "field";
180
+ source_default: "source_default";
181
+ }>>;
182
+ currency_state: z.ZodEnum<{
183
+ unknown: "unknown";
184
+ supported: "supported";
185
+ not_stated: "not_stated";
186
+ }>;
187
+ period: z.ZodNullable<z.ZodEnum<{
188
+ year: "year";
189
+ day: "day";
190
+ week: "week";
191
+ month: "month";
192
+ quarter: "quarter";
193
+ half_year: "half_year";
194
+ one_time: "one_time";
195
+ }>>;
196
+ period_state: z.ZodEnum<{
197
+ unknown: "unknown";
198
+ supported: "supported";
199
+ not_stated: "not_stated";
200
+ }>;
201
+ source_paths: z.ZodArray<z.ZodString>;
202
+ }, z.core.$strict>>>;
203
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
204
+ type: z.ZodNullable<z.ZodString>;
205
+ level: z.ZodNullable<z.ZodString>;
206
+ features: z.ZodArray<z.ZodString>;
207
+ dimensions: z.ZodNullable<z.ZodString>;
208
+ length: z.ZodNullable<z.ZodNumber>;
209
+ width: z.ZodNullable<z.ZodNumber>;
210
+ unit: z.ZodNullable<z.ZodString>;
211
+ source_paths: z.ZodArray<z.ZodString>;
212
+ }, z.core.$strict>>>;
213
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
214
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
215
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
216
+ }, z.core.$strict>>;
217
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
218
+ property_type: z.ZodNullable<z.ZodString>;
219
+ bedrooms: z.ZodNullable<z.ZodNumber>;
220
+ bathrooms: z.ZodNullable<z.ZodNumber>;
221
+ living_area: z.ZodNullable<z.ZodNumber>;
222
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
223
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
224
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
225
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
226
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
227
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
228
+ location: z.ZodOptional<z.ZodObject<{
229
+ state: z.ZodEnum<{
230
+ source: "source";
231
+ pending: "pending";
232
+ resolved: "resolved";
233
+ coarse: "coarse";
234
+ unavailable: "unavailable";
235
+ stale: "stale";
236
+ suppressed: "suppressed";
237
+ }>;
238
+ origin: z.ZodNullable<z.ZodEnum<{
239
+ source: "source";
240
+ geocoded: "geocoded";
241
+ }>>;
242
+ precision: z.ZodEnum<{
243
+ source_unknown: "source_unknown";
244
+ parcel: "parcel";
245
+ street: "street";
246
+ area: "area";
247
+ unknown: "unknown";
248
+ }>;
249
+ map_eligible: z.ZodBoolean;
250
+ coordinates: z.ZodNullable<z.ZodObject<{
251
+ latitude: z.ZodNumber;
252
+ longitude: z.ZodNumber;
253
+ }, z.core.$strip>>;
254
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
255
+ accuracy_type: z.ZodNullable<z.ZodString>;
256
+ match_type: z.ZodNullable<z.ZodString>;
257
+ provider: z.ZodNullable<z.ZodString>;
258
+ provider_version: z.ZodNullable<z.ZodString>;
259
+ policy_version: z.ZodString;
260
+ source: z.ZodNullable<z.ZodString>;
261
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
262
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
263
+ country_code: z.ZodNullable<z.ZodString>;
264
+ region_code: z.ZodNullable<z.ZodString>;
265
+ timezone: z.ZodNullable<z.ZodString>;
266
+ enrichment: z.ZodNullable<z.ZodObject<{
267
+ provider: z.ZodString;
268
+ provider_version: z.ZodString;
269
+ resolved_at: z.ZodISODateTime;
270
+ valid_until: z.ZodISODateTime;
271
+ fields: z.ZodArray<z.ZodEnum<{
272
+ timezone: "timezone";
273
+ census2025: "census2025";
274
+ }>>;
275
+ }, z.core.$strip>>;
276
+ geography: z.ZodNullable<z.ZodObject<{
277
+ census_year: z.ZodNumber;
278
+ state_fips: z.ZodNullable<z.ZodString>;
279
+ county_fips: z.ZodNullable<z.ZodString>;
280
+ tract_geoid: z.ZodNullable<z.ZodString>;
281
+ block_geoid: z.ZodNullable<z.ZodString>;
282
+ place_fips: z.ZodNullable<z.ZodString>;
283
+ cbsa_code: z.ZodNullable<z.ZodString>;
284
+ source: z.ZodNullable<z.ZodString>;
285
+ }, z.core.$strip>>;
286
+ issue: z.ZodNullable<z.ZodEnum<{
287
+ pending: "pending";
288
+ invalid_source_point: "invalid_source_point";
289
+ insufficient_address: "insufficient_address";
290
+ unsupported_country: "unsupported_country";
291
+ no_match: "no_match";
292
+ low_quality: "low_quality";
293
+ provider_failure: "provider_failure";
294
+ expired: "expired";
295
+ display_restricted: "display_restricted";
296
+ }>>;
297
+ }, z.core.$strip>>;
298
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
299
+ source_url: z.ZodNullable<z.ZodString>;
300
+ listed_date: z.ZodNullable<z.ZodString>;
301
+ listed_precision: z.ZodEnum<{
302
+ unknown: "unknown";
303
+ date: "date";
304
+ instant: "instant";
305
+ }>;
306
+ open_houses: z.ZodArray<z.ZodObject<{
307
+ id: z.ZodString;
308
+ start_at: z.ZodString;
309
+ end_at: z.ZodNullable<z.ZodString>;
310
+ timezone: z.ZodNullable<z.ZodString>;
311
+ status: z.ZodEnum<{
312
+ scheduled: "scheduled";
313
+ cancelled: "cancelled";
314
+ }>;
315
+ }, z.core.$strict>>;
316
+ classifications: z.ZodArray<z.ZodObject<{
317
+ attribute: z.ZodString;
318
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
319
+ evidence_state: z.ZodEnum<{
320
+ supported: "supported";
321
+ not_stated: "not_stated";
322
+ conflicting: "conflicting";
323
+ explicitly_absent: "explicitly_absent";
324
+ }>;
325
+ origin: z.ZodEnum<{
326
+ source_structured: "source_structured";
327
+ source_text_interpreted: "source_text_interpreted";
328
+ }>;
329
+ evidence_refs: z.ZodArray<z.ZodString>;
330
+ input_fingerprint: z.ZodString;
331
+ taxonomy_version: z.ZodString;
332
+ evaluation_id: z.ZodString;
333
+ freshness: z.ZodEnum<{
334
+ pending: "pending";
335
+ current: "current";
336
+ invalidated: "invalidated";
337
+ failed: "failed";
338
+ }>;
339
+ }, z.core.$strict>>;
340
+ display: z.ZodObject<{
341
+ address_allowed: z.ZodBoolean;
342
+ disclaimer: z.ZodNullable<z.ZodString>;
343
+ }, z.core.$strict>;
344
+ freshness: z.ZodObject<{
345
+ last_seen_at: z.ZodISODateTime;
346
+ published_at: z.ZodISODateTime;
347
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
348
+ }, z.core.$strict>;
349
+ source_amenities: z.ZodOptional<z.ZodObject<{
350
+ version: z.ZodLiteral<"source-amenities-v1">;
351
+ values: z.ZodRecord<z.ZodEnum<{
352
+ hardwood: "hardwood";
353
+ solar: "solar";
354
+ ev_charger: "ev_charger";
355
+ rv_parking: "rv_parking";
356
+ view: "view";
357
+ }>, z.ZodObject<{
358
+ value: z.ZodNullable<z.ZodBoolean>;
359
+ state: z.ZodEnum<{
360
+ supported: "supported";
361
+ not_stated: "not_stated";
362
+ conflicting: "conflicting";
363
+ }>;
364
+ source_paths: z.ZodArray<z.ZodString>;
365
+ }, z.core.$strict>>;
366
+ }, z.core.$strict>>;
367
+ search_document: z.ZodOptional<z.ZodObject<{
368
+ version: z.ZodLiteral<"catalog-search-text-v1">;
369
+ text: z.ZodString;
370
+ }, z.core.$strict>>;
371
+ content_hash: z.ZodOptional<z.ZodString>;
372
+ source_fields: z.ZodOptional<z.ZodObject<{
373
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
374
+ }, z.core.$strict>>;
375
+ source_metadata: z.ZodOptional<z.ZodObject<{
376
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
377
+ parser_version: z.ZodString;
378
+ exposure_version: z.ZodString;
379
+ source_system_id: z.ZodNullable<z.ZodString>;
380
+ source_system_name: z.ZodNullable<z.ZodString>;
381
+ originating_system_name: z.ZodNullable<z.ZodString>;
382
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
383
+ supplied_paths: z.ZodArray<z.ZodString>;
384
+ }, z.core.$strict>>;
385
+ market_dates: z.ZodOptional<z.ZodObject<{
386
+ listing_contract: z.ZodObject<{
387
+ value: z.ZodNullable<z.ZodString>;
388
+ precision: z.ZodEnum<{
389
+ unknown: "unknown";
390
+ date: "date";
391
+ instant: "instant";
392
+ }>;
393
+ }, z.core.$strict>;
394
+ on_market: z.ZodObject<{
395
+ value: z.ZodNullable<z.ZodString>;
396
+ precision: z.ZodEnum<{
397
+ unknown: "unknown";
398
+ date: "date";
399
+ instant: "instant";
400
+ }>;
401
+ }, z.core.$strict>;
402
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
403
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
404
+ }, z.core.$strict>>;
405
+ taxes: z.ZodOptional<z.ZodObject<{
406
+ annual_amount: z.ZodNullable<z.ZodString>;
407
+ currency: z.ZodNullable<z.ZodString>;
408
+ year: z.ZodNullable<z.ZodNumber>;
409
+ }, z.core.$strict>>;
410
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
411
+ level: z.ZodEnum<{
412
+ elementary: "elementary";
413
+ middle: "middle";
414
+ high: "high";
415
+ }>;
416
+ name: z.ZodNullable<z.ZodString>;
417
+ district: z.ZodNullable<z.ZodString>;
418
+ }, z.core.$strict>>>;
419
+ price_history: z.ZodOptional<z.ZodObject<{
420
+ original_amount: z.ZodNullable<z.ZodString>;
421
+ previous_amount: z.ZodNullable<z.ZodString>;
422
+ low_amount: z.ZodNullable<z.ZodString>;
423
+ currency: z.ZodNullable<z.ZodString>;
424
+ original_currency: z.ZodNullable<z.ZodString>;
425
+ previous_currency: z.ZodNullable<z.ZodString>;
426
+ low_currency: z.ZodNullable<z.ZodString>;
427
+ changed_at: z.ZodObject<{
428
+ value: z.ZodNullable<z.ZodString>;
429
+ precision: z.ZodEnum<{
430
+ unknown: "unknown";
431
+ date: "date";
432
+ instant: "instant";
433
+ }>;
434
+ }, z.core.$strict>;
435
+ }, z.core.$strict>>;
436
+ virtual_tours: z.ZodOptional<z.ZodObject<{
437
+ branded_url: z.ZodNullable<z.ZodURL>;
438
+ unbranded_url: z.ZodNullable<z.ZodURL>;
439
+ }, z.core.$strict>>;
440
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
441
+ url: z.ZodURL;
442
+ categories: z.ZodArray<z.ZodString>;
443
+ order: z.ZodNumber;
444
+ caption: z.ZodNullable<z.ZodString>;
445
+ }, z.core.$strict>>>;
446
+ professionals: z.ZodOptional<z.ZodObject<{
447
+ agent: z.ZodObject<{
448
+ full_name: z.ZodNullable<z.ZodString>;
449
+ first_name: z.ZodNullable<z.ZodString>;
450
+ last_name: z.ZodNullable<z.ZodString>;
451
+ license: z.ZodNullable<z.ZodString>;
452
+ }, z.core.$strict>;
453
+ office: z.ZodObject<{
454
+ key: z.ZodNullable<z.ZodString>;
455
+ mls_id: z.ZodNullable<z.ZodString>;
456
+ name: z.ZodNullable<z.ZodString>;
457
+ broker_mls_id: z.ZodNullable<z.ZodString>;
458
+ corporate_id: z.ZodNullable<z.ZodString>;
459
+ main_office_id: z.ZodNullable<z.ZodString>;
460
+ website_url: z.ZodNullable<z.ZodURL>;
461
+ address: z.ZodObject<{
462
+ street: z.ZodNullable<z.ZodString>;
463
+ unit: z.ZodNullable<z.ZodString>;
464
+ city: z.ZodNullable<z.ZodString>;
465
+ region: z.ZodNullable<z.ZodString>;
466
+ postal_code: z.ZodNullable<z.ZodString>;
467
+ country: z.ZodNullable<z.ZodString>;
468
+ }, z.core.$strict>;
469
+ }, z.core.$strict>;
470
+ brokerage: z.ZodObject<{
471
+ name: z.ZodNullable<z.ZodString>;
472
+ website_url: z.ZodNullable<z.ZodURL>;
473
+ logo_url: z.ZodNullable<z.ZodURL>;
474
+ address: z.ZodObject<{
475
+ street: z.ZodNullable<z.ZodString>;
476
+ unit: z.ZodNullable<z.ZodString>;
477
+ city: z.ZodNullable<z.ZodString>;
478
+ region: z.ZodNullable<z.ZodString>;
479
+ postal_code: z.ZodNullable<z.ZodString>;
480
+ country: z.ZodNullable<z.ZodString>;
481
+ }, z.core.$strict>;
482
+ }, z.core.$strict>;
483
+ builder: z.ZodObject<{
484
+ name: z.ZodNullable<z.ZodString>;
485
+ }, z.core.$strict>;
486
+ franchise: z.ZodNullable<z.ZodString>;
487
+ }, z.core.$strict>>;
488
+ permissions: z.ZodOptional<z.ZodObject<{
489
+ internet_display: z.ZodNullable<z.ZodBoolean>;
490
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
491
+ address_display: z.ZodNullable<z.ZodBoolean>;
492
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
493
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
494
+ }, z.core.$strict>>;
495
+ }, z.core.$strict>>;
496
+ }, z.core.$strict>, z.ZodObject<{
497
+ resource_type: z.ZodLiteral<"entity">;
498
+ resource_id: z.ZodString;
499
+ revision: z.ZodString;
500
+ payload: z.ZodLazy<z.ZodObject<{
501
+ id: z.ZodString;
502
+ kind: z.ZodEnum<{
503
+ office: "office";
504
+ professional: "professional";
505
+ organization: "organization";
506
+ team: "team";
507
+ }>;
508
+ source_identities: z.ZodArray<z.ZodObject<{
509
+ source: z.ZodString;
510
+ key: z.ZodString;
511
+ key_kind: z.ZodEnum<{
512
+ source: "source";
513
+ derived_observation: "derived_observation";
514
+ }>;
515
+ legacy_agent_id: z.ZodNullable<z.ZodString>;
516
+ }, z.core.$strict>>;
517
+ revision: z.ZodString;
518
+ name: z.ZodNullable<z.ZodString>;
519
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>>;
520
+ field_evidence: z.ZodRecord<z.ZodString, z.ZodObject<{
521
+ state: z.ZodEnum<{
522
+ supported: "supported";
523
+ conflicting: "conflicting";
524
+ withdrawn: "withdrawn";
525
+ }>;
526
+ observation_ids: z.ZodArray<z.ZodString>;
527
+ authority: z.ZodEnum<{
528
+ source_listing: "source_listing";
529
+ product_verified: "product_verified";
530
+ operator_verified: "operator_verified";
531
+ }>;
532
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
533
+ }, z.core.$strict>>;
534
+ resolution_state: z.ZodEnum<{
535
+ source_identity: "source_identity";
536
+ provisional: "provisional";
537
+ }>;
538
+ source_availability: z.ZodEnum<{
539
+ present: "present";
540
+ unrepresented: "unrepresented";
541
+ }>;
542
+ first_seen_at: z.ZodISODateTime;
543
+ last_seen_at: z.ZodISODateTime;
544
+ updated_at: z.ZodISODateTime;
545
+ }, z.core.$strict>>;
546
+ }, z.core.$strict>, z.ZodObject<{
547
+ resource_type: z.ZodLiteral<"relationship">;
548
+ resource_id: z.ZodString;
549
+ revision: z.ZodString;
550
+ payload: z.ZodLazy<z.ZodObject<{
551
+ id: z.ZodString;
552
+ source: z.ZodString;
553
+ subject_id: z.ZodString;
554
+ object_id: z.ZodString;
555
+ relationship: z.ZodEnum<{
556
+ observed_at_office: "observed_at_office";
557
+ observed_brokerage: "observed_brokerage";
558
+ affiliated_with: "affiliated_with";
559
+ operates: "operates";
560
+ member_of: "member_of";
561
+ }>;
562
+ evidence_state: z.ZodEnum<{
563
+ observed: "observed";
564
+ verified: "verified";
565
+ }>;
566
+ authority: z.ZodEnum<{
567
+ source_listing: "source_listing";
568
+ product_verified: "product_verified";
569
+ operator_verified: "operator_verified";
570
+ }>;
571
+ revision: z.ZodString;
572
+ current: z.ZodBoolean;
573
+ listing_id: z.ZodNullable<z.ZodString>;
574
+ observed_at: z.ZodISODateTime;
575
+ effective_from: z.ZodNullable<z.ZodISODateTime>;
576
+ effective_to: z.ZodNullable<z.ZodISODateTime>;
577
+ evidence_ref: z.ZodString;
578
+ }, z.core.$strict>>;
579
+ }, z.core.$strict>], "resource_type">;
580
+ export type SmartFeedResource = z.infer<typeof SmartFeedResourceSchema>;
581
+ export declare const SmartFeedChangeSchema: z.ZodObject<{
582
+ sequence: z.ZodString;
583
+ group_id: z.ZodString;
584
+ group_end_sequence: z.ZodString;
585
+ group_index: z.ZodNumber;
586
+ group_size: z.ZodNumber;
587
+ resource_type: z.ZodEnum<{
588
+ relationship: "relationship";
589
+ identity_resolution: "identity_resolution";
590
+ listing: "listing";
591
+ entity: "entity";
592
+ }>;
593
+ resource_id: z.ZodString;
594
+ revision: z.ZodString;
595
+ operation: z.ZodEnum<{
596
+ upsert: "upsert";
597
+ remove: "remove";
598
+ }>;
599
+ resource: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
600
+ resource_type: z.ZodLiteral<"identity_resolution">;
601
+ resource_id: z.ZodString;
602
+ revision: z.ZodString;
603
+ payload: z.ZodLazy<z.ZodObject<{
604
+ id: z.ZodString;
605
+ source_namespace: z.ZodString;
606
+ kind: z.ZodEnum<{
607
+ office: "office";
608
+ professional: "professional";
609
+ organization: "organization";
610
+ team: "team";
611
+ }>;
612
+ revision: z.ZodString;
613
+ canonical_id: z.ZodNullable<z.ZodString>;
614
+ state: z.ZodEnum<{
615
+ source_identity: "source_identity";
616
+ canonical: "canonical";
617
+ }>;
618
+ members: z.ZodArray<z.ZodObject<{
619
+ entity_id: z.ZodString;
620
+ source_namespace: z.ZodString;
621
+ }, z.core.$strict>>;
622
+ }, z.core.$strict>>;
623
+ }, z.core.$strict>, z.ZodObject<{
624
+ resource_type: z.ZodLiteral<"listing">;
625
+ resource_id: z.ZodString;
626
+ revision: z.ZodString;
627
+ payload: z.ZodLazy<z.ZodObject<{
628
+ id: z.ZodString;
629
+ episode_id: z.ZodString;
630
+ revision: z.ZodString;
631
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
632
+ source_identities: z.ZodArray<z.ZodObject<{
633
+ source: z.ZodString;
634
+ key: z.ZodString;
635
+ }, z.core.$strict>>;
636
+ market_status: z.ZodEnum<{
637
+ pending: "pending";
638
+ unknown: "unknown";
639
+ expired: "expired";
640
+ active: "active";
641
+ active_under_contract: "active_under_contract";
642
+ sold: "sold";
643
+ withdrawn: "withdrawn";
644
+ }>;
645
+ source_availability: z.ZodEnum<{
646
+ present: "present";
647
+ removed_unknown: "removed_unknown";
648
+ }>;
649
+ display_eligibility: z.ZodBoolean;
650
+ price: z.ZodNullable<z.ZodObject<{
651
+ amount: z.ZodString;
652
+ currency: z.ZodString;
653
+ period: z.ZodNullable<z.ZodString>;
654
+ }, z.core.$strict>>;
655
+ transaction_type: z.ZodOptional<z.ZodEnum<{
656
+ unknown: "unknown";
657
+ conflicting: "conflicting";
658
+ for_sale: "for_sale";
659
+ for_rent: "for_rent";
660
+ }>>;
661
+ price_period_state: z.ZodOptional<z.ZodEnum<{
662
+ unknown: "unknown";
663
+ supported: "supported";
664
+ not_stated: "not_stated";
665
+ conflicting: "conflicting";
666
+ }>>;
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
+ listing_agent_ids: z.ZodArray<z.ZodString>;
676
+ description: z.ZodNullable<z.ZodString>;
677
+ photos: z.ZodArray<z.ZodString>;
678
+ photo_count: z.ZodOptional<z.ZodNumber>;
679
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
680
+ url: z.ZodURL;
681
+ order: z.ZodNumber;
682
+ caption: z.ZodNullable<z.ZodString>;
683
+ width: z.ZodNullable<z.ZodNumber>;
684
+ height: z.ZodNullable<z.ZodNumber>;
685
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
686
+ delivery: z.ZodEnum<{
687
+ source_url: "source_url";
688
+ hosted: "hosted";
689
+ }>;
690
+ renditions: z.ZodOptional<z.ZodObject<{
691
+ thumbnail: z.ZodObject<{
692
+ url: z.ZodURL;
693
+ max_width: z.ZodNumber;
694
+ max_height: z.ZodNumber;
695
+ }, z.core.$strict>;
696
+ map: z.ZodObject<{
697
+ url: z.ZodURL;
698
+ max_width: z.ZodNumber;
699
+ max_height: z.ZodNumber;
700
+ }, z.core.$strict>;
701
+ card: z.ZodObject<{
702
+ url: z.ZodURL;
703
+ max_width: z.ZodNumber;
704
+ max_height: z.ZodNumber;
705
+ }, z.core.$strict>;
706
+ gallery: z.ZodObject<{
707
+ url: z.ZodURL;
708
+ max_width: z.ZodNumber;
709
+ max_height: z.ZodNumber;
710
+ }, z.core.$strict>;
711
+ }, z.core.$strict>>;
712
+ }, z.core.$strict>>>;
713
+ attribution: z.ZodOptional<z.ZodObject<{
714
+ agent_name: z.ZodNullable<z.ZodString>;
715
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
716
+ office_name: z.ZodNullable<z.ZodString>;
717
+ office_key: z.ZodNullable<z.ZodString>;
718
+ office_phone: z.ZodNullable<z.ZodString>;
719
+ office_website: z.ZodNullable<z.ZodURL>;
720
+ broker_name: z.ZodNullable<z.ZodString>;
721
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
722
+ originating_system: z.ZodNullable<z.ZodString>;
723
+ }, z.core.$strict>>;
724
+ property_details: z.ZodOptional<z.ZodObject<{
725
+ category: z.ZodNullable<z.ZodString>;
726
+ sub_type: z.ZodNullable<z.ZodString>;
727
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
728
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
729
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
730
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
731
+ stories: z.ZodNullable<z.ZodNumber>;
732
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
733
+ parking_total: z.ZodNullable<z.ZodNumber>;
734
+ county: z.ZodNullable<z.ZodString>;
735
+ subdivision: z.ZodNullable<z.ZodString>;
736
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
737
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
738
+ AssociationYN: "AssociationYN";
739
+ AttachedGarageYN: "AttachedGarageYN";
740
+ BasementYN: "BasementYN";
741
+ CarportYN: "CarportYN";
742
+ CoolingYN: "CoolingYN";
743
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
744
+ FireplaceYN: "FireplaceYN";
745
+ GarageYN: "GarageYN";
746
+ HeatingYN: "HeatingYN";
747
+ NewConstructionYN: "NewConstructionYN";
748
+ PoolPrivateYN: "PoolPrivateYN";
749
+ SpaYN: "SpaYN";
750
+ WaterfrontYN: "WaterfrontYN";
751
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
752
+ Dock: "Dock";
753
+ }> & z.core.$partial, z.ZodBoolean>>;
754
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
755
+ kind: z.ZodEnum<{
756
+ association: "association";
757
+ association_secondary: "association_secondary";
758
+ }>;
759
+ amount: z.ZodNullable<z.ZodString>;
760
+ amount_state: z.ZodEnum<{
761
+ unknown: "unknown";
762
+ supported: "supported";
763
+ not_stated: "not_stated";
764
+ }>;
765
+ currency: z.ZodNullable<z.ZodString>;
766
+ currency_source: z.ZodNullable<z.ZodEnum<{
767
+ field: "field";
768
+ source_default: "source_default";
769
+ }>>;
770
+ currency_state: z.ZodEnum<{
771
+ unknown: "unknown";
772
+ supported: "supported";
773
+ not_stated: "not_stated";
774
+ }>;
775
+ period: z.ZodNullable<z.ZodEnum<{
776
+ year: "year";
777
+ day: "day";
778
+ week: "week";
779
+ month: "month";
780
+ quarter: "quarter";
781
+ half_year: "half_year";
782
+ one_time: "one_time";
783
+ }>>;
784
+ period_state: z.ZodEnum<{
785
+ unknown: "unknown";
786
+ supported: "supported";
787
+ not_stated: "not_stated";
788
+ }>;
789
+ source_paths: z.ZodArray<z.ZodString>;
790
+ }, z.core.$strict>>>;
791
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
792
+ type: z.ZodNullable<z.ZodString>;
793
+ level: z.ZodNullable<z.ZodString>;
794
+ features: z.ZodArray<z.ZodString>;
795
+ dimensions: z.ZodNullable<z.ZodString>;
796
+ length: z.ZodNullable<z.ZodNumber>;
797
+ width: z.ZodNullable<z.ZodNumber>;
798
+ unit: z.ZodNullable<z.ZodString>;
799
+ source_paths: z.ZodArray<z.ZodString>;
800
+ }, z.core.$strict>>>;
801
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
802
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
803
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
804
+ }, z.core.$strict>>;
805
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
806
+ property_type: z.ZodNullable<z.ZodString>;
807
+ bedrooms: z.ZodNullable<z.ZodNumber>;
808
+ bathrooms: z.ZodNullable<z.ZodNumber>;
809
+ living_area: z.ZodNullable<z.ZodNumber>;
810
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
811
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
812
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
813
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
814
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
815
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
816
+ location: z.ZodOptional<z.ZodObject<{
817
+ state: z.ZodEnum<{
818
+ source: "source";
819
+ pending: "pending";
820
+ resolved: "resolved";
821
+ coarse: "coarse";
822
+ unavailable: "unavailable";
823
+ stale: "stale";
824
+ suppressed: "suppressed";
825
+ }>;
826
+ origin: z.ZodNullable<z.ZodEnum<{
827
+ source: "source";
828
+ geocoded: "geocoded";
829
+ }>>;
830
+ precision: z.ZodEnum<{
831
+ source_unknown: "source_unknown";
832
+ parcel: "parcel";
833
+ street: "street";
834
+ area: "area";
835
+ unknown: "unknown";
836
+ }>;
837
+ map_eligible: z.ZodBoolean;
838
+ coordinates: z.ZodNullable<z.ZodObject<{
839
+ latitude: z.ZodNumber;
840
+ longitude: z.ZodNumber;
841
+ }, z.core.$strip>>;
842
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
843
+ accuracy_type: z.ZodNullable<z.ZodString>;
844
+ match_type: z.ZodNullable<z.ZodString>;
845
+ provider: z.ZodNullable<z.ZodString>;
846
+ provider_version: z.ZodNullable<z.ZodString>;
847
+ policy_version: z.ZodString;
848
+ source: z.ZodNullable<z.ZodString>;
849
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
850
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
851
+ country_code: z.ZodNullable<z.ZodString>;
852
+ region_code: z.ZodNullable<z.ZodString>;
853
+ timezone: z.ZodNullable<z.ZodString>;
854
+ enrichment: z.ZodNullable<z.ZodObject<{
855
+ provider: z.ZodString;
856
+ provider_version: z.ZodString;
857
+ resolved_at: z.ZodISODateTime;
858
+ valid_until: z.ZodISODateTime;
859
+ fields: z.ZodArray<z.ZodEnum<{
860
+ timezone: "timezone";
861
+ census2025: "census2025";
862
+ }>>;
863
+ }, z.core.$strip>>;
864
+ geography: z.ZodNullable<z.ZodObject<{
865
+ census_year: z.ZodNumber;
866
+ state_fips: z.ZodNullable<z.ZodString>;
867
+ county_fips: z.ZodNullable<z.ZodString>;
868
+ tract_geoid: z.ZodNullable<z.ZodString>;
869
+ block_geoid: z.ZodNullable<z.ZodString>;
870
+ place_fips: z.ZodNullable<z.ZodString>;
871
+ cbsa_code: z.ZodNullable<z.ZodString>;
872
+ source: z.ZodNullable<z.ZodString>;
873
+ }, z.core.$strip>>;
874
+ issue: z.ZodNullable<z.ZodEnum<{
875
+ pending: "pending";
876
+ invalid_source_point: "invalid_source_point";
877
+ insufficient_address: "insufficient_address";
878
+ unsupported_country: "unsupported_country";
879
+ no_match: "no_match";
880
+ low_quality: "low_quality";
881
+ provider_failure: "provider_failure";
882
+ expired: "expired";
883
+ display_restricted: "display_restricted";
884
+ }>>;
885
+ }, z.core.$strip>>;
886
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
887
+ source_url: z.ZodNullable<z.ZodString>;
888
+ listed_date: z.ZodNullable<z.ZodString>;
889
+ listed_precision: z.ZodEnum<{
890
+ unknown: "unknown";
891
+ date: "date";
892
+ instant: "instant";
893
+ }>;
894
+ open_houses: z.ZodArray<z.ZodObject<{
895
+ id: z.ZodString;
896
+ start_at: z.ZodString;
897
+ end_at: z.ZodNullable<z.ZodString>;
898
+ timezone: z.ZodNullable<z.ZodString>;
899
+ status: z.ZodEnum<{
900
+ scheduled: "scheduled";
901
+ cancelled: "cancelled";
902
+ }>;
903
+ }, z.core.$strict>>;
904
+ classifications: z.ZodArray<z.ZodObject<{
905
+ attribute: z.ZodString;
906
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
907
+ evidence_state: z.ZodEnum<{
908
+ supported: "supported";
909
+ not_stated: "not_stated";
910
+ conflicting: "conflicting";
911
+ explicitly_absent: "explicitly_absent";
912
+ }>;
913
+ origin: z.ZodEnum<{
914
+ source_structured: "source_structured";
915
+ source_text_interpreted: "source_text_interpreted";
916
+ }>;
917
+ evidence_refs: z.ZodArray<z.ZodString>;
918
+ input_fingerprint: z.ZodString;
919
+ taxonomy_version: z.ZodString;
920
+ evaluation_id: z.ZodString;
921
+ freshness: z.ZodEnum<{
922
+ pending: "pending";
923
+ current: "current";
924
+ invalidated: "invalidated";
925
+ failed: "failed";
926
+ }>;
927
+ }, z.core.$strict>>;
928
+ display: z.ZodObject<{
929
+ address_allowed: z.ZodBoolean;
930
+ disclaimer: z.ZodNullable<z.ZodString>;
931
+ }, z.core.$strict>;
932
+ freshness: z.ZodObject<{
933
+ last_seen_at: z.ZodISODateTime;
934
+ published_at: z.ZodISODateTime;
935
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
936
+ }, z.core.$strict>;
937
+ source_amenities: z.ZodOptional<z.ZodObject<{
938
+ version: z.ZodLiteral<"source-amenities-v1">;
939
+ values: z.ZodRecord<z.ZodEnum<{
940
+ hardwood: "hardwood";
941
+ solar: "solar";
942
+ ev_charger: "ev_charger";
943
+ rv_parking: "rv_parking";
944
+ view: "view";
945
+ }>, z.ZodObject<{
946
+ value: z.ZodNullable<z.ZodBoolean>;
947
+ state: z.ZodEnum<{
948
+ supported: "supported";
949
+ not_stated: "not_stated";
950
+ conflicting: "conflicting";
951
+ }>;
952
+ source_paths: z.ZodArray<z.ZodString>;
953
+ }, z.core.$strict>>;
954
+ }, z.core.$strict>>;
955
+ search_document: z.ZodOptional<z.ZodObject<{
956
+ version: z.ZodLiteral<"catalog-search-text-v1">;
957
+ text: z.ZodString;
958
+ }, z.core.$strict>>;
959
+ content_hash: z.ZodOptional<z.ZodString>;
960
+ source_fields: z.ZodOptional<z.ZodObject<{
961
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
962
+ }, z.core.$strict>>;
963
+ source_metadata: z.ZodOptional<z.ZodObject<{
964
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
965
+ parser_version: z.ZodString;
966
+ exposure_version: z.ZodString;
967
+ source_system_id: z.ZodNullable<z.ZodString>;
968
+ source_system_name: z.ZodNullable<z.ZodString>;
969
+ originating_system_name: z.ZodNullable<z.ZodString>;
970
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
971
+ supplied_paths: z.ZodArray<z.ZodString>;
972
+ }, z.core.$strict>>;
973
+ market_dates: z.ZodOptional<z.ZodObject<{
974
+ listing_contract: z.ZodObject<{
975
+ value: z.ZodNullable<z.ZodString>;
976
+ precision: z.ZodEnum<{
977
+ unknown: "unknown";
978
+ date: "date";
979
+ instant: "instant";
980
+ }>;
981
+ }, z.core.$strict>;
982
+ on_market: z.ZodObject<{
983
+ value: z.ZodNullable<z.ZodString>;
984
+ precision: z.ZodEnum<{
985
+ unknown: "unknown";
986
+ date: "date";
987
+ instant: "instant";
988
+ }>;
989
+ }, z.core.$strict>;
990
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
991
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
992
+ }, z.core.$strict>>;
993
+ taxes: z.ZodOptional<z.ZodObject<{
994
+ annual_amount: z.ZodNullable<z.ZodString>;
995
+ currency: z.ZodNullable<z.ZodString>;
996
+ year: z.ZodNullable<z.ZodNumber>;
997
+ }, z.core.$strict>>;
998
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
999
+ level: z.ZodEnum<{
1000
+ elementary: "elementary";
1001
+ middle: "middle";
1002
+ high: "high";
1003
+ }>;
1004
+ name: z.ZodNullable<z.ZodString>;
1005
+ district: z.ZodNullable<z.ZodString>;
1006
+ }, z.core.$strict>>>;
1007
+ price_history: z.ZodOptional<z.ZodObject<{
1008
+ original_amount: z.ZodNullable<z.ZodString>;
1009
+ previous_amount: z.ZodNullable<z.ZodString>;
1010
+ low_amount: z.ZodNullable<z.ZodString>;
1011
+ currency: z.ZodNullable<z.ZodString>;
1012
+ original_currency: z.ZodNullable<z.ZodString>;
1013
+ previous_currency: z.ZodNullable<z.ZodString>;
1014
+ low_currency: z.ZodNullable<z.ZodString>;
1015
+ changed_at: z.ZodObject<{
1016
+ value: z.ZodNullable<z.ZodString>;
1017
+ precision: z.ZodEnum<{
1018
+ unknown: "unknown";
1019
+ date: "date";
1020
+ instant: "instant";
1021
+ }>;
1022
+ }, z.core.$strict>;
1023
+ }, z.core.$strict>>;
1024
+ virtual_tours: z.ZodOptional<z.ZodObject<{
1025
+ branded_url: z.ZodNullable<z.ZodURL>;
1026
+ unbranded_url: z.ZodNullable<z.ZodURL>;
1027
+ }, z.core.$strict>>;
1028
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1029
+ url: z.ZodURL;
1030
+ categories: z.ZodArray<z.ZodString>;
1031
+ order: z.ZodNumber;
1032
+ caption: z.ZodNullable<z.ZodString>;
1033
+ }, z.core.$strict>>>;
1034
+ professionals: z.ZodOptional<z.ZodObject<{
1035
+ agent: z.ZodObject<{
1036
+ full_name: z.ZodNullable<z.ZodString>;
1037
+ first_name: z.ZodNullable<z.ZodString>;
1038
+ last_name: z.ZodNullable<z.ZodString>;
1039
+ license: z.ZodNullable<z.ZodString>;
1040
+ }, z.core.$strict>;
1041
+ office: z.ZodObject<{
1042
+ key: z.ZodNullable<z.ZodString>;
1043
+ mls_id: z.ZodNullable<z.ZodString>;
1044
+ name: z.ZodNullable<z.ZodString>;
1045
+ broker_mls_id: z.ZodNullable<z.ZodString>;
1046
+ corporate_id: z.ZodNullable<z.ZodString>;
1047
+ main_office_id: z.ZodNullable<z.ZodString>;
1048
+ website_url: z.ZodNullable<z.ZodURL>;
1049
+ address: z.ZodObject<{
1050
+ street: z.ZodNullable<z.ZodString>;
1051
+ unit: z.ZodNullable<z.ZodString>;
1052
+ city: z.ZodNullable<z.ZodString>;
1053
+ region: z.ZodNullable<z.ZodString>;
1054
+ postal_code: z.ZodNullable<z.ZodString>;
1055
+ country: z.ZodNullable<z.ZodString>;
1056
+ }, z.core.$strict>;
1057
+ }, z.core.$strict>;
1058
+ brokerage: z.ZodObject<{
1059
+ name: z.ZodNullable<z.ZodString>;
1060
+ website_url: z.ZodNullable<z.ZodURL>;
1061
+ logo_url: z.ZodNullable<z.ZodURL>;
1062
+ address: z.ZodObject<{
1063
+ street: z.ZodNullable<z.ZodString>;
1064
+ unit: z.ZodNullable<z.ZodString>;
1065
+ city: z.ZodNullable<z.ZodString>;
1066
+ region: z.ZodNullable<z.ZodString>;
1067
+ postal_code: z.ZodNullable<z.ZodString>;
1068
+ country: z.ZodNullable<z.ZodString>;
1069
+ }, z.core.$strict>;
1070
+ }, z.core.$strict>;
1071
+ builder: z.ZodObject<{
1072
+ name: z.ZodNullable<z.ZodString>;
1073
+ }, z.core.$strict>;
1074
+ franchise: z.ZodNullable<z.ZodString>;
1075
+ }, z.core.$strict>>;
1076
+ permissions: z.ZodOptional<z.ZodObject<{
1077
+ internet_display: z.ZodNullable<z.ZodBoolean>;
1078
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
1079
+ address_display: z.ZodNullable<z.ZodBoolean>;
1080
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
1081
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
1082
+ }, z.core.$strict>>;
1083
+ }, z.core.$strict>>;
1084
+ }, z.core.$strict>, z.ZodObject<{
1085
+ resource_type: z.ZodLiteral<"entity">;
1086
+ resource_id: z.ZodString;
1087
+ revision: z.ZodString;
1088
+ payload: z.ZodLazy<z.ZodObject<{
1089
+ id: z.ZodString;
1090
+ kind: z.ZodEnum<{
1091
+ office: "office";
1092
+ professional: "professional";
1093
+ organization: "organization";
1094
+ team: "team";
1095
+ }>;
1096
+ source_identities: z.ZodArray<z.ZodObject<{
1097
+ source: z.ZodString;
1098
+ key: z.ZodString;
1099
+ key_kind: z.ZodEnum<{
1100
+ source: "source";
1101
+ derived_observation: "derived_observation";
1102
+ }>;
1103
+ legacy_agent_id: z.ZodNullable<z.ZodString>;
1104
+ }, z.core.$strict>>;
1105
+ revision: z.ZodString;
1106
+ name: z.ZodNullable<z.ZodString>;
1107
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>>;
1108
+ field_evidence: z.ZodRecord<z.ZodString, z.ZodObject<{
1109
+ state: z.ZodEnum<{
1110
+ supported: "supported";
1111
+ conflicting: "conflicting";
1112
+ withdrawn: "withdrawn";
1113
+ }>;
1114
+ observation_ids: z.ZodArray<z.ZodString>;
1115
+ authority: z.ZodEnum<{
1116
+ source_listing: "source_listing";
1117
+ product_verified: "product_verified";
1118
+ operator_verified: "operator_verified";
1119
+ }>;
1120
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
1121
+ }, z.core.$strict>>;
1122
+ resolution_state: z.ZodEnum<{
1123
+ source_identity: "source_identity";
1124
+ provisional: "provisional";
1125
+ }>;
1126
+ source_availability: z.ZodEnum<{
1127
+ present: "present";
1128
+ unrepresented: "unrepresented";
1129
+ }>;
1130
+ first_seen_at: z.ZodISODateTime;
1131
+ last_seen_at: z.ZodISODateTime;
1132
+ updated_at: z.ZodISODateTime;
1133
+ }, z.core.$strict>>;
1134
+ }, z.core.$strict>, z.ZodObject<{
1135
+ resource_type: z.ZodLiteral<"relationship">;
1136
+ resource_id: z.ZodString;
1137
+ revision: z.ZodString;
1138
+ payload: z.ZodLazy<z.ZodObject<{
1139
+ id: z.ZodString;
1140
+ source: z.ZodString;
1141
+ subject_id: z.ZodString;
1142
+ object_id: z.ZodString;
1143
+ relationship: z.ZodEnum<{
1144
+ observed_at_office: "observed_at_office";
1145
+ observed_brokerage: "observed_brokerage";
1146
+ affiliated_with: "affiliated_with";
1147
+ operates: "operates";
1148
+ member_of: "member_of";
1149
+ }>;
1150
+ evidence_state: z.ZodEnum<{
1151
+ observed: "observed";
1152
+ verified: "verified";
1153
+ }>;
1154
+ authority: z.ZodEnum<{
1155
+ source_listing: "source_listing";
1156
+ product_verified: "product_verified";
1157
+ operator_verified: "operator_verified";
1158
+ }>;
1159
+ revision: z.ZodString;
1160
+ current: z.ZodBoolean;
1161
+ listing_id: z.ZodNullable<z.ZodString>;
1162
+ observed_at: z.ZodISODateTime;
1163
+ effective_from: z.ZodNullable<z.ZodISODateTime>;
1164
+ effective_to: z.ZodNullable<z.ZodISODateTime>;
1165
+ evidence_ref: z.ZodString;
1166
+ }, z.core.$strict>>;
1167
+ }, z.core.$strict>], "resource_type">>;
1168
+ }, z.core.$strict>;
1169
+ export type SmartFeedChange = z.infer<typeof SmartFeedChangeSchema>;
1170
+ export declare const SmartFeedSnapshotSchema: z.ZodObject<{
1171
+ id: z.ZodString;
1172
+ dataset_id: z.ZodString;
1173
+ status: z.ZodEnum<{
1174
+ expired: "expired";
1175
+ ready: "ready";
1176
+ }>;
1177
+ schema_version: z.ZodLiteral<"smart-feed-v2">;
1178
+ selector: z.ZodObject<{
1179
+ mode: z.ZodDefault<z.ZodEnum<{
1180
+ directory: "directory";
1181
+ combined: "combined";
1182
+ }>>;
1183
+ party_id: z.ZodOptional<z.ZodString>;
1184
+ inventory_basis: z.ZodDefault<z.ZodLiteral<"listing_representation">>;
1185
+ }, z.core.$strict>;
1186
+ entitlement_fingerprint: z.ZodString;
1187
+ snapshot_sequence: z.ZodString;
1188
+ replay_cursor: z.ZodString;
1189
+ created_at: z.ZodISODateTime;
1190
+ expires_at: z.ZodISODateTime;
1191
+ }, z.core.$strict>;
1192
+ export declare const SmartFeedSnapshotPageSchema: z.ZodObject<{
1193
+ data: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
1194
+ resource_type: z.ZodLiteral<"identity_resolution">;
1195
+ resource_id: z.ZodString;
1196
+ revision: z.ZodString;
1197
+ payload: z.ZodLazy<z.ZodObject<{
1198
+ id: z.ZodString;
1199
+ source_namespace: z.ZodString;
1200
+ kind: z.ZodEnum<{
1201
+ office: "office";
1202
+ professional: "professional";
1203
+ organization: "organization";
1204
+ team: "team";
1205
+ }>;
1206
+ revision: z.ZodString;
1207
+ canonical_id: z.ZodNullable<z.ZodString>;
1208
+ state: z.ZodEnum<{
1209
+ source_identity: "source_identity";
1210
+ canonical: "canonical";
1211
+ }>;
1212
+ members: z.ZodArray<z.ZodObject<{
1213
+ entity_id: z.ZodString;
1214
+ source_namespace: z.ZodString;
1215
+ }, z.core.$strict>>;
1216
+ }, z.core.$strict>>;
1217
+ }, z.core.$strict>, z.ZodObject<{
1218
+ resource_type: z.ZodLiteral<"listing">;
1219
+ resource_id: z.ZodString;
1220
+ revision: z.ZodString;
1221
+ payload: z.ZodLazy<z.ZodObject<{
1222
+ id: z.ZodString;
1223
+ episode_id: z.ZodString;
1224
+ revision: z.ZodString;
1225
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1226
+ source_identities: z.ZodArray<z.ZodObject<{
1227
+ source: z.ZodString;
1228
+ key: z.ZodString;
1229
+ }, z.core.$strict>>;
1230
+ market_status: z.ZodEnum<{
1231
+ pending: "pending";
1232
+ unknown: "unknown";
1233
+ expired: "expired";
1234
+ active: "active";
1235
+ active_under_contract: "active_under_contract";
1236
+ sold: "sold";
1237
+ withdrawn: "withdrawn";
1238
+ }>;
1239
+ source_availability: z.ZodEnum<{
1240
+ present: "present";
1241
+ removed_unknown: "removed_unknown";
1242
+ }>;
1243
+ display_eligibility: z.ZodBoolean;
1244
+ price: z.ZodNullable<z.ZodObject<{
1245
+ amount: z.ZodString;
1246
+ currency: z.ZodString;
1247
+ period: z.ZodNullable<z.ZodString>;
1248
+ }, z.core.$strict>>;
1249
+ transaction_type: z.ZodOptional<z.ZodEnum<{
1250
+ unknown: "unknown";
1251
+ conflicting: "conflicting";
1252
+ for_sale: "for_sale";
1253
+ for_rent: "for_rent";
1254
+ }>>;
1255
+ price_period_state: z.ZodOptional<z.ZodEnum<{
1256
+ unknown: "unknown";
1257
+ supported: "supported";
1258
+ not_stated: "not_stated";
1259
+ conflicting: "conflicting";
1260
+ }>>;
1261
+ address: z.ZodObject<{
1262
+ street: z.ZodNullable<z.ZodString>;
1263
+ unit: z.ZodNullable<z.ZodString>;
1264
+ city: z.ZodNullable<z.ZodString>;
1265
+ region: z.ZodNullable<z.ZodString>;
1266
+ postal_code: z.ZodNullable<z.ZodString>;
1267
+ country: z.ZodNullable<z.ZodString>;
1268
+ }, z.core.$strict>;
1269
+ listing_agent_ids: z.ZodArray<z.ZodString>;
1270
+ description: z.ZodNullable<z.ZodString>;
1271
+ photos: z.ZodArray<z.ZodString>;
1272
+ photo_count: z.ZodOptional<z.ZodNumber>;
1273
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1274
+ url: z.ZodURL;
1275
+ order: z.ZodNumber;
1276
+ caption: z.ZodNullable<z.ZodString>;
1277
+ width: z.ZodNullable<z.ZodNumber>;
1278
+ height: z.ZodNullable<z.ZodNumber>;
1279
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
1280
+ delivery: z.ZodEnum<{
1281
+ source_url: "source_url";
1282
+ hosted: "hosted";
1283
+ }>;
1284
+ renditions: z.ZodOptional<z.ZodObject<{
1285
+ thumbnail: z.ZodObject<{
1286
+ url: z.ZodURL;
1287
+ max_width: z.ZodNumber;
1288
+ max_height: z.ZodNumber;
1289
+ }, z.core.$strict>;
1290
+ map: z.ZodObject<{
1291
+ url: z.ZodURL;
1292
+ max_width: z.ZodNumber;
1293
+ max_height: z.ZodNumber;
1294
+ }, z.core.$strict>;
1295
+ card: z.ZodObject<{
1296
+ url: z.ZodURL;
1297
+ max_width: z.ZodNumber;
1298
+ max_height: z.ZodNumber;
1299
+ }, z.core.$strict>;
1300
+ gallery: z.ZodObject<{
1301
+ url: z.ZodURL;
1302
+ max_width: z.ZodNumber;
1303
+ max_height: z.ZodNumber;
1304
+ }, z.core.$strict>;
1305
+ }, z.core.$strict>>;
1306
+ }, z.core.$strict>>>;
1307
+ attribution: z.ZodOptional<z.ZodObject<{
1308
+ agent_name: z.ZodNullable<z.ZodString>;
1309
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1310
+ office_name: z.ZodNullable<z.ZodString>;
1311
+ office_key: z.ZodNullable<z.ZodString>;
1312
+ office_phone: z.ZodNullable<z.ZodString>;
1313
+ office_website: z.ZodNullable<z.ZodURL>;
1314
+ broker_name: z.ZodNullable<z.ZodString>;
1315
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1316
+ originating_system: z.ZodNullable<z.ZodString>;
1317
+ }, z.core.$strict>>;
1318
+ property_details: z.ZodOptional<z.ZodObject<{
1319
+ category: z.ZodNullable<z.ZodString>;
1320
+ sub_type: z.ZodNullable<z.ZodString>;
1321
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
1322
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
1323
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1324
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1325
+ stories: z.ZodNullable<z.ZodNumber>;
1326
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
1327
+ parking_total: z.ZodNullable<z.ZodNumber>;
1328
+ county: z.ZodNullable<z.ZodString>;
1329
+ subdivision: z.ZodNullable<z.ZodString>;
1330
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
1331
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
1332
+ AssociationYN: "AssociationYN";
1333
+ AttachedGarageYN: "AttachedGarageYN";
1334
+ BasementYN: "BasementYN";
1335
+ CarportYN: "CarportYN";
1336
+ CoolingYN: "CoolingYN";
1337
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
1338
+ FireplaceYN: "FireplaceYN";
1339
+ GarageYN: "GarageYN";
1340
+ HeatingYN: "HeatingYN";
1341
+ NewConstructionYN: "NewConstructionYN";
1342
+ PoolPrivateYN: "PoolPrivateYN";
1343
+ SpaYN: "SpaYN";
1344
+ WaterfrontYN: "WaterfrontYN";
1345
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
1346
+ Dock: "Dock";
1347
+ }> & z.core.$partial, z.ZodBoolean>>;
1348
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
1349
+ kind: z.ZodEnum<{
1350
+ association: "association";
1351
+ association_secondary: "association_secondary";
1352
+ }>;
1353
+ amount: z.ZodNullable<z.ZodString>;
1354
+ amount_state: z.ZodEnum<{
1355
+ unknown: "unknown";
1356
+ supported: "supported";
1357
+ not_stated: "not_stated";
1358
+ }>;
1359
+ currency: z.ZodNullable<z.ZodString>;
1360
+ currency_source: z.ZodNullable<z.ZodEnum<{
1361
+ field: "field";
1362
+ source_default: "source_default";
1363
+ }>>;
1364
+ currency_state: z.ZodEnum<{
1365
+ unknown: "unknown";
1366
+ supported: "supported";
1367
+ not_stated: "not_stated";
1368
+ }>;
1369
+ period: z.ZodNullable<z.ZodEnum<{
1370
+ year: "year";
1371
+ day: "day";
1372
+ week: "week";
1373
+ month: "month";
1374
+ quarter: "quarter";
1375
+ half_year: "half_year";
1376
+ one_time: "one_time";
1377
+ }>>;
1378
+ period_state: z.ZodEnum<{
1379
+ unknown: "unknown";
1380
+ supported: "supported";
1381
+ not_stated: "not_stated";
1382
+ }>;
1383
+ source_paths: z.ZodArray<z.ZodString>;
1384
+ }, z.core.$strict>>>;
1385
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
1386
+ type: z.ZodNullable<z.ZodString>;
1387
+ level: z.ZodNullable<z.ZodString>;
1388
+ features: z.ZodArray<z.ZodString>;
1389
+ dimensions: z.ZodNullable<z.ZodString>;
1390
+ length: z.ZodNullable<z.ZodNumber>;
1391
+ width: z.ZodNullable<z.ZodNumber>;
1392
+ unit: z.ZodNullable<z.ZodString>;
1393
+ source_paths: z.ZodArray<z.ZodString>;
1394
+ }, z.core.$strict>>>;
1395
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1396
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1397
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1398
+ }, z.core.$strict>>;
1399
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1400
+ property_type: z.ZodNullable<z.ZodString>;
1401
+ bedrooms: z.ZodNullable<z.ZodNumber>;
1402
+ bathrooms: z.ZodNullable<z.ZodNumber>;
1403
+ living_area: z.ZodNullable<z.ZodNumber>;
1404
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1405
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1406
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1407
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1408
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1409
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1410
+ location: z.ZodOptional<z.ZodObject<{
1411
+ state: z.ZodEnum<{
1412
+ source: "source";
1413
+ pending: "pending";
1414
+ resolved: "resolved";
1415
+ coarse: "coarse";
1416
+ unavailable: "unavailable";
1417
+ stale: "stale";
1418
+ suppressed: "suppressed";
1419
+ }>;
1420
+ origin: z.ZodNullable<z.ZodEnum<{
1421
+ source: "source";
1422
+ geocoded: "geocoded";
1423
+ }>>;
1424
+ precision: z.ZodEnum<{
1425
+ source_unknown: "source_unknown";
1426
+ parcel: "parcel";
1427
+ street: "street";
1428
+ area: "area";
1429
+ unknown: "unknown";
1430
+ }>;
1431
+ map_eligible: z.ZodBoolean;
1432
+ coordinates: z.ZodNullable<z.ZodObject<{
1433
+ latitude: z.ZodNumber;
1434
+ longitude: z.ZodNumber;
1435
+ }, z.core.$strip>>;
1436
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
1437
+ accuracy_type: z.ZodNullable<z.ZodString>;
1438
+ match_type: z.ZodNullable<z.ZodString>;
1439
+ provider: z.ZodNullable<z.ZodString>;
1440
+ provider_version: z.ZodNullable<z.ZodString>;
1441
+ policy_version: z.ZodString;
1442
+ source: z.ZodNullable<z.ZodString>;
1443
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
1444
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
1445
+ country_code: z.ZodNullable<z.ZodString>;
1446
+ region_code: z.ZodNullable<z.ZodString>;
1447
+ timezone: z.ZodNullable<z.ZodString>;
1448
+ enrichment: z.ZodNullable<z.ZodObject<{
1449
+ provider: z.ZodString;
1450
+ provider_version: z.ZodString;
1451
+ resolved_at: z.ZodISODateTime;
1452
+ valid_until: z.ZodISODateTime;
1453
+ fields: z.ZodArray<z.ZodEnum<{
1454
+ timezone: "timezone";
1455
+ census2025: "census2025";
1456
+ }>>;
1457
+ }, z.core.$strip>>;
1458
+ geography: z.ZodNullable<z.ZodObject<{
1459
+ census_year: z.ZodNumber;
1460
+ state_fips: z.ZodNullable<z.ZodString>;
1461
+ county_fips: z.ZodNullable<z.ZodString>;
1462
+ tract_geoid: z.ZodNullable<z.ZodString>;
1463
+ block_geoid: z.ZodNullable<z.ZodString>;
1464
+ place_fips: z.ZodNullable<z.ZodString>;
1465
+ cbsa_code: z.ZodNullable<z.ZodString>;
1466
+ source: z.ZodNullable<z.ZodString>;
1467
+ }, z.core.$strip>>;
1468
+ issue: z.ZodNullable<z.ZodEnum<{
1469
+ pending: "pending";
1470
+ invalid_source_point: "invalid_source_point";
1471
+ insufficient_address: "insufficient_address";
1472
+ unsupported_country: "unsupported_country";
1473
+ no_match: "no_match";
1474
+ low_quality: "low_quality";
1475
+ provider_failure: "provider_failure";
1476
+ expired: "expired";
1477
+ display_restricted: "display_restricted";
1478
+ }>>;
1479
+ }, z.core.$strip>>;
1480
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1481
+ source_url: z.ZodNullable<z.ZodString>;
1482
+ listed_date: z.ZodNullable<z.ZodString>;
1483
+ listed_precision: z.ZodEnum<{
1484
+ unknown: "unknown";
1485
+ date: "date";
1486
+ instant: "instant";
1487
+ }>;
1488
+ open_houses: z.ZodArray<z.ZodObject<{
1489
+ id: z.ZodString;
1490
+ start_at: z.ZodString;
1491
+ end_at: z.ZodNullable<z.ZodString>;
1492
+ timezone: z.ZodNullable<z.ZodString>;
1493
+ status: z.ZodEnum<{
1494
+ scheduled: "scheduled";
1495
+ cancelled: "cancelled";
1496
+ }>;
1497
+ }, z.core.$strict>>;
1498
+ classifications: z.ZodArray<z.ZodObject<{
1499
+ attribute: z.ZodString;
1500
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
1501
+ evidence_state: z.ZodEnum<{
1502
+ supported: "supported";
1503
+ not_stated: "not_stated";
1504
+ conflicting: "conflicting";
1505
+ explicitly_absent: "explicitly_absent";
1506
+ }>;
1507
+ origin: z.ZodEnum<{
1508
+ source_structured: "source_structured";
1509
+ source_text_interpreted: "source_text_interpreted";
1510
+ }>;
1511
+ evidence_refs: z.ZodArray<z.ZodString>;
1512
+ input_fingerprint: z.ZodString;
1513
+ taxonomy_version: z.ZodString;
1514
+ evaluation_id: z.ZodString;
1515
+ freshness: z.ZodEnum<{
1516
+ pending: "pending";
1517
+ current: "current";
1518
+ invalidated: "invalidated";
1519
+ failed: "failed";
1520
+ }>;
1521
+ }, z.core.$strict>>;
1522
+ display: z.ZodObject<{
1523
+ address_allowed: z.ZodBoolean;
1524
+ disclaimer: z.ZodNullable<z.ZodString>;
1525
+ }, z.core.$strict>;
1526
+ freshness: z.ZodObject<{
1527
+ last_seen_at: z.ZodISODateTime;
1528
+ published_at: z.ZodISODateTime;
1529
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
1530
+ }, z.core.$strict>;
1531
+ source_amenities: z.ZodOptional<z.ZodObject<{
1532
+ version: z.ZodLiteral<"source-amenities-v1">;
1533
+ values: z.ZodRecord<z.ZodEnum<{
1534
+ hardwood: "hardwood";
1535
+ solar: "solar";
1536
+ ev_charger: "ev_charger";
1537
+ rv_parking: "rv_parking";
1538
+ view: "view";
1539
+ }>, z.ZodObject<{
1540
+ value: z.ZodNullable<z.ZodBoolean>;
1541
+ state: z.ZodEnum<{
1542
+ supported: "supported";
1543
+ not_stated: "not_stated";
1544
+ conflicting: "conflicting";
1545
+ }>;
1546
+ source_paths: z.ZodArray<z.ZodString>;
1547
+ }, z.core.$strict>>;
1548
+ }, z.core.$strict>>;
1549
+ search_document: z.ZodOptional<z.ZodObject<{
1550
+ version: z.ZodLiteral<"catalog-search-text-v1">;
1551
+ text: z.ZodString;
1552
+ }, z.core.$strict>>;
1553
+ content_hash: z.ZodOptional<z.ZodString>;
1554
+ source_fields: z.ZodOptional<z.ZodObject<{
1555
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
1556
+ }, z.core.$strict>>;
1557
+ source_metadata: z.ZodOptional<z.ZodObject<{
1558
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
1559
+ parser_version: z.ZodString;
1560
+ exposure_version: z.ZodString;
1561
+ source_system_id: z.ZodNullable<z.ZodString>;
1562
+ source_system_name: z.ZodNullable<z.ZodString>;
1563
+ originating_system_name: z.ZodNullable<z.ZodString>;
1564
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
1565
+ supplied_paths: z.ZodArray<z.ZodString>;
1566
+ }, z.core.$strict>>;
1567
+ market_dates: z.ZodOptional<z.ZodObject<{
1568
+ listing_contract: z.ZodObject<{
1569
+ value: z.ZodNullable<z.ZodString>;
1570
+ precision: z.ZodEnum<{
1571
+ unknown: "unknown";
1572
+ date: "date";
1573
+ instant: "instant";
1574
+ }>;
1575
+ }, z.core.$strict>;
1576
+ on_market: z.ZodObject<{
1577
+ value: z.ZodNullable<z.ZodString>;
1578
+ precision: z.ZodEnum<{
1579
+ unknown: "unknown";
1580
+ date: "date";
1581
+ instant: "instant";
1582
+ }>;
1583
+ }, z.core.$strict>;
1584
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
1585
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
1586
+ }, z.core.$strict>>;
1587
+ taxes: z.ZodOptional<z.ZodObject<{
1588
+ annual_amount: z.ZodNullable<z.ZodString>;
1589
+ currency: z.ZodNullable<z.ZodString>;
1590
+ year: z.ZodNullable<z.ZodNumber>;
1591
+ }, z.core.$strict>>;
1592
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
1593
+ level: z.ZodEnum<{
1594
+ elementary: "elementary";
1595
+ middle: "middle";
1596
+ high: "high";
1597
+ }>;
1598
+ name: z.ZodNullable<z.ZodString>;
1599
+ district: z.ZodNullable<z.ZodString>;
1600
+ }, z.core.$strict>>>;
1601
+ price_history: z.ZodOptional<z.ZodObject<{
1602
+ original_amount: z.ZodNullable<z.ZodString>;
1603
+ previous_amount: z.ZodNullable<z.ZodString>;
1604
+ low_amount: z.ZodNullable<z.ZodString>;
1605
+ currency: z.ZodNullable<z.ZodString>;
1606
+ original_currency: z.ZodNullable<z.ZodString>;
1607
+ previous_currency: z.ZodNullable<z.ZodString>;
1608
+ low_currency: z.ZodNullable<z.ZodString>;
1609
+ changed_at: z.ZodObject<{
1610
+ value: z.ZodNullable<z.ZodString>;
1611
+ precision: z.ZodEnum<{
1612
+ unknown: "unknown";
1613
+ date: "date";
1614
+ instant: "instant";
1615
+ }>;
1616
+ }, z.core.$strict>;
1617
+ }, z.core.$strict>>;
1618
+ virtual_tours: z.ZodOptional<z.ZodObject<{
1619
+ branded_url: z.ZodNullable<z.ZodURL>;
1620
+ unbranded_url: z.ZodNullable<z.ZodURL>;
1621
+ }, z.core.$strict>>;
1622
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1623
+ url: z.ZodURL;
1624
+ categories: z.ZodArray<z.ZodString>;
1625
+ order: z.ZodNumber;
1626
+ caption: z.ZodNullable<z.ZodString>;
1627
+ }, z.core.$strict>>>;
1628
+ professionals: z.ZodOptional<z.ZodObject<{
1629
+ agent: z.ZodObject<{
1630
+ full_name: z.ZodNullable<z.ZodString>;
1631
+ first_name: z.ZodNullable<z.ZodString>;
1632
+ last_name: z.ZodNullable<z.ZodString>;
1633
+ license: z.ZodNullable<z.ZodString>;
1634
+ }, z.core.$strict>;
1635
+ office: z.ZodObject<{
1636
+ key: z.ZodNullable<z.ZodString>;
1637
+ mls_id: z.ZodNullable<z.ZodString>;
1638
+ name: z.ZodNullable<z.ZodString>;
1639
+ broker_mls_id: z.ZodNullable<z.ZodString>;
1640
+ corporate_id: z.ZodNullable<z.ZodString>;
1641
+ main_office_id: z.ZodNullable<z.ZodString>;
1642
+ website_url: z.ZodNullable<z.ZodURL>;
1643
+ address: z.ZodObject<{
1644
+ street: z.ZodNullable<z.ZodString>;
1645
+ unit: z.ZodNullable<z.ZodString>;
1646
+ city: z.ZodNullable<z.ZodString>;
1647
+ region: z.ZodNullable<z.ZodString>;
1648
+ postal_code: z.ZodNullable<z.ZodString>;
1649
+ country: z.ZodNullable<z.ZodString>;
1650
+ }, z.core.$strict>;
1651
+ }, z.core.$strict>;
1652
+ brokerage: z.ZodObject<{
1653
+ name: z.ZodNullable<z.ZodString>;
1654
+ website_url: z.ZodNullable<z.ZodURL>;
1655
+ logo_url: z.ZodNullable<z.ZodURL>;
1656
+ address: z.ZodObject<{
1657
+ street: z.ZodNullable<z.ZodString>;
1658
+ unit: z.ZodNullable<z.ZodString>;
1659
+ city: z.ZodNullable<z.ZodString>;
1660
+ region: z.ZodNullable<z.ZodString>;
1661
+ postal_code: z.ZodNullable<z.ZodString>;
1662
+ country: z.ZodNullable<z.ZodString>;
1663
+ }, z.core.$strict>;
1664
+ }, z.core.$strict>;
1665
+ builder: z.ZodObject<{
1666
+ name: z.ZodNullable<z.ZodString>;
1667
+ }, z.core.$strict>;
1668
+ franchise: z.ZodNullable<z.ZodString>;
1669
+ }, z.core.$strict>>;
1670
+ permissions: z.ZodOptional<z.ZodObject<{
1671
+ internet_display: z.ZodNullable<z.ZodBoolean>;
1672
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
1673
+ address_display: z.ZodNullable<z.ZodBoolean>;
1674
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
1675
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
1676
+ }, z.core.$strict>>;
1677
+ }, z.core.$strict>>;
1678
+ }, z.core.$strict>, z.ZodObject<{
1679
+ resource_type: z.ZodLiteral<"entity">;
1680
+ resource_id: z.ZodString;
1681
+ revision: z.ZodString;
1682
+ payload: z.ZodLazy<z.ZodObject<{
1683
+ id: z.ZodString;
1684
+ kind: z.ZodEnum<{
1685
+ office: "office";
1686
+ professional: "professional";
1687
+ organization: "organization";
1688
+ team: "team";
1689
+ }>;
1690
+ source_identities: z.ZodArray<z.ZodObject<{
1691
+ source: z.ZodString;
1692
+ key: z.ZodString;
1693
+ key_kind: z.ZodEnum<{
1694
+ source: "source";
1695
+ derived_observation: "derived_observation";
1696
+ }>;
1697
+ legacy_agent_id: z.ZodNullable<z.ZodString>;
1698
+ }, z.core.$strict>>;
1699
+ revision: z.ZodString;
1700
+ name: z.ZodNullable<z.ZodString>;
1701
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>>;
1702
+ field_evidence: z.ZodRecord<z.ZodString, z.ZodObject<{
1703
+ state: z.ZodEnum<{
1704
+ supported: "supported";
1705
+ conflicting: "conflicting";
1706
+ withdrawn: "withdrawn";
1707
+ }>;
1708
+ observation_ids: z.ZodArray<z.ZodString>;
1709
+ authority: z.ZodEnum<{
1710
+ source_listing: "source_listing";
1711
+ product_verified: "product_verified";
1712
+ operator_verified: "operator_verified";
1713
+ }>;
1714
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
1715
+ }, z.core.$strict>>;
1716
+ resolution_state: z.ZodEnum<{
1717
+ source_identity: "source_identity";
1718
+ provisional: "provisional";
1719
+ }>;
1720
+ source_availability: z.ZodEnum<{
1721
+ present: "present";
1722
+ unrepresented: "unrepresented";
1723
+ }>;
1724
+ first_seen_at: z.ZodISODateTime;
1725
+ last_seen_at: z.ZodISODateTime;
1726
+ updated_at: z.ZodISODateTime;
1727
+ }, z.core.$strict>>;
1728
+ }, z.core.$strict>, z.ZodObject<{
1729
+ resource_type: z.ZodLiteral<"relationship">;
1730
+ resource_id: z.ZodString;
1731
+ revision: z.ZodString;
1732
+ payload: z.ZodLazy<z.ZodObject<{
1733
+ id: z.ZodString;
1734
+ source: z.ZodString;
1735
+ subject_id: z.ZodString;
1736
+ object_id: z.ZodString;
1737
+ relationship: z.ZodEnum<{
1738
+ observed_at_office: "observed_at_office";
1739
+ observed_brokerage: "observed_brokerage";
1740
+ affiliated_with: "affiliated_with";
1741
+ operates: "operates";
1742
+ member_of: "member_of";
1743
+ }>;
1744
+ evidence_state: z.ZodEnum<{
1745
+ observed: "observed";
1746
+ verified: "verified";
1747
+ }>;
1748
+ authority: z.ZodEnum<{
1749
+ source_listing: "source_listing";
1750
+ product_verified: "product_verified";
1751
+ operator_verified: "operator_verified";
1752
+ }>;
1753
+ revision: z.ZodString;
1754
+ current: z.ZodBoolean;
1755
+ listing_id: z.ZodNullable<z.ZodString>;
1756
+ observed_at: z.ZodISODateTime;
1757
+ effective_from: z.ZodNullable<z.ZodISODateTime>;
1758
+ effective_to: z.ZodNullable<z.ZodISODateTime>;
1759
+ evidence_ref: z.ZodString;
1760
+ }, z.core.$strict>>;
1761
+ }, z.core.$strict>], "resource_type">>;
1762
+ has_more: z.ZodBoolean;
1763
+ next_cursor: z.ZodNullable<z.ZodString>;
1764
+ meta: z.ZodObject<{
1765
+ snapshot_sequence: z.ZodString;
1766
+ source_freshness: z.ZodArray<z.ZodLazy<z.ZodObject<{
1767
+ source: z.ZodString;
1768
+ last_completed_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
1769
+ last_full_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
1770
+ state: z.ZodEnum<{
1771
+ stale: "stale";
1772
+ fresh: "fresh";
1773
+ never_completed: "never_completed";
1774
+ }>;
1775
+ freshness_window_seconds: z.ZodNumber;
1776
+ full_enumeration_window_seconds: z.ZodOptional<z.ZodNumber>;
1777
+ last_contact_at: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
1778
+ last_contact_status: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1779
+ refresh: z.ZodOptional<z.ZodObject<{
1780
+ state: z.ZodEnum<{
1781
+ on_schedule: "on_schedule";
1782
+ delayed: "delayed";
1783
+ blocked: "blocked";
1784
+ }>;
1785
+ cadence_seconds: z.ZodNumber;
1786
+ next_due_at: z.ZodISODateTime;
1787
+ phase: z.ZodNullable<z.ZodString>;
1788
+ last_attempt_at: z.ZodNullable<z.ZodISODateTime>;
1789
+ last_progress_at: z.ZodNullable<z.ZodISODateTime>;
1790
+ last_error_at: z.ZodNullable<z.ZodISODateTime>;
1791
+ error_code: z.ZodNullable<z.ZodString>;
1792
+ consecutive_failures: z.ZodNumber;
1793
+ }, z.core.$strict>>;
1794
+ }, z.core.$strict>>>;
1795
+ }, z.core.$strict>;
1796
+ }, z.core.$strict>;
1797
+ export declare const SmartFeedChangesSchema: z.ZodObject<{
1798
+ data: z.ZodArray<z.ZodObject<{
1799
+ sequence: z.ZodString;
1800
+ group_id: z.ZodString;
1801
+ group_end_sequence: z.ZodString;
1802
+ group_index: z.ZodNumber;
1803
+ group_size: z.ZodNumber;
1804
+ resource_type: z.ZodEnum<{
1805
+ relationship: "relationship";
1806
+ identity_resolution: "identity_resolution";
1807
+ listing: "listing";
1808
+ entity: "entity";
1809
+ }>;
1810
+ resource_id: z.ZodString;
1811
+ revision: z.ZodString;
1812
+ operation: z.ZodEnum<{
1813
+ upsert: "upsert";
1814
+ remove: "remove";
1815
+ }>;
1816
+ resource: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
1817
+ resource_type: z.ZodLiteral<"identity_resolution">;
1818
+ resource_id: z.ZodString;
1819
+ revision: z.ZodString;
1820
+ payload: z.ZodLazy<z.ZodObject<{
1821
+ id: z.ZodString;
1822
+ source_namespace: z.ZodString;
1823
+ kind: z.ZodEnum<{
1824
+ office: "office";
1825
+ professional: "professional";
1826
+ organization: "organization";
1827
+ team: "team";
1828
+ }>;
1829
+ revision: z.ZodString;
1830
+ canonical_id: z.ZodNullable<z.ZodString>;
1831
+ state: z.ZodEnum<{
1832
+ source_identity: "source_identity";
1833
+ canonical: "canonical";
1834
+ }>;
1835
+ members: z.ZodArray<z.ZodObject<{
1836
+ entity_id: z.ZodString;
1837
+ source_namespace: z.ZodString;
1838
+ }, z.core.$strict>>;
1839
+ }, z.core.$strict>>;
1840
+ }, z.core.$strict>, z.ZodObject<{
1841
+ resource_type: z.ZodLiteral<"listing">;
1842
+ resource_id: z.ZodString;
1843
+ revision: z.ZodString;
1844
+ payload: z.ZodLazy<z.ZodObject<{
1845
+ id: z.ZodString;
1846
+ episode_id: z.ZodString;
1847
+ revision: z.ZodString;
1848
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1849
+ source_identities: z.ZodArray<z.ZodObject<{
1850
+ source: z.ZodString;
1851
+ key: z.ZodString;
1852
+ }, z.core.$strict>>;
1853
+ market_status: 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
+ source_availability: z.ZodEnum<{
1863
+ present: "present";
1864
+ removed_unknown: "removed_unknown";
1865
+ }>;
1866
+ display_eligibility: z.ZodBoolean;
1867
+ price: z.ZodNullable<z.ZodObject<{
1868
+ amount: z.ZodString;
1869
+ currency: z.ZodString;
1870
+ period: z.ZodNullable<z.ZodString>;
1871
+ }, z.core.$strict>>;
1872
+ transaction_type: z.ZodOptional<z.ZodEnum<{
1873
+ unknown: "unknown";
1874
+ conflicting: "conflicting";
1875
+ for_sale: "for_sale";
1876
+ for_rent: "for_rent";
1877
+ }>>;
1878
+ price_period_state: z.ZodOptional<z.ZodEnum<{
1879
+ unknown: "unknown";
1880
+ supported: "supported";
1881
+ not_stated: "not_stated";
1882
+ conflicting: "conflicting";
1883
+ }>>;
1884
+ address: z.ZodObject<{
1885
+ street: z.ZodNullable<z.ZodString>;
1886
+ unit: z.ZodNullable<z.ZodString>;
1887
+ city: z.ZodNullable<z.ZodString>;
1888
+ region: z.ZodNullable<z.ZodString>;
1889
+ postal_code: z.ZodNullable<z.ZodString>;
1890
+ country: z.ZodNullable<z.ZodString>;
1891
+ }, z.core.$strict>;
1892
+ listing_agent_ids: z.ZodArray<z.ZodString>;
1893
+ description: z.ZodNullable<z.ZodString>;
1894
+ photos: z.ZodArray<z.ZodString>;
1895
+ photo_count: z.ZodOptional<z.ZodNumber>;
1896
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
1897
+ url: z.ZodURL;
1898
+ order: z.ZodNumber;
1899
+ caption: z.ZodNullable<z.ZodString>;
1900
+ width: z.ZodNullable<z.ZodNumber>;
1901
+ height: z.ZodNullable<z.ZodNumber>;
1902
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
1903
+ delivery: z.ZodEnum<{
1904
+ source_url: "source_url";
1905
+ hosted: "hosted";
1906
+ }>;
1907
+ renditions: z.ZodOptional<z.ZodObject<{
1908
+ thumbnail: z.ZodObject<{
1909
+ url: z.ZodURL;
1910
+ max_width: z.ZodNumber;
1911
+ max_height: z.ZodNumber;
1912
+ }, z.core.$strict>;
1913
+ map: z.ZodObject<{
1914
+ url: z.ZodURL;
1915
+ max_width: z.ZodNumber;
1916
+ max_height: z.ZodNumber;
1917
+ }, z.core.$strict>;
1918
+ card: z.ZodObject<{
1919
+ url: z.ZodURL;
1920
+ max_width: z.ZodNumber;
1921
+ max_height: z.ZodNumber;
1922
+ }, z.core.$strict>;
1923
+ gallery: z.ZodObject<{
1924
+ url: z.ZodURL;
1925
+ max_width: z.ZodNumber;
1926
+ max_height: z.ZodNumber;
1927
+ }, z.core.$strict>;
1928
+ }, z.core.$strict>>;
1929
+ }, z.core.$strict>>>;
1930
+ attribution: z.ZodOptional<z.ZodObject<{
1931
+ agent_name: z.ZodNullable<z.ZodString>;
1932
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1933
+ office_name: z.ZodNullable<z.ZodString>;
1934
+ office_key: z.ZodNullable<z.ZodString>;
1935
+ office_phone: z.ZodNullable<z.ZodString>;
1936
+ office_website: z.ZodNullable<z.ZodURL>;
1937
+ broker_name: z.ZodNullable<z.ZodString>;
1938
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1939
+ originating_system: z.ZodNullable<z.ZodString>;
1940
+ }, z.core.$strict>>;
1941
+ property_details: z.ZodOptional<z.ZodObject<{
1942
+ category: z.ZodNullable<z.ZodString>;
1943
+ sub_type: z.ZodNullable<z.ZodString>;
1944
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
1945
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
1946
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1947
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1948
+ stories: z.ZodNullable<z.ZodNumber>;
1949
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
1950
+ parking_total: z.ZodNullable<z.ZodNumber>;
1951
+ county: z.ZodNullable<z.ZodString>;
1952
+ subdivision: z.ZodNullable<z.ZodString>;
1953
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
1954
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
1955
+ AssociationYN: "AssociationYN";
1956
+ AttachedGarageYN: "AttachedGarageYN";
1957
+ BasementYN: "BasementYN";
1958
+ CarportYN: "CarportYN";
1959
+ CoolingYN: "CoolingYN";
1960
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
1961
+ FireplaceYN: "FireplaceYN";
1962
+ GarageYN: "GarageYN";
1963
+ HeatingYN: "HeatingYN";
1964
+ NewConstructionYN: "NewConstructionYN";
1965
+ PoolPrivateYN: "PoolPrivateYN";
1966
+ SpaYN: "SpaYN";
1967
+ WaterfrontYN: "WaterfrontYN";
1968
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
1969
+ Dock: "Dock";
1970
+ }> & z.core.$partial, z.ZodBoolean>>;
1971
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
1972
+ kind: z.ZodEnum<{
1973
+ association: "association";
1974
+ association_secondary: "association_secondary";
1975
+ }>;
1976
+ amount: z.ZodNullable<z.ZodString>;
1977
+ amount_state: z.ZodEnum<{
1978
+ unknown: "unknown";
1979
+ supported: "supported";
1980
+ not_stated: "not_stated";
1981
+ }>;
1982
+ currency: z.ZodNullable<z.ZodString>;
1983
+ currency_source: z.ZodNullable<z.ZodEnum<{
1984
+ field: "field";
1985
+ source_default: "source_default";
1986
+ }>>;
1987
+ currency_state: z.ZodEnum<{
1988
+ unknown: "unknown";
1989
+ supported: "supported";
1990
+ not_stated: "not_stated";
1991
+ }>;
1992
+ period: z.ZodNullable<z.ZodEnum<{
1993
+ year: "year";
1994
+ day: "day";
1995
+ week: "week";
1996
+ month: "month";
1997
+ quarter: "quarter";
1998
+ half_year: "half_year";
1999
+ one_time: "one_time";
2000
+ }>>;
2001
+ period_state: z.ZodEnum<{
2002
+ unknown: "unknown";
2003
+ supported: "supported";
2004
+ not_stated: "not_stated";
2005
+ }>;
2006
+ source_paths: z.ZodArray<z.ZodString>;
2007
+ }, z.core.$strict>>>;
2008
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
2009
+ type: z.ZodNullable<z.ZodString>;
2010
+ level: z.ZodNullable<z.ZodString>;
2011
+ features: z.ZodArray<z.ZodString>;
2012
+ dimensions: z.ZodNullable<z.ZodString>;
2013
+ length: z.ZodNullable<z.ZodNumber>;
2014
+ width: z.ZodNullable<z.ZodNumber>;
2015
+ unit: z.ZodNullable<z.ZodString>;
2016
+ source_paths: z.ZodArray<z.ZodString>;
2017
+ }, z.core.$strict>>>;
2018
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2019
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2020
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2021
+ }, z.core.$strict>>;
2022
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2023
+ property_type: z.ZodNullable<z.ZodString>;
2024
+ bedrooms: z.ZodNullable<z.ZodNumber>;
2025
+ bathrooms: z.ZodNullable<z.ZodNumber>;
2026
+ living_area: z.ZodNullable<z.ZodNumber>;
2027
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2028
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2029
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2030
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2031
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2032
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2033
+ location: z.ZodOptional<z.ZodObject<{
2034
+ state: z.ZodEnum<{
2035
+ source: "source";
2036
+ pending: "pending";
2037
+ resolved: "resolved";
2038
+ coarse: "coarse";
2039
+ unavailable: "unavailable";
2040
+ stale: "stale";
2041
+ suppressed: "suppressed";
2042
+ }>;
2043
+ origin: z.ZodNullable<z.ZodEnum<{
2044
+ source: "source";
2045
+ geocoded: "geocoded";
2046
+ }>>;
2047
+ precision: z.ZodEnum<{
2048
+ source_unknown: "source_unknown";
2049
+ parcel: "parcel";
2050
+ street: "street";
2051
+ area: "area";
2052
+ unknown: "unknown";
2053
+ }>;
2054
+ map_eligible: z.ZodBoolean;
2055
+ coordinates: z.ZodNullable<z.ZodObject<{
2056
+ latitude: z.ZodNumber;
2057
+ longitude: z.ZodNumber;
2058
+ }, z.core.$strip>>;
2059
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
2060
+ accuracy_type: z.ZodNullable<z.ZodString>;
2061
+ match_type: z.ZodNullable<z.ZodString>;
2062
+ provider: z.ZodNullable<z.ZodString>;
2063
+ provider_version: z.ZodNullable<z.ZodString>;
2064
+ policy_version: z.ZodString;
2065
+ source: z.ZodNullable<z.ZodString>;
2066
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
2067
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
2068
+ country_code: z.ZodNullable<z.ZodString>;
2069
+ region_code: z.ZodNullable<z.ZodString>;
2070
+ timezone: z.ZodNullable<z.ZodString>;
2071
+ enrichment: z.ZodNullable<z.ZodObject<{
2072
+ provider: z.ZodString;
2073
+ provider_version: z.ZodString;
2074
+ resolved_at: z.ZodISODateTime;
2075
+ valid_until: z.ZodISODateTime;
2076
+ fields: z.ZodArray<z.ZodEnum<{
2077
+ timezone: "timezone";
2078
+ census2025: "census2025";
2079
+ }>>;
2080
+ }, z.core.$strip>>;
2081
+ geography: z.ZodNullable<z.ZodObject<{
2082
+ census_year: z.ZodNumber;
2083
+ state_fips: z.ZodNullable<z.ZodString>;
2084
+ county_fips: z.ZodNullable<z.ZodString>;
2085
+ tract_geoid: z.ZodNullable<z.ZodString>;
2086
+ block_geoid: z.ZodNullable<z.ZodString>;
2087
+ place_fips: z.ZodNullable<z.ZodString>;
2088
+ cbsa_code: z.ZodNullable<z.ZodString>;
2089
+ source: z.ZodNullable<z.ZodString>;
2090
+ }, z.core.$strip>>;
2091
+ issue: z.ZodNullable<z.ZodEnum<{
2092
+ pending: "pending";
2093
+ invalid_source_point: "invalid_source_point";
2094
+ insufficient_address: "insufficient_address";
2095
+ unsupported_country: "unsupported_country";
2096
+ no_match: "no_match";
2097
+ low_quality: "low_quality";
2098
+ provider_failure: "provider_failure";
2099
+ expired: "expired";
2100
+ display_restricted: "display_restricted";
2101
+ }>>;
2102
+ }, z.core.$strip>>;
2103
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2104
+ source_url: z.ZodNullable<z.ZodString>;
2105
+ listed_date: z.ZodNullable<z.ZodString>;
2106
+ listed_precision: z.ZodEnum<{
2107
+ unknown: "unknown";
2108
+ date: "date";
2109
+ instant: "instant";
2110
+ }>;
2111
+ open_houses: z.ZodArray<z.ZodObject<{
2112
+ id: z.ZodString;
2113
+ start_at: z.ZodString;
2114
+ end_at: z.ZodNullable<z.ZodString>;
2115
+ timezone: z.ZodNullable<z.ZodString>;
2116
+ status: z.ZodEnum<{
2117
+ scheduled: "scheduled";
2118
+ cancelled: "cancelled";
2119
+ }>;
2120
+ }, z.core.$strict>>;
2121
+ classifications: z.ZodArray<z.ZodObject<{
2122
+ attribute: z.ZodString;
2123
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
2124
+ evidence_state: z.ZodEnum<{
2125
+ supported: "supported";
2126
+ not_stated: "not_stated";
2127
+ conflicting: "conflicting";
2128
+ explicitly_absent: "explicitly_absent";
2129
+ }>;
2130
+ origin: z.ZodEnum<{
2131
+ source_structured: "source_structured";
2132
+ source_text_interpreted: "source_text_interpreted";
2133
+ }>;
2134
+ evidence_refs: z.ZodArray<z.ZodString>;
2135
+ input_fingerprint: z.ZodString;
2136
+ taxonomy_version: z.ZodString;
2137
+ evaluation_id: z.ZodString;
2138
+ freshness: z.ZodEnum<{
2139
+ pending: "pending";
2140
+ current: "current";
2141
+ invalidated: "invalidated";
2142
+ failed: "failed";
2143
+ }>;
2144
+ }, z.core.$strict>>;
2145
+ display: z.ZodObject<{
2146
+ address_allowed: z.ZodBoolean;
2147
+ disclaimer: z.ZodNullable<z.ZodString>;
2148
+ }, z.core.$strict>;
2149
+ freshness: z.ZodObject<{
2150
+ last_seen_at: z.ZodISODateTime;
2151
+ published_at: z.ZodISODateTime;
2152
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
2153
+ }, z.core.$strict>;
2154
+ source_amenities: z.ZodOptional<z.ZodObject<{
2155
+ version: z.ZodLiteral<"source-amenities-v1">;
2156
+ values: z.ZodRecord<z.ZodEnum<{
2157
+ hardwood: "hardwood";
2158
+ solar: "solar";
2159
+ ev_charger: "ev_charger";
2160
+ rv_parking: "rv_parking";
2161
+ view: "view";
2162
+ }>, z.ZodObject<{
2163
+ value: z.ZodNullable<z.ZodBoolean>;
2164
+ state: z.ZodEnum<{
2165
+ supported: "supported";
2166
+ not_stated: "not_stated";
2167
+ conflicting: "conflicting";
2168
+ }>;
2169
+ source_paths: z.ZodArray<z.ZodString>;
2170
+ }, z.core.$strict>>;
2171
+ }, z.core.$strict>>;
2172
+ search_document: z.ZodOptional<z.ZodObject<{
2173
+ version: z.ZodLiteral<"catalog-search-text-v1">;
2174
+ text: z.ZodString;
2175
+ }, z.core.$strict>>;
2176
+ content_hash: z.ZodOptional<z.ZodString>;
2177
+ source_fields: z.ZodOptional<z.ZodObject<{
2178
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
2179
+ }, z.core.$strict>>;
2180
+ source_metadata: z.ZodOptional<z.ZodObject<{
2181
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
2182
+ parser_version: z.ZodString;
2183
+ exposure_version: z.ZodString;
2184
+ source_system_id: z.ZodNullable<z.ZodString>;
2185
+ source_system_name: z.ZodNullable<z.ZodString>;
2186
+ originating_system_name: z.ZodNullable<z.ZodString>;
2187
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
2188
+ supplied_paths: z.ZodArray<z.ZodString>;
2189
+ }, z.core.$strict>>;
2190
+ market_dates: z.ZodOptional<z.ZodObject<{
2191
+ listing_contract: z.ZodObject<{
2192
+ value: z.ZodNullable<z.ZodString>;
2193
+ precision: z.ZodEnum<{
2194
+ unknown: "unknown";
2195
+ date: "date";
2196
+ instant: "instant";
2197
+ }>;
2198
+ }, z.core.$strict>;
2199
+ on_market: z.ZodObject<{
2200
+ value: z.ZodNullable<z.ZodString>;
2201
+ precision: z.ZodEnum<{
2202
+ unknown: "unknown";
2203
+ date: "date";
2204
+ instant: "instant";
2205
+ }>;
2206
+ }, z.core.$strict>;
2207
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
2208
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
2209
+ }, z.core.$strict>>;
2210
+ taxes: z.ZodOptional<z.ZodObject<{
2211
+ annual_amount: z.ZodNullable<z.ZodString>;
2212
+ currency: z.ZodNullable<z.ZodString>;
2213
+ year: z.ZodNullable<z.ZodNumber>;
2214
+ }, z.core.$strict>>;
2215
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
2216
+ level: z.ZodEnum<{
2217
+ elementary: "elementary";
2218
+ middle: "middle";
2219
+ high: "high";
2220
+ }>;
2221
+ name: z.ZodNullable<z.ZodString>;
2222
+ district: z.ZodNullable<z.ZodString>;
2223
+ }, z.core.$strict>>>;
2224
+ price_history: z.ZodOptional<z.ZodObject<{
2225
+ original_amount: z.ZodNullable<z.ZodString>;
2226
+ previous_amount: z.ZodNullable<z.ZodString>;
2227
+ low_amount: z.ZodNullable<z.ZodString>;
2228
+ currency: z.ZodNullable<z.ZodString>;
2229
+ original_currency: z.ZodNullable<z.ZodString>;
2230
+ previous_currency: z.ZodNullable<z.ZodString>;
2231
+ low_currency: z.ZodNullable<z.ZodString>;
2232
+ changed_at: z.ZodObject<{
2233
+ value: z.ZodNullable<z.ZodString>;
2234
+ precision: z.ZodEnum<{
2235
+ unknown: "unknown";
2236
+ date: "date";
2237
+ instant: "instant";
2238
+ }>;
2239
+ }, z.core.$strict>;
2240
+ }, z.core.$strict>>;
2241
+ virtual_tours: z.ZodOptional<z.ZodObject<{
2242
+ branded_url: z.ZodNullable<z.ZodURL>;
2243
+ unbranded_url: z.ZodNullable<z.ZodURL>;
2244
+ }, z.core.$strict>>;
2245
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
2246
+ url: z.ZodURL;
2247
+ categories: z.ZodArray<z.ZodString>;
2248
+ order: z.ZodNumber;
2249
+ caption: z.ZodNullable<z.ZodString>;
2250
+ }, z.core.$strict>>>;
2251
+ professionals: z.ZodOptional<z.ZodObject<{
2252
+ agent: z.ZodObject<{
2253
+ full_name: z.ZodNullable<z.ZodString>;
2254
+ first_name: z.ZodNullable<z.ZodString>;
2255
+ last_name: z.ZodNullable<z.ZodString>;
2256
+ license: z.ZodNullable<z.ZodString>;
2257
+ }, z.core.$strict>;
2258
+ office: z.ZodObject<{
2259
+ key: z.ZodNullable<z.ZodString>;
2260
+ mls_id: z.ZodNullable<z.ZodString>;
2261
+ name: z.ZodNullable<z.ZodString>;
2262
+ broker_mls_id: z.ZodNullable<z.ZodString>;
2263
+ corporate_id: z.ZodNullable<z.ZodString>;
2264
+ main_office_id: z.ZodNullable<z.ZodString>;
2265
+ website_url: z.ZodNullable<z.ZodURL>;
2266
+ address: z.ZodObject<{
2267
+ street: z.ZodNullable<z.ZodString>;
2268
+ unit: z.ZodNullable<z.ZodString>;
2269
+ city: z.ZodNullable<z.ZodString>;
2270
+ region: z.ZodNullable<z.ZodString>;
2271
+ postal_code: z.ZodNullable<z.ZodString>;
2272
+ country: z.ZodNullable<z.ZodString>;
2273
+ }, z.core.$strict>;
2274
+ }, z.core.$strict>;
2275
+ brokerage: z.ZodObject<{
2276
+ name: z.ZodNullable<z.ZodString>;
2277
+ website_url: z.ZodNullable<z.ZodURL>;
2278
+ logo_url: z.ZodNullable<z.ZodURL>;
2279
+ address: z.ZodObject<{
2280
+ street: z.ZodNullable<z.ZodString>;
2281
+ unit: z.ZodNullable<z.ZodString>;
2282
+ city: z.ZodNullable<z.ZodString>;
2283
+ region: z.ZodNullable<z.ZodString>;
2284
+ postal_code: z.ZodNullable<z.ZodString>;
2285
+ country: z.ZodNullable<z.ZodString>;
2286
+ }, z.core.$strict>;
2287
+ }, z.core.$strict>;
2288
+ builder: z.ZodObject<{
2289
+ name: z.ZodNullable<z.ZodString>;
2290
+ }, z.core.$strict>;
2291
+ franchise: z.ZodNullable<z.ZodString>;
2292
+ }, z.core.$strict>>;
2293
+ permissions: z.ZodOptional<z.ZodObject<{
2294
+ internet_display: z.ZodNullable<z.ZodBoolean>;
2295
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
2296
+ address_display: z.ZodNullable<z.ZodBoolean>;
2297
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
2298
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
2299
+ }, z.core.$strict>>;
2300
+ }, z.core.$strict>>;
2301
+ }, z.core.$strict>, z.ZodObject<{
2302
+ resource_type: z.ZodLiteral<"entity">;
2303
+ resource_id: z.ZodString;
2304
+ revision: z.ZodString;
2305
+ payload: z.ZodLazy<z.ZodObject<{
2306
+ id: z.ZodString;
2307
+ kind: z.ZodEnum<{
2308
+ office: "office";
2309
+ professional: "professional";
2310
+ organization: "organization";
2311
+ team: "team";
2312
+ }>;
2313
+ source_identities: z.ZodArray<z.ZodObject<{
2314
+ source: z.ZodString;
2315
+ key: z.ZodString;
2316
+ key_kind: z.ZodEnum<{
2317
+ source: "source";
2318
+ derived_observation: "derived_observation";
2319
+ }>;
2320
+ legacy_agent_id: z.ZodNullable<z.ZodString>;
2321
+ }, z.core.$strict>>;
2322
+ revision: z.ZodString;
2323
+ name: z.ZodNullable<z.ZodString>;
2324
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>>;
2325
+ field_evidence: z.ZodRecord<z.ZodString, z.ZodObject<{
2326
+ state: z.ZodEnum<{
2327
+ supported: "supported";
2328
+ conflicting: "conflicting";
2329
+ withdrawn: "withdrawn";
2330
+ }>;
2331
+ observation_ids: z.ZodArray<z.ZodString>;
2332
+ authority: z.ZodEnum<{
2333
+ source_listing: "source_listing";
2334
+ product_verified: "product_verified";
2335
+ operator_verified: "operator_verified";
2336
+ }>;
2337
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
2338
+ }, z.core.$strict>>;
2339
+ resolution_state: z.ZodEnum<{
2340
+ source_identity: "source_identity";
2341
+ provisional: "provisional";
2342
+ }>;
2343
+ source_availability: z.ZodEnum<{
2344
+ present: "present";
2345
+ unrepresented: "unrepresented";
2346
+ }>;
2347
+ first_seen_at: z.ZodISODateTime;
2348
+ last_seen_at: z.ZodISODateTime;
2349
+ updated_at: z.ZodISODateTime;
2350
+ }, z.core.$strict>>;
2351
+ }, z.core.$strict>, z.ZodObject<{
2352
+ resource_type: z.ZodLiteral<"relationship">;
2353
+ resource_id: z.ZodString;
2354
+ revision: z.ZodString;
2355
+ payload: z.ZodLazy<z.ZodObject<{
2356
+ id: z.ZodString;
2357
+ source: z.ZodString;
2358
+ subject_id: z.ZodString;
2359
+ object_id: z.ZodString;
2360
+ relationship: z.ZodEnum<{
2361
+ observed_at_office: "observed_at_office";
2362
+ observed_brokerage: "observed_brokerage";
2363
+ affiliated_with: "affiliated_with";
2364
+ operates: "operates";
2365
+ member_of: "member_of";
2366
+ }>;
2367
+ evidence_state: z.ZodEnum<{
2368
+ observed: "observed";
2369
+ verified: "verified";
2370
+ }>;
2371
+ authority: z.ZodEnum<{
2372
+ source_listing: "source_listing";
2373
+ product_verified: "product_verified";
2374
+ operator_verified: "operator_verified";
2375
+ }>;
2376
+ revision: z.ZodString;
2377
+ current: z.ZodBoolean;
2378
+ listing_id: z.ZodNullable<z.ZodString>;
2379
+ observed_at: z.ZodISODateTime;
2380
+ effective_from: z.ZodNullable<z.ZodISODateTime>;
2381
+ effective_to: z.ZodNullable<z.ZodISODateTime>;
2382
+ evidence_ref: z.ZodString;
2383
+ }, z.core.$strict>>;
2384
+ }, z.core.$strict>], "resource_type">>;
2385
+ }, z.core.$strict>>;
2386
+ has_more: z.ZodBoolean;
2387
+ next_cursor: z.ZodString;
2388
+ meta: z.ZodObject<{
2389
+ published_sequence: z.ZodString;
2390
+ source_freshness: z.ZodArray<z.ZodLazy<z.ZodObject<{
2391
+ source: z.ZodString;
2392
+ last_completed_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
2393
+ last_full_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
2394
+ state: z.ZodEnum<{
2395
+ stale: "stale";
2396
+ fresh: "fresh";
2397
+ never_completed: "never_completed";
2398
+ }>;
2399
+ freshness_window_seconds: z.ZodNumber;
2400
+ full_enumeration_window_seconds: z.ZodOptional<z.ZodNumber>;
2401
+ last_contact_at: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
2402
+ last_contact_status: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2403
+ refresh: z.ZodOptional<z.ZodObject<{
2404
+ state: z.ZodEnum<{
2405
+ on_schedule: "on_schedule";
2406
+ delayed: "delayed";
2407
+ blocked: "blocked";
2408
+ }>;
2409
+ cadence_seconds: z.ZodNumber;
2410
+ next_due_at: z.ZodISODateTime;
2411
+ phase: z.ZodNullable<z.ZodString>;
2412
+ last_attempt_at: z.ZodNullable<z.ZodISODateTime>;
2413
+ last_progress_at: z.ZodNullable<z.ZodISODateTime>;
2414
+ last_error_at: z.ZodNullable<z.ZodISODateTime>;
2415
+ error_code: z.ZodNullable<z.ZodString>;
2416
+ consecutive_failures: z.ZodNumber;
2417
+ }, z.core.$strict>>;
2418
+ }, z.core.$strict>>>;
2419
+ }, z.core.$strict>;
2420
+ }, z.core.$strict>;
2421
+ export declare const smartFeedOperations: {
2422
+ readonly createDirectorySnapshot: {
2423
+ readonly input: z.ZodObject<{
2424
+ mode: z.ZodDefault<z.ZodEnum<{
2425
+ directory: "directory";
2426
+ combined: "combined";
2427
+ }>>;
2428
+ party_id: z.ZodOptional<z.ZodString>;
2429
+ inventory_basis: z.ZodDefault<z.ZodLiteral<"listing_representation">>;
2430
+ dataset_id: z.ZodString;
2431
+ }, z.core.$strict>;
2432
+ readonly output: z.ZodObject<{
2433
+ id: z.ZodString;
2434
+ dataset_id: z.ZodString;
2435
+ status: z.ZodEnum<{
2436
+ expired: "expired";
2437
+ ready: "ready";
2438
+ }>;
2439
+ schema_version: z.ZodLiteral<"smart-feed-v2">;
2440
+ selector: z.ZodObject<{
2441
+ mode: z.ZodDefault<z.ZodEnum<{
2442
+ directory: "directory";
2443
+ combined: "combined";
2444
+ }>>;
2445
+ party_id: z.ZodOptional<z.ZodString>;
2446
+ inventory_basis: z.ZodDefault<z.ZodLiteral<"listing_representation">>;
2447
+ }, z.core.$strict>;
2448
+ entitlement_fingerprint: z.ZodString;
2449
+ snapshot_sequence: z.ZodString;
2450
+ replay_cursor: z.ZodString;
2451
+ created_at: z.ZodISODateTime;
2452
+ expires_at: z.ZodISODateTime;
2453
+ }, z.core.$strict>;
2454
+ };
2455
+ readonly getDirectorySnapshot: {
2456
+ readonly input: z.ZodObject<{
2457
+ id: z.ZodString;
2458
+ }, z.core.$strict>;
2459
+ readonly output: z.ZodObject<{
2460
+ id: z.ZodString;
2461
+ dataset_id: z.ZodString;
2462
+ status: z.ZodEnum<{
2463
+ expired: "expired";
2464
+ ready: "ready";
2465
+ }>;
2466
+ schema_version: z.ZodLiteral<"smart-feed-v2">;
2467
+ selector: z.ZodObject<{
2468
+ mode: z.ZodDefault<z.ZodEnum<{
2469
+ directory: "directory";
2470
+ combined: "combined";
2471
+ }>>;
2472
+ party_id: z.ZodOptional<z.ZodString>;
2473
+ inventory_basis: z.ZodDefault<z.ZodLiteral<"listing_representation">>;
2474
+ }, z.core.$strict>;
2475
+ entitlement_fingerprint: z.ZodString;
2476
+ snapshot_sequence: z.ZodString;
2477
+ replay_cursor: z.ZodString;
2478
+ created_at: z.ZodISODateTime;
2479
+ expires_at: z.ZodISODateTime;
2480
+ }, z.core.$strict>;
2481
+ };
2482
+ readonly listDirectorySnapshotItems: {
2483
+ readonly input: z.ZodObject<{
2484
+ cursor: z.ZodOptional<z.ZodString>;
2485
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
2486
+ id: z.ZodString;
2487
+ }, z.core.$strict>;
2488
+ readonly output: z.ZodObject<{
2489
+ data: z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
2490
+ resource_type: z.ZodLiteral<"identity_resolution">;
2491
+ resource_id: z.ZodString;
2492
+ revision: z.ZodString;
2493
+ payload: z.ZodLazy<z.ZodObject<{
2494
+ id: z.ZodString;
2495
+ source_namespace: z.ZodString;
2496
+ kind: z.ZodEnum<{
2497
+ office: "office";
2498
+ professional: "professional";
2499
+ organization: "organization";
2500
+ team: "team";
2501
+ }>;
2502
+ revision: z.ZodString;
2503
+ canonical_id: z.ZodNullable<z.ZodString>;
2504
+ state: z.ZodEnum<{
2505
+ source_identity: "source_identity";
2506
+ canonical: "canonical";
2507
+ }>;
2508
+ members: z.ZodArray<z.ZodObject<{
2509
+ entity_id: z.ZodString;
2510
+ source_namespace: z.ZodString;
2511
+ }, z.core.$strict>>;
2512
+ }, z.core.$strict>>;
2513
+ }, z.core.$strict>, z.ZodObject<{
2514
+ resource_type: z.ZodLiteral<"listing">;
2515
+ resource_id: z.ZodString;
2516
+ revision: z.ZodString;
2517
+ payload: z.ZodLazy<z.ZodObject<{
2518
+ id: z.ZodString;
2519
+ episode_id: z.ZodString;
2520
+ revision: z.ZodString;
2521
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2522
+ source_identities: z.ZodArray<z.ZodObject<{
2523
+ source: z.ZodString;
2524
+ key: z.ZodString;
2525
+ }, z.core.$strict>>;
2526
+ market_status: z.ZodEnum<{
2527
+ pending: "pending";
2528
+ unknown: "unknown";
2529
+ expired: "expired";
2530
+ active: "active";
2531
+ active_under_contract: "active_under_contract";
2532
+ sold: "sold";
2533
+ withdrawn: "withdrawn";
2534
+ }>;
2535
+ source_availability: z.ZodEnum<{
2536
+ present: "present";
2537
+ removed_unknown: "removed_unknown";
2538
+ }>;
2539
+ display_eligibility: z.ZodBoolean;
2540
+ price: z.ZodNullable<z.ZodObject<{
2541
+ amount: z.ZodString;
2542
+ currency: z.ZodString;
2543
+ period: z.ZodNullable<z.ZodString>;
2544
+ }, z.core.$strict>>;
2545
+ transaction_type: z.ZodOptional<z.ZodEnum<{
2546
+ unknown: "unknown";
2547
+ conflicting: "conflicting";
2548
+ for_sale: "for_sale";
2549
+ for_rent: "for_rent";
2550
+ }>>;
2551
+ price_period_state: z.ZodOptional<z.ZodEnum<{
2552
+ unknown: "unknown";
2553
+ supported: "supported";
2554
+ not_stated: "not_stated";
2555
+ conflicting: "conflicting";
2556
+ }>>;
2557
+ address: z.ZodObject<{
2558
+ street: z.ZodNullable<z.ZodString>;
2559
+ unit: z.ZodNullable<z.ZodString>;
2560
+ city: z.ZodNullable<z.ZodString>;
2561
+ region: z.ZodNullable<z.ZodString>;
2562
+ postal_code: z.ZodNullable<z.ZodString>;
2563
+ country: z.ZodNullable<z.ZodString>;
2564
+ }, z.core.$strict>;
2565
+ listing_agent_ids: z.ZodArray<z.ZodString>;
2566
+ description: z.ZodNullable<z.ZodString>;
2567
+ photos: z.ZodArray<z.ZodString>;
2568
+ photo_count: z.ZodOptional<z.ZodNumber>;
2569
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
2570
+ url: z.ZodURL;
2571
+ order: z.ZodNumber;
2572
+ caption: z.ZodNullable<z.ZodString>;
2573
+ width: z.ZodNullable<z.ZodNumber>;
2574
+ height: z.ZodNullable<z.ZodNumber>;
2575
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
2576
+ delivery: z.ZodEnum<{
2577
+ source_url: "source_url";
2578
+ hosted: "hosted";
2579
+ }>;
2580
+ renditions: z.ZodOptional<z.ZodObject<{
2581
+ thumbnail: z.ZodObject<{
2582
+ url: z.ZodURL;
2583
+ max_width: z.ZodNumber;
2584
+ max_height: z.ZodNumber;
2585
+ }, z.core.$strict>;
2586
+ map: z.ZodObject<{
2587
+ url: z.ZodURL;
2588
+ max_width: z.ZodNumber;
2589
+ max_height: z.ZodNumber;
2590
+ }, z.core.$strict>;
2591
+ card: z.ZodObject<{
2592
+ url: z.ZodURL;
2593
+ max_width: z.ZodNumber;
2594
+ max_height: z.ZodNumber;
2595
+ }, z.core.$strict>;
2596
+ gallery: z.ZodObject<{
2597
+ url: z.ZodURL;
2598
+ max_width: z.ZodNumber;
2599
+ max_height: z.ZodNumber;
2600
+ }, z.core.$strict>;
2601
+ }, z.core.$strict>>;
2602
+ }, z.core.$strict>>>;
2603
+ attribution: z.ZodOptional<z.ZodObject<{
2604
+ agent_name: z.ZodNullable<z.ZodString>;
2605
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2606
+ office_name: z.ZodNullable<z.ZodString>;
2607
+ office_key: z.ZodNullable<z.ZodString>;
2608
+ office_phone: z.ZodNullable<z.ZodString>;
2609
+ office_website: z.ZodNullable<z.ZodURL>;
2610
+ broker_name: z.ZodNullable<z.ZodString>;
2611
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2612
+ originating_system: z.ZodNullable<z.ZodString>;
2613
+ }, z.core.$strict>>;
2614
+ property_details: z.ZodOptional<z.ZodObject<{
2615
+ category: z.ZodNullable<z.ZodString>;
2616
+ sub_type: z.ZodNullable<z.ZodString>;
2617
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
2618
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
2619
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2620
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2621
+ stories: z.ZodNullable<z.ZodNumber>;
2622
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
2623
+ parking_total: z.ZodNullable<z.ZodNumber>;
2624
+ county: z.ZodNullable<z.ZodString>;
2625
+ subdivision: z.ZodNullable<z.ZodString>;
2626
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
2627
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
2628
+ AssociationYN: "AssociationYN";
2629
+ AttachedGarageYN: "AttachedGarageYN";
2630
+ BasementYN: "BasementYN";
2631
+ CarportYN: "CarportYN";
2632
+ CoolingYN: "CoolingYN";
2633
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
2634
+ FireplaceYN: "FireplaceYN";
2635
+ GarageYN: "GarageYN";
2636
+ HeatingYN: "HeatingYN";
2637
+ NewConstructionYN: "NewConstructionYN";
2638
+ PoolPrivateYN: "PoolPrivateYN";
2639
+ SpaYN: "SpaYN";
2640
+ WaterfrontYN: "WaterfrontYN";
2641
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
2642
+ Dock: "Dock";
2643
+ }> & z.core.$partial, z.ZodBoolean>>;
2644
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
2645
+ kind: z.ZodEnum<{
2646
+ association: "association";
2647
+ association_secondary: "association_secondary";
2648
+ }>;
2649
+ amount: z.ZodNullable<z.ZodString>;
2650
+ amount_state: z.ZodEnum<{
2651
+ unknown: "unknown";
2652
+ supported: "supported";
2653
+ not_stated: "not_stated";
2654
+ }>;
2655
+ currency: z.ZodNullable<z.ZodString>;
2656
+ currency_source: z.ZodNullable<z.ZodEnum<{
2657
+ field: "field";
2658
+ source_default: "source_default";
2659
+ }>>;
2660
+ currency_state: z.ZodEnum<{
2661
+ unknown: "unknown";
2662
+ supported: "supported";
2663
+ not_stated: "not_stated";
2664
+ }>;
2665
+ period: z.ZodNullable<z.ZodEnum<{
2666
+ year: "year";
2667
+ day: "day";
2668
+ week: "week";
2669
+ month: "month";
2670
+ quarter: "quarter";
2671
+ half_year: "half_year";
2672
+ one_time: "one_time";
2673
+ }>>;
2674
+ period_state: z.ZodEnum<{
2675
+ unknown: "unknown";
2676
+ supported: "supported";
2677
+ not_stated: "not_stated";
2678
+ }>;
2679
+ source_paths: z.ZodArray<z.ZodString>;
2680
+ }, z.core.$strict>>>;
2681
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
2682
+ type: z.ZodNullable<z.ZodString>;
2683
+ level: z.ZodNullable<z.ZodString>;
2684
+ features: z.ZodArray<z.ZodString>;
2685
+ dimensions: z.ZodNullable<z.ZodString>;
2686
+ length: z.ZodNullable<z.ZodNumber>;
2687
+ width: z.ZodNullable<z.ZodNumber>;
2688
+ unit: z.ZodNullable<z.ZodString>;
2689
+ source_paths: z.ZodArray<z.ZodString>;
2690
+ }, z.core.$strict>>>;
2691
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2692
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2693
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2694
+ }, z.core.$strict>>;
2695
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2696
+ property_type: z.ZodNullable<z.ZodString>;
2697
+ bedrooms: z.ZodNullable<z.ZodNumber>;
2698
+ bathrooms: z.ZodNullable<z.ZodNumber>;
2699
+ living_area: z.ZodNullable<z.ZodNumber>;
2700
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2701
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2702
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2703
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2704
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2705
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2706
+ location: z.ZodOptional<z.ZodObject<{
2707
+ state: z.ZodEnum<{
2708
+ source: "source";
2709
+ pending: "pending";
2710
+ resolved: "resolved";
2711
+ coarse: "coarse";
2712
+ unavailable: "unavailable";
2713
+ stale: "stale";
2714
+ suppressed: "suppressed";
2715
+ }>;
2716
+ origin: z.ZodNullable<z.ZodEnum<{
2717
+ source: "source";
2718
+ geocoded: "geocoded";
2719
+ }>>;
2720
+ precision: z.ZodEnum<{
2721
+ source_unknown: "source_unknown";
2722
+ parcel: "parcel";
2723
+ street: "street";
2724
+ area: "area";
2725
+ unknown: "unknown";
2726
+ }>;
2727
+ map_eligible: z.ZodBoolean;
2728
+ coordinates: z.ZodNullable<z.ZodObject<{
2729
+ latitude: z.ZodNumber;
2730
+ longitude: z.ZodNumber;
2731
+ }, z.core.$strip>>;
2732
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
2733
+ accuracy_type: z.ZodNullable<z.ZodString>;
2734
+ match_type: z.ZodNullable<z.ZodString>;
2735
+ provider: z.ZodNullable<z.ZodString>;
2736
+ provider_version: z.ZodNullable<z.ZodString>;
2737
+ policy_version: z.ZodString;
2738
+ source: z.ZodNullable<z.ZodString>;
2739
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
2740
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
2741
+ country_code: z.ZodNullable<z.ZodString>;
2742
+ region_code: z.ZodNullable<z.ZodString>;
2743
+ timezone: z.ZodNullable<z.ZodString>;
2744
+ enrichment: z.ZodNullable<z.ZodObject<{
2745
+ provider: z.ZodString;
2746
+ provider_version: z.ZodString;
2747
+ resolved_at: z.ZodISODateTime;
2748
+ valid_until: z.ZodISODateTime;
2749
+ fields: z.ZodArray<z.ZodEnum<{
2750
+ timezone: "timezone";
2751
+ census2025: "census2025";
2752
+ }>>;
2753
+ }, z.core.$strip>>;
2754
+ geography: z.ZodNullable<z.ZodObject<{
2755
+ census_year: z.ZodNumber;
2756
+ state_fips: z.ZodNullable<z.ZodString>;
2757
+ county_fips: z.ZodNullable<z.ZodString>;
2758
+ tract_geoid: z.ZodNullable<z.ZodString>;
2759
+ block_geoid: z.ZodNullable<z.ZodString>;
2760
+ place_fips: z.ZodNullable<z.ZodString>;
2761
+ cbsa_code: z.ZodNullable<z.ZodString>;
2762
+ source: z.ZodNullable<z.ZodString>;
2763
+ }, z.core.$strip>>;
2764
+ issue: z.ZodNullable<z.ZodEnum<{
2765
+ pending: "pending";
2766
+ invalid_source_point: "invalid_source_point";
2767
+ insufficient_address: "insufficient_address";
2768
+ unsupported_country: "unsupported_country";
2769
+ no_match: "no_match";
2770
+ low_quality: "low_quality";
2771
+ provider_failure: "provider_failure";
2772
+ expired: "expired";
2773
+ display_restricted: "display_restricted";
2774
+ }>>;
2775
+ }, z.core.$strip>>;
2776
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2777
+ source_url: z.ZodNullable<z.ZodString>;
2778
+ listed_date: z.ZodNullable<z.ZodString>;
2779
+ listed_precision: z.ZodEnum<{
2780
+ unknown: "unknown";
2781
+ date: "date";
2782
+ instant: "instant";
2783
+ }>;
2784
+ open_houses: z.ZodArray<z.ZodObject<{
2785
+ id: z.ZodString;
2786
+ start_at: z.ZodString;
2787
+ end_at: z.ZodNullable<z.ZodString>;
2788
+ timezone: z.ZodNullable<z.ZodString>;
2789
+ status: z.ZodEnum<{
2790
+ scheduled: "scheduled";
2791
+ cancelled: "cancelled";
2792
+ }>;
2793
+ }, z.core.$strict>>;
2794
+ classifications: z.ZodArray<z.ZodObject<{
2795
+ attribute: z.ZodString;
2796
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
2797
+ evidence_state: z.ZodEnum<{
2798
+ supported: "supported";
2799
+ not_stated: "not_stated";
2800
+ conflicting: "conflicting";
2801
+ explicitly_absent: "explicitly_absent";
2802
+ }>;
2803
+ origin: z.ZodEnum<{
2804
+ source_structured: "source_structured";
2805
+ source_text_interpreted: "source_text_interpreted";
2806
+ }>;
2807
+ evidence_refs: z.ZodArray<z.ZodString>;
2808
+ input_fingerprint: z.ZodString;
2809
+ taxonomy_version: z.ZodString;
2810
+ evaluation_id: z.ZodString;
2811
+ freshness: z.ZodEnum<{
2812
+ pending: "pending";
2813
+ current: "current";
2814
+ invalidated: "invalidated";
2815
+ failed: "failed";
2816
+ }>;
2817
+ }, z.core.$strict>>;
2818
+ display: z.ZodObject<{
2819
+ address_allowed: z.ZodBoolean;
2820
+ disclaimer: z.ZodNullable<z.ZodString>;
2821
+ }, z.core.$strict>;
2822
+ freshness: z.ZodObject<{
2823
+ last_seen_at: z.ZodISODateTime;
2824
+ published_at: z.ZodISODateTime;
2825
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
2826
+ }, z.core.$strict>;
2827
+ source_amenities: z.ZodOptional<z.ZodObject<{
2828
+ version: z.ZodLiteral<"source-amenities-v1">;
2829
+ values: z.ZodRecord<z.ZodEnum<{
2830
+ hardwood: "hardwood";
2831
+ solar: "solar";
2832
+ ev_charger: "ev_charger";
2833
+ rv_parking: "rv_parking";
2834
+ view: "view";
2835
+ }>, z.ZodObject<{
2836
+ value: z.ZodNullable<z.ZodBoolean>;
2837
+ state: z.ZodEnum<{
2838
+ supported: "supported";
2839
+ not_stated: "not_stated";
2840
+ conflicting: "conflicting";
2841
+ }>;
2842
+ source_paths: z.ZodArray<z.ZodString>;
2843
+ }, z.core.$strict>>;
2844
+ }, z.core.$strict>>;
2845
+ search_document: z.ZodOptional<z.ZodObject<{
2846
+ version: z.ZodLiteral<"catalog-search-text-v1">;
2847
+ text: z.ZodString;
2848
+ }, z.core.$strict>>;
2849
+ content_hash: z.ZodOptional<z.ZodString>;
2850
+ source_fields: z.ZodOptional<z.ZodObject<{
2851
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
2852
+ }, z.core.$strict>>;
2853
+ source_metadata: z.ZodOptional<z.ZodObject<{
2854
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
2855
+ parser_version: z.ZodString;
2856
+ exposure_version: z.ZodString;
2857
+ source_system_id: z.ZodNullable<z.ZodString>;
2858
+ source_system_name: z.ZodNullable<z.ZodString>;
2859
+ originating_system_name: z.ZodNullable<z.ZodString>;
2860
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
2861
+ supplied_paths: z.ZodArray<z.ZodString>;
2862
+ }, z.core.$strict>>;
2863
+ market_dates: z.ZodOptional<z.ZodObject<{
2864
+ listing_contract: z.ZodObject<{
2865
+ value: z.ZodNullable<z.ZodString>;
2866
+ precision: z.ZodEnum<{
2867
+ unknown: "unknown";
2868
+ date: "date";
2869
+ instant: "instant";
2870
+ }>;
2871
+ }, z.core.$strict>;
2872
+ on_market: z.ZodObject<{
2873
+ value: z.ZodNullable<z.ZodString>;
2874
+ precision: z.ZodEnum<{
2875
+ unknown: "unknown";
2876
+ date: "date";
2877
+ instant: "instant";
2878
+ }>;
2879
+ }, z.core.$strict>;
2880
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
2881
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
2882
+ }, z.core.$strict>>;
2883
+ taxes: z.ZodOptional<z.ZodObject<{
2884
+ annual_amount: z.ZodNullable<z.ZodString>;
2885
+ currency: z.ZodNullable<z.ZodString>;
2886
+ year: z.ZodNullable<z.ZodNumber>;
2887
+ }, z.core.$strict>>;
2888
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
2889
+ level: z.ZodEnum<{
2890
+ elementary: "elementary";
2891
+ middle: "middle";
2892
+ high: "high";
2893
+ }>;
2894
+ name: z.ZodNullable<z.ZodString>;
2895
+ district: z.ZodNullable<z.ZodString>;
2896
+ }, z.core.$strict>>>;
2897
+ price_history: z.ZodOptional<z.ZodObject<{
2898
+ original_amount: z.ZodNullable<z.ZodString>;
2899
+ previous_amount: z.ZodNullable<z.ZodString>;
2900
+ low_amount: z.ZodNullable<z.ZodString>;
2901
+ currency: z.ZodNullable<z.ZodString>;
2902
+ original_currency: z.ZodNullable<z.ZodString>;
2903
+ previous_currency: z.ZodNullable<z.ZodString>;
2904
+ low_currency: z.ZodNullable<z.ZodString>;
2905
+ changed_at: z.ZodObject<{
2906
+ value: z.ZodNullable<z.ZodString>;
2907
+ precision: z.ZodEnum<{
2908
+ unknown: "unknown";
2909
+ date: "date";
2910
+ instant: "instant";
2911
+ }>;
2912
+ }, z.core.$strict>;
2913
+ }, z.core.$strict>>;
2914
+ virtual_tours: z.ZodOptional<z.ZodObject<{
2915
+ branded_url: z.ZodNullable<z.ZodURL>;
2916
+ unbranded_url: z.ZodNullable<z.ZodURL>;
2917
+ }, z.core.$strict>>;
2918
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
2919
+ url: z.ZodURL;
2920
+ categories: z.ZodArray<z.ZodString>;
2921
+ order: z.ZodNumber;
2922
+ caption: z.ZodNullable<z.ZodString>;
2923
+ }, z.core.$strict>>>;
2924
+ professionals: z.ZodOptional<z.ZodObject<{
2925
+ agent: z.ZodObject<{
2926
+ full_name: z.ZodNullable<z.ZodString>;
2927
+ first_name: z.ZodNullable<z.ZodString>;
2928
+ last_name: z.ZodNullable<z.ZodString>;
2929
+ license: z.ZodNullable<z.ZodString>;
2930
+ }, z.core.$strict>;
2931
+ office: z.ZodObject<{
2932
+ key: z.ZodNullable<z.ZodString>;
2933
+ mls_id: z.ZodNullable<z.ZodString>;
2934
+ name: z.ZodNullable<z.ZodString>;
2935
+ broker_mls_id: z.ZodNullable<z.ZodString>;
2936
+ corporate_id: z.ZodNullable<z.ZodString>;
2937
+ main_office_id: z.ZodNullable<z.ZodString>;
2938
+ website_url: z.ZodNullable<z.ZodURL>;
2939
+ address: z.ZodObject<{
2940
+ street: z.ZodNullable<z.ZodString>;
2941
+ unit: z.ZodNullable<z.ZodString>;
2942
+ city: z.ZodNullable<z.ZodString>;
2943
+ region: z.ZodNullable<z.ZodString>;
2944
+ postal_code: z.ZodNullable<z.ZodString>;
2945
+ country: z.ZodNullable<z.ZodString>;
2946
+ }, z.core.$strict>;
2947
+ }, z.core.$strict>;
2948
+ brokerage: z.ZodObject<{
2949
+ name: z.ZodNullable<z.ZodString>;
2950
+ website_url: z.ZodNullable<z.ZodURL>;
2951
+ logo_url: z.ZodNullable<z.ZodURL>;
2952
+ address: z.ZodObject<{
2953
+ street: z.ZodNullable<z.ZodString>;
2954
+ unit: z.ZodNullable<z.ZodString>;
2955
+ city: z.ZodNullable<z.ZodString>;
2956
+ region: z.ZodNullable<z.ZodString>;
2957
+ postal_code: z.ZodNullable<z.ZodString>;
2958
+ country: z.ZodNullable<z.ZodString>;
2959
+ }, z.core.$strict>;
2960
+ }, z.core.$strict>;
2961
+ builder: z.ZodObject<{
2962
+ name: z.ZodNullable<z.ZodString>;
2963
+ }, z.core.$strict>;
2964
+ franchise: z.ZodNullable<z.ZodString>;
2965
+ }, z.core.$strict>>;
2966
+ permissions: z.ZodOptional<z.ZodObject<{
2967
+ internet_display: z.ZodNullable<z.ZodBoolean>;
2968
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
2969
+ address_display: z.ZodNullable<z.ZodBoolean>;
2970
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
2971
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
2972
+ }, z.core.$strict>>;
2973
+ }, z.core.$strict>>;
2974
+ }, z.core.$strict>, z.ZodObject<{
2975
+ resource_type: z.ZodLiteral<"entity">;
2976
+ resource_id: z.ZodString;
2977
+ revision: z.ZodString;
2978
+ payload: z.ZodLazy<z.ZodObject<{
2979
+ id: z.ZodString;
2980
+ kind: z.ZodEnum<{
2981
+ office: "office";
2982
+ professional: "professional";
2983
+ organization: "organization";
2984
+ team: "team";
2985
+ }>;
2986
+ source_identities: z.ZodArray<z.ZodObject<{
2987
+ source: z.ZodString;
2988
+ key: z.ZodString;
2989
+ key_kind: z.ZodEnum<{
2990
+ source: "source";
2991
+ derived_observation: "derived_observation";
2992
+ }>;
2993
+ legacy_agent_id: z.ZodNullable<z.ZodString>;
2994
+ }, z.core.$strict>>;
2995
+ revision: z.ZodString;
2996
+ name: z.ZodNullable<z.ZodString>;
2997
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>>;
2998
+ field_evidence: z.ZodRecord<z.ZodString, z.ZodObject<{
2999
+ state: z.ZodEnum<{
3000
+ supported: "supported";
3001
+ conflicting: "conflicting";
3002
+ withdrawn: "withdrawn";
3003
+ }>;
3004
+ observation_ids: z.ZodArray<z.ZodString>;
3005
+ authority: z.ZodEnum<{
3006
+ source_listing: "source_listing";
3007
+ product_verified: "product_verified";
3008
+ operator_verified: "operator_verified";
3009
+ }>;
3010
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
3011
+ }, z.core.$strict>>;
3012
+ resolution_state: z.ZodEnum<{
3013
+ source_identity: "source_identity";
3014
+ provisional: "provisional";
3015
+ }>;
3016
+ source_availability: z.ZodEnum<{
3017
+ present: "present";
3018
+ unrepresented: "unrepresented";
3019
+ }>;
3020
+ first_seen_at: z.ZodISODateTime;
3021
+ last_seen_at: z.ZodISODateTime;
3022
+ updated_at: z.ZodISODateTime;
3023
+ }, z.core.$strict>>;
3024
+ }, z.core.$strict>, z.ZodObject<{
3025
+ resource_type: z.ZodLiteral<"relationship">;
3026
+ resource_id: z.ZodString;
3027
+ revision: z.ZodString;
3028
+ payload: z.ZodLazy<z.ZodObject<{
3029
+ id: z.ZodString;
3030
+ source: z.ZodString;
3031
+ subject_id: z.ZodString;
3032
+ object_id: z.ZodString;
3033
+ relationship: z.ZodEnum<{
3034
+ observed_at_office: "observed_at_office";
3035
+ observed_brokerage: "observed_brokerage";
3036
+ affiliated_with: "affiliated_with";
3037
+ operates: "operates";
3038
+ member_of: "member_of";
3039
+ }>;
3040
+ evidence_state: z.ZodEnum<{
3041
+ observed: "observed";
3042
+ verified: "verified";
3043
+ }>;
3044
+ authority: z.ZodEnum<{
3045
+ source_listing: "source_listing";
3046
+ product_verified: "product_verified";
3047
+ operator_verified: "operator_verified";
3048
+ }>;
3049
+ revision: z.ZodString;
3050
+ current: z.ZodBoolean;
3051
+ listing_id: z.ZodNullable<z.ZodString>;
3052
+ observed_at: z.ZodISODateTime;
3053
+ effective_from: z.ZodNullable<z.ZodISODateTime>;
3054
+ effective_to: z.ZodNullable<z.ZodISODateTime>;
3055
+ evidence_ref: z.ZodString;
3056
+ }, z.core.$strict>>;
3057
+ }, z.core.$strict>], "resource_type">>;
3058
+ has_more: z.ZodBoolean;
3059
+ next_cursor: z.ZodNullable<z.ZodString>;
3060
+ meta: z.ZodObject<{
3061
+ snapshot_sequence: z.ZodString;
3062
+ source_freshness: z.ZodArray<z.ZodLazy<z.ZodObject<{
3063
+ source: z.ZodString;
3064
+ last_completed_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
3065
+ last_full_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
3066
+ state: z.ZodEnum<{
3067
+ stale: "stale";
3068
+ fresh: "fresh";
3069
+ never_completed: "never_completed";
3070
+ }>;
3071
+ freshness_window_seconds: z.ZodNumber;
3072
+ full_enumeration_window_seconds: z.ZodOptional<z.ZodNumber>;
3073
+ last_contact_at: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
3074
+ last_contact_status: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3075
+ refresh: z.ZodOptional<z.ZodObject<{
3076
+ state: z.ZodEnum<{
3077
+ on_schedule: "on_schedule";
3078
+ delayed: "delayed";
3079
+ blocked: "blocked";
3080
+ }>;
3081
+ cadence_seconds: z.ZodNumber;
3082
+ next_due_at: z.ZodISODateTime;
3083
+ phase: z.ZodNullable<z.ZodString>;
3084
+ last_attempt_at: z.ZodNullable<z.ZodISODateTime>;
3085
+ last_progress_at: z.ZodNullable<z.ZodISODateTime>;
3086
+ last_error_at: z.ZodNullable<z.ZodISODateTime>;
3087
+ error_code: z.ZodNullable<z.ZodString>;
3088
+ consecutive_failures: z.ZodNumber;
3089
+ }, z.core.$strict>>;
3090
+ }, z.core.$strict>>>;
3091
+ }, z.core.$strict>;
3092
+ }, z.core.$strict>;
3093
+ };
3094
+ readonly listDirectoryChanges: {
3095
+ readonly input: z.ZodObject<{
3096
+ cursor: z.ZodOptional<z.ZodString>;
3097
+ limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
3098
+ mode: z.ZodDefault<z.ZodEnum<{
3099
+ directory: "directory";
3100
+ combined: "combined";
3101
+ }>>;
3102
+ party_id: z.ZodOptional<z.ZodString>;
3103
+ inventory_basis: z.ZodDefault<z.ZodLiteral<"listing_representation">>;
3104
+ dataset_id: z.ZodString;
3105
+ }, z.core.$strict>;
3106
+ readonly output: z.ZodObject<{
3107
+ data: z.ZodArray<z.ZodObject<{
3108
+ sequence: z.ZodString;
3109
+ group_id: z.ZodString;
3110
+ group_end_sequence: z.ZodString;
3111
+ group_index: z.ZodNumber;
3112
+ group_size: z.ZodNumber;
3113
+ resource_type: z.ZodEnum<{
3114
+ relationship: "relationship";
3115
+ identity_resolution: "identity_resolution";
3116
+ listing: "listing";
3117
+ entity: "entity";
3118
+ }>;
3119
+ resource_id: z.ZodString;
3120
+ revision: z.ZodString;
3121
+ operation: z.ZodEnum<{
3122
+ upsert: "upsert";
3123
+ remove: "remove";
3124
+ }>;
3125
+ resource: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
3126
+ resource_type: z.ZodLiteral<"identity_resolution">;
3127
+ resource_id: z.ZodString;
3128
+ revision: z.ZodString;
3129
+ payload: z.ZodLazy<z.ZodObject<{
3130
+ id: z.ZodString;
3131
+ source_namespace: z.ZodString;
3132
+ kind: z.ZodEnum<{
3133
+ office: "office";
3134
+ professional: "professional";
3135
+ organization: "organization";
3136
+ team: "team";
3137
+ }>;
3138
+ revision: z.ZodString;
3139
+ canonical_id: z.ZodNullable<z.ZodString>;
3140
+ state: z.ZodEnum<{
3141
+ source_identity: "source_identity";
3142
+ canonical: "canonical";
3143
+ }>;
3144
+ members: z.ZodArray<z.ZodObject<{
3145
+ entity_id: z.ZodString;
3146
+ source_namespace: z.ZodString;
3147
+ }, z.core.$strict>>;
3148
+ }, z.core.$strict>>;
3149
+ }, z.core.$strict>, z.ZodObject<{
3150
+ resource_type: z.ZodLiteral<"listing">;
3151
+ resource_id: z.ZodString;
3152
+ revision: z.ZodString;
3153
+ payload: z.ZodLazy<z.ZodObject<{
3154
+ id: z.ZodString;
3155
+ episode_id: z.ZodString;
3156
+ revision: z.ZodString;
3157
+ property_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3158
+ source_identities: z.ZodArray<z.ZodObject<{
3159
+ source: z.ZodString;
3160
+ key: z.ZodString;
3161
+ }, z.core.$strict>>;
3162
+ market_status: z.ZodEnum<{
3163
+ pending: "pending";
3164
+ unknown: "unknown";
3165
+ expired: "expired";
3166
+ active: "active";
3167
+ active_under_contract: "active_under_contract";
3168
+ sold: "sold";
3169
+ withdrawn: "withdrawn";
3170
+ }>;
3171
+ source_availability: z.ZodEnum<{
3172
+ present: "present";
3173
+ removed_unknown: "removed_unknown";
3174
+ }>;
3175
+ display_eligibility: z.ZodBoolean;
3176
+ price: z.ZodNullable<z.ZodObject<{
3177
+ amount: z.ZodString;
3178
+ currency: z.ZodString;
3179
+ period: z.ZodNullable<z.ZodString>;
3180
+ }, z.core.$strict>>;
3181
+ transaction_type: z.ZodOptional<z.ZodEnum<{
3182
+ unknown: "unknown";
3183
+ conflicting: "conflicting";
3184
+ for_sale: "for_sale";
3185
+ for_rent: "for_rent";
3186
+ }>>;
3187
+ price_period_state: z.ZodOptional<z.ZodEnum<{
3188
+ unknown: "unknown";
3189
+ supported: "supported";
3190
+ not_stated: "not_stated";
3191
+ conflicting: "conflicting";
3192
+ }>>;
3193
+ address: z.ZodObject<{
3194
+ street: z.ZodNullable<z.ZodString>;
3195
+ unit: z.ZodNullable<z.ZodString>;
3196
+ city: z.ZodNullable<z.ZodString>;
3197
+ region: z.ZodNullable<z.ZodString>;
3198
+ postal_code: z.ZodNullable<z.ZodString>;
3199
+ country: z.ZodNullable<z.ZodString>;
3200
+ }, z.core.$strict>;
3201
+ listing_agent_ids: z.ZodArray<z.ZodString>;
3202
+ description: z.ZodNullable<z.ZodString>;
3203
+ photos: z.ZodArray<z.ZodString>;
3204
+ photo_count: z.ZodOptional<z.ZodNumber>;
3205
+ media: z.ZodOptional<z.ZodArray<z.ZodObject<{
3206
+ url: z.ZodURL;
3207
+ order: z.ZodNumber;
3208
+ caption: z.ZodNullable<z.ZodString>;
3209
+ width: z.ZodNullable<z.ZodNumber>;
3210
+ height: z.ZodNullable<z.ZodNumber>;
3211
+ modified_at: z.ZodNullable<z.ZodISODateTime>;
3212
+ delivery: z.ZodEnum<{
3213
+ source_url: "source_url";
3214
+ hosted: "hosted";
3215
+ }>;
3216
+ renditions: z.ZodOptional<z.ZodObject<{
3217
+ thumbnail: z.ZodObject<{
3218
+ url: z.ZodURL;
3219
+ max_width: z.ZodNumber;
3220
+ max_height: z.ZodNumber;
3221
+ }, z.core.$strict>;
3222
+ map: z.ZodObject<{
3223
+ url: z.ZodURL;
3224
+ max_width: z.ZodNumber;
3225
+ max_height: z.ZodNumber;
3226
+ }, z.core.$strict>;
3227
+ card: z.ZodObject<{
3228
+ url: z.ZodURL;
3229
+ max_width: z.ZodNumber;
3230
+ max_height: z.ZodNumber;
3231
+ }, z.core.$strict>;
3232
+ gallery: z.ZodObject<{
3233
+ url: z.ZodURL;
3234
+ max_width: z.ZodNumber;
3235
+ max_height: z.ZodNumber;
3236
+ }, z.core.$strict>;
3237
+ }, z.core.$strict>>;
3238
+ }, z.core.$strict>>>;
3239
+ attribution: z.ZodOptional<z.ZodObject<{
3240
+ agent_name: z.ZodNullable<z.ZodString>;
3241
+ agent_license: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3242
+ office_name: z.ZodNullable<z.ZodString>;
3243
+ office_key: z.ZodNullable<z.ZodString>;
3244
+ office_phone: z.ZodNullable<z.ZodString>;
3245
+ office_website: z.ZodNullable<z.ZodURL>;
3246
+ broker_name: z.ZodNullable<z.ZodString>;
3247
+ broker_phone: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3248
+ originating_system: z.ZodNullable<z.ZodString>;
3249
+ }, z.core.$strict>>;
3250
+ property_details: z.ZodOptional<z.ZodObject<{
3251
+ category: z.ZodNullable<z.ZodString>;
3252
+ sub_type: z.ZodNullable<z.ZodString>;
3253
+ bathrooms_full: z.ZodNullable<z.ZodNumber>;
3254
+ bathrooms_half: z.ZodNullable<z.ZodNumber>;
3255
+ bathrooms_one_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3256
+ bathrooms_three_quarter: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3257
+ stories: z.ZodNullable<z.ZodNumber>;
3258
+ garage_spaces: z.ZodNullable<z.ZodNumber>;
3259
+ parking_total: z.ZodNullable<z.ZodNumber>;
3260
+ county: z.ZodNullable<z.ZodString>;
3261
+ subdivision: z.ZodNullable<z.ZodString>;
3262
+ features: z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>;
3263
+ source_flags: z.ZodOptional<z.ZodRecord<z.ZodEnum<{
3264
+ AssociationYN: "AssociationYN";
3265
+ AttachedGarageYN: "AttachedGarageYN";
3266
+ BasementYN: "BasementYN";
3267
+ CarportYN: "CarportYN";
3268
+ CoolingYN: "CoolingYN";
3269
+ ElectricOnPropertyYN: "ElectricOnPropertyYN";
3270
+ FireplaceYN: "FireplaceYN";
3271
+ GarageYN: "GarageYN";
3272
+ HeatingYN: "HeatingYN";
3273
+ NewConstructionYN: "NewConstructionYN";
3274
+ PoolPrivateYN: "PoolPrivateYN";
3275
+ SpaYN: "SpaYN";
3276
+ WaterfrontYN: "WaterfrontYN";
3277
+ AccessibleElevatorInstalled: "AccessibleElevatorInstalled";
3278
+ Dock: "Dock";
3279
+ }> & z.core.$partial, z.ZodBoolean>>;
3280
+ association_fees: z.ZodOptional<z.ZodArray<z.ZodObject<{
3281
+ kind: z.ZodEnum<{
3282
+ association: "association";
3283
+ association_secondary: "association_secondary";
3284
+ }>;
3285
+ amount: z.ZodNullable<z.ZodString>;
3286
+ amount_state: z.ZodEnum<{
3287
+ unknown: "unknown";
3288
+ supported: "supported";
3289
+ not_stated: "not_stated";
3290
+ }>;
3291
+ currency: z.ZodNullable<z.ZodString>;
3292
+ currency_source: z.ZodNullable<z.ZodEnum<{
3293
+ field: "field";
3294
+ source_default: "source_default";
3295
+ }>>;
3296
+ currency_state: z.ZodEnum<{
3297
+ unknown: "unknown";
3298
+ supported: "supported";
3299
+ not_stated: "not_stated";
3300
+ }>;
3301
+ period: z.ZodNullable<z.ZodEnum<{
3302
+ year: "year";
3303
+ day: "day";
3304
+ week: "week";
3305
+ month: "month";
3306
+ quarter: "quarter";
3307
+ half_year: "half_year";
3308
+ one_time: "one_time";
3309
+ }>>;
3310
+ period_state: z.ZodEnum<{
3311
+ unknown: "unknown";
3312
+ supported: "supported";
3313
+ not_stated: "not_stated";
3314
+ }>;
3315
+ source_paths: z.ZodArray<z.ZodString>;
3316
+ }, z.core.$strict>>>;
3317
+ rooms: z.ZodOptional<z.ZodArray<z.ZodObject<{
3318
+ type: z.ZodNullable<z.ZodString>;
3319
+ level: z.ZodNullable<z.ZodString>;
3320
+ features: z.ZodArray<z.ZodString>;
3321
+ dimensions: z.ZodNullable<z.ZodString>;
3322
+ length: z.ZodNullable<z.ZodNumber>;
3323
+ width: z.ZodNullable<z.ZodNumber>;
3324
+ unit: z.ZodNullable<z.ZodString>;
3325
+ source_paths: z.ZodArray<z.ZodString>;
3326
+ }, z.core.$strict>>>;
3327
+ year_built_effective: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3328
+ units_total: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3329
+ entry_level: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3330
+ }, z.core.$strict>>;
3331
+ raw_status: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3332
+ property_type: z.ZodNullable<z.ZodString>;
3333
+ bedrooms: z.ZodNullable<z.ZodNumber>;
3334
+ bathrooms: z.ZodNullable<z.ZodNumber>;
3335
+ living_area: z.ZodNullable<z.ZodNumber>;
3336
+ living_area_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3337
+ lot_size: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3338
+ lot_size_unit: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3339
+ year_built: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3340
+ latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3341
+ longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3342
+ location: z.ZodOptional<z.ZodObject<{
3343
+ state: z.ZodEnum<{
3344
+ source: "source";
3345
+ pending: "pending";
3346
+ resolved: "resolved";
3347
+ coarse: "coarse";
3348
+ unavailable: "unavailable";
3349
+ stale: "stale";
3350
+ suppressed: "suppressed";
3351
+ }>;
3352
+ origin: z.ZodNullable<z.ZodEnum<{
3353
+ source: "source";
3354
+ geocoded: "geocoded";
3355
+ }>>;
3356
+ precision: z.ZodEnum<{
3357
+ source_unknown: "source_unknown";
3358
+ parcel: "parcel";
3359
+ street: "street";
3360
+ area: "area";
3361
+ unknown: "unknown";
3362
+ }>;
3363
+ map_eligible: z.ZodBoolean;
3364
+ coordinates: z.ZodNullable<z.ZodObject<{
3365
+ latitude: z.ZodNumber;
3366
+ longitude: z.ZodNumber;
3367
+ }, z.core.$strip>>;
3368
+ accuracy_score: z.ZodNullable<z.ZodNumber>;
3369
+ accuracy_type: z.ZodNullable<z.ZodString>;
3370
+ match_type: z.ZodNullable<z.ZodString>;
3371
+ provider: z.ZodNullable<z.ZodString>;
3372
+ provider_version: z.ZodNullable<z.ZodString>;
3373
+ policy_version: z.ZodString;
3374
+ source: z.ZodNullable<z.ZodString>;
3375
+ resolved_at: z.ZodNullable<z.ZodISODateTime>;
3376
+ valid_until: z.ZodNullable<z.ZodISODateTime>;
3377
+ country_code: z.ZodNullable<z.ZodString>;
3378
+ region_code: z.ZodNullable<z.ZodString>;
3379
+ timezone: z.ZodNullable<z.ZodString>;
3380
+ enrichment: z.ZodNullable<z.ZodObject<{
3381
+ provider: z.ZodString;
3382
+ provider_version: z.ZodString;
3383
+ resolved_at: z.ZodISODateTime;
3384
+ valid_until: z.ZodISODateTime;
3385
+ fields: z.ZodArray<z.ZodEnum<{
3386
+ timezone: "timezone";
3387
+ census2025: "census2025";
3388
+ }>>;
3389
+ }, z.core.$strip>>;
3390
+ geography: z.ZodNullable<z.ZodObject<{
3391
+ census_year: z.ZodNumber;
3392
+ state_fips: z.ZodNullable<z.ZodString>;
3393
+ county_fips: z.ZodNullable<z.ZodString>;
3394
+ tract_geoid: z.ZodNullable<z.ZodString>;
3395
+ block_geoid: z.ZodNullable<z.ZodString>;
3396
+ place_fips: z.ZodNullable<z.ZodString>;
3397
+ cbsa_code: z.ZodNullable<z.ZodString>;
3398
+ source: z.ZodNullable<z.ZodString>;
3399
+ }, z.core.$strip>>;
3400
+ issue: z.ZodNullable<z.ZodEnum<{
3401
+ pending: "pending";
3402
+ invalid_source_point: "invalid_source_point";
3403
+ insufficient_address: "insufficient_address";
3404
+ unsupported_country: "unsupported_country";
3405
+ no_match: "no_match";
3406
+ low_quality: "low_quality";
3407
+ provider_failure: "provider_failure";
3408
+ expired: "expired";
3409
+ display_restricted: "display_restricted";
3410
+ }>>;
3411
+ }, z.core.$strip>>;
3412
+ mls_number: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3413
+ source_url: z.ZodNullable<z.ZodString>;
3414
+ listed_date: z.ZodNullable<z.ZodString>;
3415
+ listed_precision: z.ZodEnum<{
3416
+ unknown: "unknown";
3417
+ date: "date";
3418
+ instant: "instant";
3419
+ }>;
3420
+ open_houses: z.ZodArray<z.ZodObject<{
3421
+ id: z.ZodString;
3422
+ start_at: z.ZodString;
3423
+ end_at: z.ZodNullable<z.ZodString>;
3424
+ timezone: z.ZodNullable<z.ZodString>;
3425
+ status: z.ZodEnum<{
3426
+ scheduled: "scheduled";
3427
+ cancelled: "cancelled";
3428
+ }>;
3429
+ }, z.core.$strict>>;
3430
+ classifications: z.ZodArray<z.ZodObject<{
3431
+ attribute: z.ZodString;
3432
+ value: z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>;
3433
+ evidence_state: z.ZodEnum<{
3434
+ supported: "supported";
3435
+ not_stated: "not_stated";
3436
+ conflicting: "conflicting";
3437
+ explicitly_absent: "explicitly_absent";
3438
+ }>;
3439
+ origin: z.ZodEnum<{
3440
+ source_structured: "source_structured";
3441
+ source_text_interpreted: "source_text_interpreted";
3442
+ }>;
3443
+ evidence_refs: z.ZodArray<z.ZodString>;
3444
+ input_fingerprint: z.ZodString;
3445
+ taxonomy_version: z.ZodString;
3446
+ evaluation_id: z.ZodString;
3447
+ freshness: z.ZodEnum<{
3448
+ pending: "pending";
3449
+ current: "current";
3450
+ invalidated: "invalidated";
3451
+ failed: "failed";
3452
+ }>;
3453
+ }, z.core.$strict>>;
3454
+ display: z.ZodObject<{
3455
+ address_allowed: z.ZodBoolean;
3456
+ disclaimer: z.ZodNullable<z.ZodString>;
3457
+ }, z.core.$strict>;
3458
+ freshness: z.ZodObject<{
3459
+ last_seen_at: z.ZodISODateTime;
3460
+ published_at: z.ZodISODateTime;
3461
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
3462
+ }, z.core.$strict>;
3463
+ source_amenities: z.ZodOptional<z.ZodObject<{
3464
+ version: z.ZodLiteral<"source-amenities-v1">;
3465
+ values: z.ZodRecord<z.ZodEnum<{
3466
+ hardwood: "hardwood";
3467
+ solar: "solar";
3468
+ ev_charger: "ev_charger";
3469
+ rv_parking: "rv_parking";
3470
+ view: "view";
3471
+ }>, z.ZodObject<{
3472
+ value: z.ZodNullable<z.ZodBoolean>;
3473
+ state: z.ZodEnum<{
3474
+ supported: "supported";
3475
+ not_stated: "not_stated";
3476
+ conflicting: "conflicting";
3477
+ }>;
3478
+ source_paths: z.ZodArray<z.ZodString>;
3479
+ }, z.core.$strict>>;
3480
+ }, z.core.$strict>>;
3481
+ search_document: z.ZodOptional<z.ZodObject<{
3482
+ version: z.ZodLiteral<"catalog-search-text-v1">;
3483
+ text: z.ZodString;
3484
+ }, z.core.$strict>>;
3485
+ content_hash: z.ZodOptional<z.ZodString>;
3486
+ source_fields: z.ZodOptional<z.ZodObject<{
3487
+ listhub: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
3488
+ }, z.core.$strict>>;
3489
+ source_metadata: z.ZodOptional<z.ZodObject<{
3490
+ contract_version: z.ZodLiteral<"catalog-fields-v2">;
3491
+ parser_version: z.ZodString;
3492
+ exposure_version: z.ZodString;
3493
+ source_system_id: z.ZodNullable<z.ZodString>;
3494
+ source_system_name: z.ZodNullable<z.ZodString>;
3495
+ originating_system_name: z.ZodNullable<z.ZodString>;
3496
+ source_photo_count: z.ZodNullable<z.ZodNumber>;
3497
+ supplied_paths: z.ZodArray<z.ZodString>;
3498
+ }, z.core.$strict>>;
3499
+ market_dates: z.ZodOptional<z.ZodObject<{
3500
+ listing_contract: z.ZodObject<{
3501
+ value: z.ZodNullable<z.ZodString>;
3502
+ precision: z.ZodEnum<{
3503
+ unknown: "unknown";
3504
+ date: "date";
3505
+ instant: "instant";
3506
+ }>;
3507
+ }, z.core.$strict>;
3508
+ on_market: z.ZodObject<{
3509
+ value: z.ZodNullable<z.ZodString>;
3510
+ precision: z.ZodEnum<{
3511
+ unknown: "unknown";
3512
+ date: "date";
3513
+ instant: "instant";
3514
+ }>;
3515
+ }, z.core.$strict>;
3516
+ source_days_on_market: z.ZodNullable<z.ZodNumber>;
3517
+ source_cumulative_days_on_market: z.ZodNullable<z.ZodNumber>;
3518
+ }, z.core.$strict>>;
3519
+ taxes: z.ZodOptional<z.ZodObject<{
3520
+ annual_amount: z.ZodNullable<z.ZodString>;
3521
+ currency: z.ZodNullable<z.ZodString>;
3522
+ year: z.ZodNullable<z.ZodNumber>;
3523
+ }, z.core.$strict>>;
3524
+ schools: z.ZodOptional<z.ZodArray<z.ZodObject<{
3525
+ level: z.ZodEnum<{
3526
+ elementary: "elementary";
3527
+ middle: "middle";
3528
+ high: "high";
3529
+ }>;
3530
+ name: z.ZodNullable<z.ZodString>;
3531
+ district: z.ZodNullable<z.ZodString>;
3532
+ }, z.core.$strict>>>;
3533
+ price_history: z.ZodOptional<z.ZodObject<{
3534
+ original_amount: z.ZodNullable<z.ZodString>;
3535
+ previous_amount: z.ZodNullable<z.ZodString>;
3536
+ low_amount: z.ZodNullable<z.ZodString>;
3537
+ currency: z.ZodNullable<z.ZodString>;
3538
+ original_currency: z.ZodNullable<z.ZodString>;
3539
+ previous_currency: z.ZodNullable<z.ZodString>;
3540
+ low_currency: z.ZodNullable<z.ZodString>;
3541
+ changed_at: z.ZodObject<{
3542
+ value: z.ZodNullable<z.ZodString>;
3543
+ precision: z.ZodEnum<{
3544
+ unknown: "unknown";
3545
+ date: "date";
3546
+ instant: "instant";
3547
+ }>;
3548
+ }, z.core.$strict>;
3549
+ }, z.core.$strict>>;
3550
+ virtual_tours: z.ZodOptional<z.ZodObject<{
3551
+ branded_url: z.ZodNullable<z.ZodURL>;
3552
+ unbranded_url: z.ZodNullable<z.ZodURL>;
3553
+ }, z.core.$strict>>;
3554
+ additional_media: z.ZodOptional<z.ZodArray<z.ZodObject<{
3555
+ url: z.ZodURL;
3556
+ categories: z.ZodArray<z.ZodString>;
3557
+ order: z.ZodNumber;
3558
+ caption: z.ZodNullable<z.ZodString>;
3559
+ }, z.core.$strict>>>;
3560
+ professionals: z.ZodOptional<z.ZodObject<{
3561
+ agent: z.ZodObject<{
3562
+ full_name: z.ZodNullable<z.ZodString>;
3563
+ first_name: z.ZodNullable<z.ZodString>;
3564
+ last_name: z.ZodNullable<z.ZodString>;
3565
+ license: z.ZodNullable<z.ZodString>;
3566
+ }, z.core.$strict>;
3567
+ office: z.ZodObject<{
3568
+ key: z.ZodNullable<z.ZodString>;
3569
+ mls_id: z.ZodNullable<z.ZodString>;
3570
+ name: z.ZodNullable<z.ZodString>;
3571
+ broker_mls_id: z.ZodNullable<z.ZodString>;
3572
+ corporate_id: z.ZodNullable<z.ZodString>;
3573
+ main_office_id: z.ZodNullable<z.ZodString>;
3574
+ website_url: z.ZodNullable<z.ZodURL>;
3575
+ address: z.ZodObject<{
3576
+ street: z.ZodNullable<z.ZodString>;
3577
+ unit: z.ZodNullable<z.ZodString>;
3578
+ city: z.ZodNullable<z.ZodString>;
3579
+ region: z.ZodNullable<z.ZodString>;
3580
+ postal_code: z.ZodNullable<z.ZodString>;
3581
+ country: z.ZodNullable<z.ZodString>;
3582
+ }, z.core.$strict>;
3583
+ }, z.core.$strict>;
3584
+ brokerage: z.ZodObject<{
3585
+ name: z.ZodNullable<z.ZodString>;
3586
+ website_url: z.ZodNullable<z.ZodURL>;
3587
+ logo_url: z.ZodNullable<z.ZodURL>;
3588
+ address: z.ZodObject<{
3589
+ street: z.ZodNullable<z.ZodString>;
3590
+ unit: z.ZodNullable<z.ZodString>;
3591
+ city: z.ZodNullable<z.ZodString>;
3592
+ region: z.ZodNullable<z.ZodString>;
3593
+ postal_code: z.ZodNullable<z.ZodString>;
3594
+ country: z.ZodNullable<z.ZodString>;
3595
+ }, z.core.$strict>;
3596
+ }, z.core.$strict>;
3597
+ builder: z.ZodObject<{
3598
+ name: z.ZodNullable<z.ZodString>;
3599
+ }, z.core.$strict>;
3600
+ franchise: z.ZodNullable<z.ZodString>;
3601
+ }, z.core.$strict>>;
3602
+ permissions: z.ZodOptional<z.ZodObject<{
3603
+ internet_display: z.ZodNullable<z.ZodBoolean>;
3604
+ entire_listing_display: z.ZodNullable<z.ZodBoolean>;
3605
+ address_display: z.ZodNullable<z.ZodBoolean>;
3606
+ automated_valuation_display: z.ZodNullable<z.ZodBoolean>;
3607
+ consumer_comment: z.ZodNullable<z.ZodBoolean>;
3608
+ }, z.core.$strict>>;
3609
+ }, z.core.$strict>>;
3610
+ }, z.core.$strict>, z.ZodObject<{
3611
+ resource_type: z.ZodLiteral<"entity">;
3612
+ resource_id: z.ZodString;
3613
+ revision: z.ZodString;
3614
+ payload: z.ZodLazy<z.ZodObject<{
3615
+ id: z.ZodString;
3616
+ kind: z.ZodEnum<{
3617
+ office: "office";
3618
+ professional: "professional";
3619
+ organization: "organization";
3620
+ team: "team";
3621
+ }>;
3622
+ source_identities: z.ZodArray<z.ZodObject<{
3623
+ source: z.ZodString;
3624
+ key: z.ZodString;
3625
+ key_kind: z.ZodEnum<{
3626
+ source: "source";
3627
+ derived_observation: "derived_observation";
3628
+ }>;
3629
+ legacy_agent_id: z.ZodNullable<z.ZodString>;
3630
+ }, z.core.$strict>>;
3631
+ revision: z.ZodString;
3632
+ name: z.ZodNullable<z.ZodString>;
3633
+ fields: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodBoolean, z.ZodNumber, z.ZodNull]>>;
3634
+ field_evidence: z.ZodRecord<z.ZodString, z.ZodObject<{
3635
+ state: z.ZodEnum<{
3636
+ supported: "supported";
3637
+ conflicting: "conflicting";
3638
+ withdrawn: "withdrawn";
3639
+ }>;
3640
+ observation_ids: z.ZodArray<z.ZodString>;
3641
+ authority: z.ZodEnum<{
3642
+ source_listing: "source_listing";
3643
+ product_verified: "product_verified";
3644
+ operator_verified: "operator_verified";
3645
+ }>;
3646
+ source_modified_at: z.ZodNullable<z.ZodISODateTime>;
3647
+ }, z.core.$strict>>;
3648
+ resolution_state: z.ZodEnum<{
3649
+ source_identity: "source_identity";
3650
+ provisional: "provisional";
3651
+ }>;
3652
+ source_availability: z.ZodEnum<{
3653
+ present: "present";
3654
+ unrepresented: "unrepresented";
3655
+ }>;
3656
+ first_seen_at: z.ZodISODateTime;
3657
+ last_seen_at: z.ZodISODateTime;
3658
+ updated_at: z.ZodISODateTime;
3659
+ }, z.core.$strict>>;
3660
+ }, z.core.$strict>, z.ZodObject<{
3661
+ resource_type: z.ZodLiteral<"relationship">;
3662
+ resource_id: z.ZodString;
3663
+ revision: z.ZodString;
3664
+ payload: z.ZodLazy<z.ZodObject<{
3665
+ id: z.ZodString;
3666
+ source: z.ZodString;
3667
+ subject_id: z.ZodString;
3668
+ object_id: z.ZodString;
3669
+ relationship: z.ZodEnum<{
3670
+ observed_at_office: "observed_at_office";
3671
+ observed_brokerage: "observed_brokerage";
3672
+ affiliated_with: "affiliated_with";
3673
+ operates: "operates";
3674
+ member_of: "member_of";
3675
+ }>;
3676
+ evidence_state: z.ZodEnum<{
3677
+ observed: "observed";
3678
+ verified: "verified";
3679
+ }>;
3680
+ authority: z.ZodEnum<{
3681
+ source_listing: "source_listing";
3682
+ product_verified: "product_verified";
3683
+ operator_verified: "operator_verified";
3684
+ }>;
3685
+ revision: z.ZodString;
3686
+ current: z.ZodBoolean;
3687
+ listing_id: z.ZodNullable<z.ZodString>;
3688
+ observed_at: z.ZodISODateTime;
3689
+ effective_from: z.ZodNullable<z.ZodISODateTime>;
3690
+ effective_to: z.ZodNullable<z.ZodISODateTime>;
3691
+ evidence_ref: z.ZodString;
3692
+ }, z.core.$strict>>;
3693
+ }, z.core.$strict>], "resource_type">>;
3694
+ }, z.core.$strict>>;
3695
+ has_more: z.ZodBoolean;
3696
+ next_cursor: z.ZodString;
3697
+ meta: z.ZodObject<{
3698
+ published_sequence: z.ZodString;
3699
+ source_freshness: z.ZodArray<z.ZodLazy<z.ZodObject<{
3700
+ source: z.ZodString;
3701
+ last_completed_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
3702
+ last_full_enumeration_at: z.ZodNullable<z.ZodISODateTime>;
3703
+ state: z.ZodEnum<{
3704
+ stale: "stale";
3705
+ fresh: "fresh";
3706
+ never_completed: "never_completed";
3707
+ }>;
3708
+ freshness_window_seconds: z.ZodNumber;
3709
+ full_enumeration_window_seconds: z.ZodOptional<z.ZodNumber>;
3710
+ last_contact_at: z.ZodOptional<z.ZodNullable<z.ZodISODateTime>>;
3711
+ last_contact_status: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3712
+ refresh: z.ZodOptional<z.ZodObject<{
3713
+ state: z.ZodEnum<{
3714
+ on_schedule: "on_schedule";
3715
+ delayed: "delayed";
3716
+ blocked: "blocked";
3717
+ }>;
3718
+ cadence_seconds: z.ZodNumber;
3719
+ next_due_at: z.ZodISODateTime;
3720
+ phase: z.ZodNullable<z.ZodString>;
3721
+ last_attempt_at: z.ZodNullable<z.ZodISODateTime>;
3722
+ last_progress_at: z.ZodNullable<z.ZodISODateTime>;
3723
+ last_error_at: z.ZodNullable<z.ZodISODateTime>;
3724
+ error_code: z.ZodNullable<z.ZodString>;
3725
+ consecutive_failures: z.ZodNumber;
3726
+ }, z.core.$strict>>;
3727
+ }, z.core.$strict>>>;
3728
+ }, z.core.$strict>;
3729
+ }, z.core.$strict>;
3730
+ };
3731
+ };