htag-sdk 0.9.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -275,30 +275,42 @@ interface DemographicsResponse {
275
275
  results: DemographicsRecord[];
276
276
  attribution?: string | null;
277
277
  }
278
+ interface SchoolsParams extends RequestOptions {
279
+ /** Free-text address to look up (mutually exclusive with addressKey). */
280
+ address?: string;
281
+ /** Canonical HTAG address key (mutually exclusive with address). */
282
+ addressKey?: string;
283
+ /** Search radius in metres for Catholic/Independent schools (1000–50000). */
284
+ radiusM?: number;
285
+ }
286
+ interface SchoolRecord {
287
+ acara_sml_id?: number | null;
288
+ school_name?: string | null;
289
+ school_sector?: string | null;
290
+ school_type?: string | null;
291
+ loc_pid?: string | null;
292
+ school_lat?: number | null;
293
+ school_lon?: number | null;
294
+ ranking?: number | null;
295
+ distance_m?: number | null;
296
+ in_catchment?: boolean | null;
297
+ }
298
+ interface SchoolsResponse {
299
+ total: number;
300
+ results: SchoolRecord[];
301
+ }
278
302
 
279
303
  /**
280
304
  * Client for the Address API domain.
281
305
  *
282
306
  * ```ts
283
- * const results = await client.address.search({ q: '100 George St Sydney' });
307
+ * const results = await client.address.geocode({ address: '100 George St Sydney' });
284
308
  * ```
285
309
  */
286
310
  declare class AddressClient {
287
311
  private readonly http;
288
312
  /** @internal */
289
313
  constructor(http: HttpClient);
290
- /**
291
- * Search for addresses matching a free-text query.
292
- *
293
- * `GET /internal-api/v1/address/search`
294
- */
295
- search(params: AddressSearchParams): Promise<AddressSearchResponse>;
296
- /**
297
- * Retrieve detailed insights for one or more addresses.
298
- *
299
- * `GET /internal-api/v1/address/insights`
300
- */
301
- insights(params: AddressInsightsParams): Promise<AddressInsightsResponse>;
302
314
  /**
303
315
  * Standardise a batch of raw address strings into structured records.
304
316
  *
@@ -323,6 +335,12 @@ declare class AddressClient {
323
335
  * `GET /v1/address/demographics`
324
336
  */
325
337
  demographics(params: DemographicsParams): Promise<DemographicsResponse>;
338
+ /**
339
+ * Retrieve schools relevant to an address.
340
+ *
341
+ * `GET /v1/address/schools`
342
+ */
343
+ schools(params: SchoolsParams): Promise<SchoolsResponse>;
326
344
  }
327
345
 
328
346
  /** Agent metadata from the catalog. */
@@ -347,7 +365,7 @@ interface AgentListResponse {
347
365
  * Response from executing an agent.
348
366
  *
349
367
  * The exact fields depend on the agent. Common fields include
350
- * `signal_rationale`, `suburb`, `transitions`, `network_prompts`, and `events`.
368
+ * `research_output`, `suburb`, `transitions`, `network_prompts`, and `events`.
351
369
  */
352
370
  interface AgentExecuteResponse {
353
371
  [key: string]: unknown;
@@ -415,6 +433,222 @@ declare class AgentsClient {
415
433
  getJob(agentId: string, jobId: string): Promise<AgentJobStatus>;
416
434
  }
417
435
 
436
+ interface CensusMediansIncome {
437
+ median_personal_weekly?: number | null;
438
+ median_family_weekly?: number | null;
439
+ median_household_weekly?: number | null;
440
+ median_personal_weekly_cpi?: number | null;
441
+ median_family_weekly_cpi?: number | null;
442
+ median_household_weekly_cpi?: number | null;
443
+ }
444
+ interface CensusMediansHousingCosts {
445
+ median_rent_weekly?: number | null;
446
+ median_mortgage_monthly?: number | null;
447
+ median_rent_weekly_cpi?: number | null;
448
+ median_mortgage_monthly_cpi?: number | null;
449
+ }
450
+ interface CensusMediansCpiAdjustment {
451
+ factor_applied?: number | null;
452
+ target_quarter?: string | null;
453
+ region?: string | null;
454
+ }
455
+ interface CensusMediansResponse {
456
+ loc_pid: string;
457
+ name: string;
458
+ census_year: number;
459
+ median_age_persons?: number | null;
460
+ average_household_size?: number | null;
461
+ average_num_psns_per_bedroom?: number | null;
462
+ income?: CensusMediansIncome | null;
463
+ housing_costs?: CensusMediansHousingCosts | null;
464
+ cpi_adjustment?: CensusMediansCpiAdjustment | null;
465
+ }
466
+ interface CensusMediansParams extends RequestOptions {
467
+ locPid: string;
468
+ cpiAdjusted?: boolean;
469
+ }
470
+ interface BusinessActivityEmployment {
471
+ total_businesses?: number | null;
472
+ total_non_employing?: number | null;
473
+ total_employing?: number | null;
474
+ large_employers?: number | null;
475
+ is_major_employer_anchor?: boolean | null;
476
+ top_industry?: string | null;
477
+ top_industry_count?: number | null;
478
+ }
479
+ interface BusinessActivityTurnover {
480
+ total_businesses?: number | null;
481
+ high_turnover_businesses?: number | null;
482
+ pct_high_turnover?: number | null;
483
+ top_industry?: string | null;
484
+ }
485
+ interface BusinessActivityResponse {
486
+ loc_pid?: string | null;
487
+ lga_pid?: string | null;
488
+ name: string;
489
+ period: string;
490
+ employment?: BusinessActivityEmployment | null;
491
+ turnover?: BusinessActivityTurnover | null;
492
+ }
493
+ interface BusinessActivityParams extends RequestOptions {
494
+ locPid?: string;
495
+ lgaPid?: string;
496
+ period?: string;
497
+ }
498
+ interface HospitalRecord {
499
+ hospital_name: string;
500
+ hospital_type: string;
501
+ lhn_name?: string | null;
502
+ bed_count?: number | null;
503
+ latitude?: number | null;
504
+ longitude?: number | null;
505
+ }
506
+ interface HealthcareResponse {
507
+ loc_pid: string;
508
+ name: string;
509
+ is_healthcare_cluster: boolean;
510
+ hospitals: HospitalRecord[];
511
+ }
512
+ interface HealthcareParams extends RequestOptions {
513
+ locPid: string;
514
+ }
515
+
516
+ declare class DemographicsClient {
517
+ private readonly http;
518
+ constructor(http: HttpClient);
519
+ censusMedians(params: CensusMediansParams): Promise<CensusMediansResponse>;
520
+ businessActivity(params: BusinessActivityParams): Promise<BusinessActivityResponse>;
521
+ healthcare(params: HealthcareParams): Promise<HealthcareResponse>;
522
+ }
523
+
524
+ interface CpiFactorParams extends RequestOptions {
525
+ fromPeriod: string;
526
+ toPeriod?: string;
527
+ region?: string;
528
+ }
529
+ interface CpiFactorResponse {
530
+ from_period: string;
531
+ to_period: string;
532
+ region: string;
533
+ region_code: string;
534
+ factor: number;
535
+ cumulative_inflation_pct: number;
536
+ }
537
+ interface CpiAdjustParams extends RequestOptions {
538
+ value: number;
539
+ fromPeriod?: string;
540
+ toPeriod?: string;
541
+ region?: string;
542
+ }
543
+ interface CpiAdjustResponse {
544
+ original_value: number;
545
+ adjusted_value: number;
546
+ from_period: string;
547
+ to_period: string;
548
+ region: string;
549
+ factor_applied: number;
550
+ }
551
+ interface CpiSeriesParams extends RequestOptions {
552
+ region?: string;
553
+ fromPeriod?: string;
554
+ toPeriod?: string;
555
+ }
556
+ interface CpiSeriesRecord {
557
+ period: string;
558
+ index_value: number;
559
+ }
560
+ interface CpiSeriesResponse {
561
+ region: string;
562
+ region_code: string;
563
+ total: number;
564
+ series: CpiSeriesRecord[];
565
+ }
566
+ interface CpiLatestRegion {
567
+ region?: string | null;
568
+ region_code: string;
569
+ region_name: string;
570
+ period: string;
571
+ index_value: number;
572
+ }
573
+ interface CpiLatestResponse {
574
+ latest_quarter: string;
575
+ regions: CpiLatestRegion[];
576
+ }
577
+ interface CashRateCurrentResponse {
578
+ date: string;
579
+ cash_rate: number;
580
+ cash_rate_pct: number;
581
+ change_bps: number;
582
+ action: string;
583
+ }
584
+ interface CashRateSeriesParams extends RequestOptions {
585
+ fromDate?: string;
586
+ toDate?: string;
587
+ changesOnly?: boolean;
588
+ }
589
+ interface CashRateSeriesRecord {
590
+ date: string;
591
+ cash_rate: number;
592
+ cash_rate_pct: number;
593
+ change_bps: number;
594
+ action: string;
595
+ }
596
+ interface CashRateSeriesResponse {
597
+ total: number;
598
+ series: CashRateSeriesRecord[];
599
+ }
600
+
601
+ /**
602
+ * Client for the Economics API domain.
603
+ *
604
+ * ```ts
605
+ * const factor = await client.economics.cpiFactor({ fromPeriod: '2021-Q3' });
606
+ * const adjusted = await client.economics.cpiAdjust({ value: 550 });
607
+ * const rate = await client.economics.cashRate();
608
+ * ```
609
+ */
610
+ declare class EconomicsClient {
611
+ private readonly http;
612
+ /** @internal */
613
+ constructor(http: HttpClient);
614
+ /**
615
+ * Get CPI adjustment factor between two periods.
616
+ *
617
+ * `GET /v1/economics/cpi/factor`
618
+ */
619
+ cpiFactor(params: CpiFactorParams): Promise<CpiFactorResponse>;
620
+ /**
621
+ * Adjust a dollar value for CPI inflation.
622
+ *
623
+ * `GET /v1/economics/cpi/adjust`
624
+ */
625
+ cpiAdjust(params: CpiAdjustParams): Promise<CpiAdjustResponse>;
626
+ /**
627
+ * Get CPI index time series for a region.
628
+ *
629
+ * `GET /v1/economics/cpi/series`
630
+ */
631
+ cpiSeries(params?: CpiSeriesParams): Promise<CpiSeriesResponse>;
632
+ /**
633
+ * Get latest CPI index values for all regions.
634
+ *
635
+ * `GET /v1/economics/cpi/latest`
636
+ */
637
+ cpiLatest(options?: RequestOptions): Promise<CpiLatestResponse>;
638
+ /**
639
+ * Get current RBA cash rate.
640
+ *
641
+ * `GET /v1/economics/cash-rate`
642
+ */
643
+ cashRate(options?: RequestOptions): Promise<CashRateCurrentResponse>;
644
+ /**
645
+ * Get RBA cash rate time series.
646
+ *
647
+ * `GET /v1/economics/cash-rate/series`
648
+ */
649
+ cashRateSeries(params?: CashRateSeriesParams): Promise<CashRateSeriesResponse>;
650
+ }
651
+
418
652
  interface SoldPropertyRecord {
419
653
  address_key?: string | null;
420
654
  property_type?: string | null;
@@ -476,6 +710,79 @@ interface SoldSearchParams extends RequestOptions {
476
710
  interface SoldPropertiesResponse {
477
711
  results: SoldPropertyRecord[];
478
712
  }
713
+ interface PropertySummaryRecord {
714
+ address_key: string;
715
+ property_type?: string | null;
716
+ beds?: number | null;
717
+ baths?: number | null;
718
+ parking?: number | null;
719
+ lot_size?: number | null;
720
+ floor_area?: number | null;
721
+ build_reno_date?: string | null;
722
+ last_updated?: string | null;
723
+ }
724
+ interface PropertySummaryParams extends RequestOptions {
725
+ /** Canonical HTAG address key. */
726
+ addressKey: string;
727
+ }
728
+ interface PropertySummaryResponse {
729
+ results: PropertySummaryRecord[];
730
+ total: number;
731
+ }
732
+ interface PropertyEstimatesRecord {
733
+ address_key: string;
734
+ price_estimate?: number | null;
735
+ rent_estimate?: number | null;
736
+ last_sold_date?: string | null;
737
+ last_sold_price?: number | null;
738
+ last_rented_date?: string | null;
739
+ last_rented_price?: number | null;
740
+ last_updated?: string | null;
741
+ }
742
+ interface PropertyEstimatesParams extends RequestOptions {
743
+ /** Canonical HTAG address key. */
744
+ addressKey: string;
745
+ /** CMA methodology (default "IA" for index-adjusted). */
746
+ cmaMethod?: string;
747
+ }
748
+ interface PropertyEstimatesResponse {
749
+ results: PropertyEstimatesRecord[];
750
+ total: number;
751
+ }
752
+ interface PropertyMarketRecord {
753
+ address_key: string;
754
+ rental_percentage?: number | null;
755
+ years_to_own?: number | null;
756
+ hold_period?: number | null;
757
+ ownership?: string | null;
758
+ last_updated?: string | null;
759
+ }
760
+ interface PropertyMarketParams extends RequestOptions {
761
+ /** Canonical HTAG address key. */
762
+ addressKey: string;
763
+ }
764
+ interface PropertyMarketResponse {
765
+ results: PropertyMarketRecord[];
766
+ total: number;
767
+ }
768
+ interface PropertyAvmRecord {
769
+ address_key?: string | null;
770
+ predicted_price?: number | null;
771
+ low_predicted?: number | null;
772
+ high_predicted?: number | null;
773
+ confidence?: string | null;
774
+ segment?: string | null;
775
+ }
776
+ interface PropertyAvmParams extends RequestOptions {
777
+ /** One or more HTAG address keys. */
778
+ addressKey?: string[];
779
+ /** One or more free-text addresses. */
780
+ address?: string[];
781
+ }
782
+ interface PropertyAvmResponse {
783
+ results: PropertyAvmRecord[];
784
+ total: number;
785
+ }
479
786
 
480
787
  /**
481
788
  * Client for the Property API domain.
@@ -494,6 +801,24 @@ declare class PropertyClient {
494
801
  * `GET /v1/property/sold/search`
495
802
  */
496
803
  soldSearch(params: SoldSearchParams): Promise<SoldPropertiesResponse>;
804
+ /**
805
+ * Retrieve physical property attributes for an address.
806
+ *
807
+ * `GET /v1/property/summary`
808
+ */
809
+ summary(params: PropertySummaryParams): Promise<PropertySummaryResponse>;
810
+ /**
811
+ * Retrieve valuation estimates and transaction history for an address.
812
+ *
813
+ * `GET /v1/property/estimates`
814
+ */
815
+ estimates(params: PropertyEstimatesParams): Promise<PropertyEstimatesResponse>;
816
+ /**
817
+ * Retrieve market position indicators for an address.
818
+ *
819
+ * `GET /v1/property/market`
820
+ */
821
+ market(params: PropertyMarketParams): Promise<PropertyMarketResponse>;
497
822
  }
498
823
 
499
824
  interface MarketSnapshot {
@@ -736,6 +1061,30 @@ interface MarketSnapshotParams extends RequestOptions {
736
1061
  limit?: number;
737
1062
  offset?: number;
738
1063
  }
1064
+ interface MarketSummaryParams extends RequestOptions {
1065
+ level: LevelEnum;
1066
+ areaId: string[];
1067
+ propertyType?: PropertyTypeEnum[];
1068
+ bedrooms?: string;
1069
+ limit?: number;
1070
+ offset?: number;
1071
+ }
1072
+ interface MarketSummaryRecord {
1073
+ area_id?: string | null;
1074
+ period_end?: string | null;
1075
+ property_type?: string | null;
1076
+ bedrooms?: string | null;
1077
+ typical_price?: number | null;
1078
+ rent?: number | null;
1079
+ gross_yield?: number | null;
1080
+ sales?: number | null;
1081
+ annual_sales_volume?: number | null;
1082
+ rentals?: number | null;
1083
+ annual_rental_volume?: number | null;
1084
+ estimated_dwellings?: number | null;
1085
+ adult_population?: number | null;
1086
+ confidence?: string | null;
1087
+ }
739
1088
  interface MarketGrowthCumulativeRecord {
740
1089
  area_id?: string | null;
741
1090
  period_end?: string | null;
@@ -894,6 +1243,7 @@ interface MarketRiskRecord {
894
1243
  madi?: number | null;
895
1244
  gpo_dist?: number | null;
896
1245
  }
1246
+ type MarketSummaryResponse = BaseResponse<MarketSummaryRecord>;
897
1247
  type GrowthCumulativeResponse = BaseResponse<MarketGrowthCumulativeRecord>;
898
1248
  type GrowthAnnualisedResponse = BaseResponse<MarketGrowthAnnualisedRecord>;
899
1249
  type MarketSupplyResponse = BaseResponse<MarketSupplyRecord>;
@@ -965,7 +1315,7 @@ declare class TrendsClient {
965
1315
  /**
966
1316
  * Price history trends.
967
1317
  *
968
- * `GET /internal-api/v1/markets/trends/price`
1318
+ * `GET /v1/markets/trends/price`
969
1319
  */
970
1320
  price(params: TrendsWithBedroomsParams): Promise<PriceResponse>;
971
1321
  /**
@@ -980,30 +1330,18 @@ declare class TrendsClient {
980
1330
  * `GET /v1/markets/trends/yield`
981
1331
  */
982
1332
  yieldHistory(params: TrendsWithBedroomsParams): Promise<YieldResponse>;
983
- /**
984
- * Supply and demand (monthly frequency).
985
- *
986
- * `GET /internal-api/v1/markets/trends/supply-demand`
987
- */
988
- supplyDemand(params: TrendsWithBedroomsParams): Promise<SupplyDemandResponse>;
989
1333
  /**
990
1334
  * Search interest index (quarterly frequency).
991
1335
  *
992
- * `GET /internal-api/v1/markets/trends/search-index`
1336
+ * `GET /v1/markets/trends/search-index`
993
1337
  */
994
1338
  searchIndex(params: TrendsParams): Promise<SearchIndexResponse>;
995
1339
  /**
996
1340
  * Hold period (yearly frequency).
997
1341
  *
998
- * `GET /internal-api/v1/markets/trends/hold-period`
1342
+ * `GET /v1/markets/trends/hold-period`
999
1343
  */
1000
1344
  holdPeriod(params: TrendsParams): Promise<HoldPeriodResponse>;
1001
- /**
1002
- * Performance essentials.
1003
- *
1004
- * `GET /internal-api/v1/markets/trends/performance`
1005
- */
1006
- performance(params: TrendsWithBedroomsParams): Promise<PerformanceResponse>;
1007
1345
  /**
1008
1346
  * Growth rate cycle.
1009
1347
  *
@@ -1046,7 +1384,6 @@ declare class TrendsClient {
1046
1384
  * `GET /v1/markets/trends/vacancy`
1047
1385
  */
1048
1386
  vacancy(params: TrendsParams): Promise<VacancyResponse>;
1049
- private trend;
1050
1387
  private publicTrend;
1051
1388
  }
1052
1389
 
@@ -1054,9 +1391,9 @@ declare class TrendsClient {
1054
1391
  * Client for the Markets API domain.
1055
1392
  *
1056
1393
  * ```ts
1057
- * const snapshots = await client.markets.snapshots({
1394
+ * const summary = await client.markets.summary({
1058
1395
  * level: 'suburb',
1059
- * propertyType: ['house'],
1396
+ * areaId: ['SAL10001'],
1060
1397
  * });
1061
1398
  *
1062
1399
  * const prices = await client.markets.trends.price({
@@ -1072,17 +1409,11 @@ declare class MarketsClient {
1072
1409
  /** @internal */
1073
1410
  constructor(http: HttpClient);
1074
1411
  /**
1075
- * Retrieve market snapshot data with optional filters.
1076
- *
1077
- * `GET /internal-api/v1/markets/snapshots`
1078
- */
1079
- snapshots(params: SnapshotsParams): Promise<SnapshotsResponse>;
1080
- /**
1081
- * Advanced market query with logical filter expressions.
1412
+ * Core market headline metrics.
1082
1413
  *
1083
- * `POST /internal-api/v1/markets/query`
1414
+ * `GET /v1/markets/summary`
1084
1415
  */
1085
- query(body: AdvancedSearchBody, options?: RequestOptions): Promise<MarketQueryResponse>;
1416
+ summary(params: MarketSummaryParams): Promise<MarketSummaryResponse>;
1086
1417
  /**
1087
1418
  * Cumulative growth metrics.
1088
1419
  *
@@ -1405,9 +1736,11 @@ declare class IntentHubClient {
1405
1736
  }
1406
1737
 
1407
1738
  interface LocalityParams extends RequestOptions {
1739
+ name?: string;
1408
1740
  locPid?: string;
1409
1741
  stateName?: string;
1410
1742
  lgaPid?: string;
1743
+ postcode?: string;
1411
1744
  limit?: number;
1412
1745
  offset?: number;
1413
1746
  }
@@ -1424,6 +1757,7 @@ interface LocalityResponse {
1424
1757
  results: LocalityRecord[];
1425
1758
  }
1426
1759
  interface LgaParams extends RequestOptions {
1760
+ name?: string;
1427
1761
  stateName?: string;
1428
1762
  lgaPid?: string;
1429
1763
  limit?: number;
@@ -1439,12 +1773,207 @@ interface LgaResponse {
1439
1773
  total: number;
1440
1774
  results: LgaRecord[];
1441
1775
  }
1776
+ interface ConcordanceSa2ToLocalityParams extends RequestOptions {
1777
+ sa2Code: string;
1778
+ }
1779
+ interface ConcordanceLocalityWithWeightsRecord {
1780
+ loc_pid: string;
1781
+ name: string;
1782
+ postcode?: string | null;
1783
+ state_pid: string;
1784
+ area_perc_sa2: number;
1785
+ area_perc_sal: number;
1786
+ }
1787
+ interface Sa2ToLocalityResponse {
1788
+ sa2_code: string;
1789
+ sa2_name: string;
1790
+ sa3_name?: string | null;
1791
+ sa4_name?: string | null;
1792
+ gcc_name?: string | null;
1793
+ total: number;
1794
+ results: ConcordanceLocalityWithWeightsRecord[];
1795
+ }
1796
+ interface ConcordanceLocalityToSa2Params extends RequestOptions {
1797
+ locPid: string;
1798
+ }
1799
+ interface Sa2Record {
1800
+ sa2_code: string;
1801
+ sa2_name: string;
1802
+ sa3_name?: string | null;
1803
+ sa4_name?: string | null;
1804
+ gcc_name?: string | null;
1805
+ area_perc_sal: number;
1806
+ area_perc_sa2: number;
1807
+ }
1808
+ interface LocalityToSa2Response {
1809
+ loc_pid: string;
1810
+ name: string;
1811
+ total: number;
1812
+ results: Sa2Record[];
1813
+ }
1814
+ interface ConcordanceLgaCodeToLgaParams extends RequestOptions {
1815
+ lgaCode: string;
1816
+ }
1817
+ interface LgaCodeToLgaResponse {
1818
+ lga_code: string;
1819
+ lga_pid: string;
1820
+ lga_name: string;
1821
+ state_pid: string;
1822
+ }
1823
+ interface ConcordancePostcodeToLocalityParams extends RequestOptions {
1824
+ postcode: string;
1825
+ }
1826
+ interface ConcordanceLocalityRecord {
1827
+ loc_pid: string;
1828
+ name: string;
1829
+ postcode?: string | null;
1830
+ state_pid: string;
1831
+ }
1832
+ interface PostcodeToLocalityResponse {
1833
+ postcode: string;
1834
+ total: number;
1835
+ results: ConcordanceLocalityRecord[];
1836
+ }
1837
+ interface ConcordanceLocalityToLgaParams extends RequestOptions {
1838
+ locPid: string;
1839
+ }
1840
+ interface ConcordanceLgaRecord {
1841
+ lga_pid: string;
1842
+ lga_name: string;
1843
+ state_pid: string;
1844
+ }
1845
+ interface LocalityToLgaResponse {
1846
+ loc_pid: string;
1847
+ name: string;
1848
+ total: number;
1849
+ results: ConcordanceLgaRecord[];
1850
+ }
1851
+ interface ConcordanceLgaToLocalitiesParams extends RequestOptions {
1852
+ lgaPid: string;
1853
+ }
1854
+ interface LgaToLocalitiesResponse {
1855
+ lga_pid: string;
1856
+ lga_name: string;
1857
+ total: number;
1858
+ results: ConcordanceLocalityRecord[];
1859
+ }
1860
+ interface ConcordanceSalToLocalityParams extends RequestOptions {
1861
+ salCode: string;
1862
+ }
1863
+ interface SalToLocalityResponse {
1864
+ sal_code_2021: string;
1865
+ loc_pid: string;
1866
+ name: string;
1867
+ postcode?: string | null;
1868
+ state_pid?: string | null;
1869
+ }
1442
1870
 
1443
1871
  declare class ReferenceClient {
1444
1872
  private readonly http;
1445
1873
  constructor(http: HttpClient);
1446
1874
  locality(params: LocalityParams): Promise<LocalityResponse>;
1447
1875
  lga(params: LgaParams): Promise<LgaResponse>;
1876
+ concordanceSa2ToLocality(params: ConcordanceSa2ToLocalityParams): Promise<Sa2ToLocalityResponse>;
1877
+ concordanceLocalityToSa2(params: ConcordanceLocalityToSa2Params): Promise<LocalityToSa2Response>;
1878
+ concordanceLgaCodeToLga(params: ConcordanceLgaCodeToLgaParams): Promise<LgaCodeToLgaResponse>;
1879
+ concordancePostcodeToLocality(params: ConcordancePostcodeToLocalityParams): Promise<PostcodeToLocalityResponse>;
1880
+ concordanceLocalityToLga(params: ConcordanceLocalityToLgaParams): Promise<LocalityToLgaResponse>;
1881
+ concordanceLgaToLocalities(params: ConcordanceLgaToLocalitiesParams): Promise<LgaToLocalitiesResponse>;
1882
+ concordanceSalToLocality(params: ConcordanceSalToLocalityParams): Promise<SalToLocalityResponse>;
1883
+ }
1884
+
1885
+ /**
1886
+ * Internal API namespace — methods requiring `internal_api` scope.
1887
+ *
1888
+ * All methods route to `/internal-api/v1/*` and will return 403 for
1889
+ * API keys that do not carry the `internal_api` scope.
1890
+ *
1891
+ * Access via `client.internal`:
1892
+ *
1893
+ * ```ts
1894
+ * const insights = await client.internal.address.insights({ address: '100 George St Sydney' });
1895
+ * const snapshots = await client.internal.markets.snapshots({ level: 'suburb', propertyType: ['house'] });
1896
+ * ```
1897
+ */
1898
+
1899
+ declare class InternalAddressClient {
1900
+ private readonly http;
1901
+ /** @internal */
1902
+ constructor(http: HttpClient);
1903
+ /**
1904
+ * Search for addresses matching a free-text query.
1905
+ *
1906
+ * `GET /internal-api/v1/address/search`
1907
+ */
1908
+ search(params: AddressSearchParams): Promise<AddressSearchResponse>;
1909
+ /**
1910
+ * Retrieve detailed insights for one or more addresses.
1911
+ *
1912
+ * `GET /internal-api/v1/address/insights`
1913
+ */
1914
+ insights(params: AddressInsightsParams): Promise<AddressInsightsResponse>;
1915
+ }
1916
+ declare class InternalPropertyClient {
1917
+ private readonly http;
1918
+ /** @internal */
1919
+ constructor(http: HttpClient);
1920
+ /**
1921
+ * Retrieve automated property valuations (AVM).
1922
+ *
1923
+ * `GET /internal-api/v1/property/avm`
1924
+ */
1925
+ avm(params: PropertyAvmParams): Promise<PropertyAvmResponse>;
1926
+ }
1927
+ declare class InternalTrendsClient {
1928
+ private readonly http;
1929
+ /** @internal */
1930
+ constructor(http: HttpClient);
1931
+ /**
1932
+ * Supply and demand (monthly frequency).
1933
+ *
1934
+ * `GET /internal-api/v1/markets/trends/supply-demand`
1935
+ */
1936
+ supplyDemand(params: TrendsWithBedroomsParams): Promise<SupplyDemandResponse>;
1937
+ /**
1938
+ * Performance essentials.
1939
+ *
1940
+ * `GET /internal-api/v1/markets/trends/performance`
1941
+ */
1942
+ performance(params: TrendsWithBedroomsParams): Promise<PerformanceResponse>;
1943
+ }
1944
+ declare class InternalMarketsClient {
1945
+ private readonly http;
1946
+ /** Sub-client for internal trend endpoints. */
1947
+ readonly trends: InternalTrendsClient;
1948
+ /** @internal */
1949
+ constructor(http: HttpClient);
1950
+ /**
1951
+ * Retrieve market snapshot data with optional filters.
1952
+ *
1953
+ * `GET /internal-api/v1/markets/snapshots`
1954
+ */
1955
+ snapshots(params: SnapshotsParams): Promise<SnapshotsResponse>;
1956
+ /**
1957
+ * Advanced market query with logical filter expressions.
1958
+ *
1959
+ * `POST /internal-api/v1/markets/query`
1960
+ */
1961
+ query(body: AdvancedSearchBody, options?: RequestOptions): Promise<MarketQueryResponse>;
1962
+ }
1963
+ /**
1964
+ * Namespace for internal-API methods requiring `internal_api` scope.
1965
+ *
1966
+ * Access via `client.internal`.
1967
+ */
1968
+ declare class InternalNamespace {
1969
+ /** Internal address endpoints (search, insights). */
1970
+ readonly address: InternalAddressClient;
1971
+ /** Internal property endpoints (AVM). */
1972
+ readonly property: InternalPropertyClient;
1973
+ /** Internal market endpoints (snapshots, query, trends). */
1974
+ readonly markets: InternalMarketsClient;
1975
+ /** @internal */
1976
+ constructor(http: HttpClient);
1448
1977
  }
1449
1978
 
1450
1979
  /**
@@ -1458,7 +1987,7 @@ declare class ReferenceClient {
1458
1987
  * environment: 'prod',
1459
1988
  * });
1460
1989
  *
1461
- * const results = await client.address.search({ q: '100 George St Sydney' });
1990
+ * const results = await client.address.geocode({ address: '100 George St Sydney' });
1462
1991
  * ```
1463
1992
  */
1464
1993
  declare class HtAgApiClient {
@@ -1466,6 +1995,10 @@ declare class HtAgApiClient {
1466
1995
  readonly address: AddressClient;
1467
1996
  /** AI-powered property investment agents. */
1468
1997
  readonly agents: AgentsClient;
1998
+ /** Demographics: census medians, business activity, healthcare. */
1999
+ readonly demographics: DemographicsClient;
2000
+ /** CPI adjustment utilities and RBA cash rate data. */
2001
+ readonly economics: EconomicsClient;
1469
2002
  /** Sold property search. */
1470
2003
  readonly property: PropertyClient;
1471
2004
  /** Market snapshots, advanced queries and time-series trends. */
@@ -1474,6 +2007,8 @@ declare class HtAgApiClient {
1474
2007
  readonly intentHub: IntentHubClient;
1475
2008
  /** Reference data: localities and LGAs. */
1476
2009
  readonly reference: ReferenceClient;
2010
+ /** Internal API methods (requires `internal_api` scope). */
2011
+ readonly internal: InternalNamespace;
1477
2012
  constructor(options: HtAgClientOptions);
1478
2013
  }
1479
2014
 
@@ -1534,4 +2069,4 @@ declare class ServerError extends HtAgError {
1534
2069
  });
1535
2070
  }
1536
2071
 
1537
- export { AddressClient, type AddressInsightsParams, type AddressInsightsResponse, type AddressRecord, type AddressSearchParams, type AddressSearchResponse, type AddressSearchResult, type AdvancedSearchBody, type AgentExecuteResponse, type AgentInfo, type AgentInput, type AgentJobStatus, type AgentJobSubmission, type AgentListResponse, AgentsClient, AuthenticationError, type BaseResponse, type BatchStandardiseParams, type BatchStandardiseResponse, type ClassifiedEvent, type ClearanceRateResponse, type ClearanceRateTrendRecord, type CreateIntegrationParams, type CreateSubscriptionParams, type DaysOnMarketResponse, type DaysOnMarketTrendRecord, type DemandLongSlopeResponse, type DemandProfileOut, type DemandProfileResponse, type DemandShortSlopeResponse, type DemographicsParams, type DemographicsRecord, type DemographicsResponse, type EnvironmentParams, type EnvironmentRecord, type EnvironmentResponse, type EssentialsOut, type EventCategory, type EventType, type FSDMonthlyOut, type FSDQuarterlyOut, type FSDYearlyOut, type GRCOut, type GeocodeParams, type GeocodeRecord, type GeocodeResponse, type GrowthAnnualisedResponse, type GrowthCumulativeResponse, type GrowthRatesResponse, type HoldPeriodResponse, HtAgApiClient, type HtAgClientOptions, HtAgError, type Integration, type IntegrationStatus, type IntegrationType, IntentHubClient, type InventoryTrendRecord, type InventoryTrendResponse, type LevelEnum, type LgaParams, type LgaRecord, type LgaResponse, type LocalityParams, type LocalityRecord, type LocalityResponse, type LogicNode, type MarketCycleRecord, type MarketCycleResponse, type MarketDemandLongSlopeRecord, type MarketDemandRecord, type MarketDemandResponse, type MarketDemandShortSlopeRecord, type MarketFundamentalsRecord, type MarketFundamentalsResponse, type MarketGrowthAnnualisedRecord, type MarketGrowthCumulativeRecord, type MarketQueryParams, type MarketQueryResponse, type MarketRiskRecord, type MarketRiskResponse, type MarketScoresRecord, type MarketScoresResponse, type MarketSnapshot, type MarketSnapshotParams, type MarketSupplyLongSlopeRecord, type MarketSupplyRecord, type MarketSupplyResponse, type MarketSupplyShortSlopeRecord, MarketsClient, type PaginatedEvents, type PerformanceResponse, type PriceHistoryOut, type PriceResponse, PropertyClient, type PropertyTypeEnum, type QueryEventsParams, RateLimitError, ReferenceClient, type RentHistoryOut, type RentResponse, type RequestOptions, type ResolvedConfig, type SearchIndexResponse, type Sentiment, ServerError, type SnapshotsParams, type SnapshotsResponse, type SoldPropertiesResponse, type SoldPropertyRecord, type SoldSearchParams, type SourceType, type StandardisedAddress, type StockOnMarketResponse, type StockOnMarketTrendRecord, type SubmitEventParams, type Subscription, type SupplyDemandResponse, type SupplyLongSlopeResponse, type SupplyShortSlopeResponse, type TagInfo, type TestResult, TrendsClient, type TrendsParams, type TrendsWithBedroomsParams, type UpdateIntegrationParams, type UpdateSubscriptionParams, type Urgency, type VacancyResponse, type VacancyTrendRecord, ValidationError, type YieldHistoryOut, type YieldResponse };
2072
+ export { AddressClient, type AddressInsightsParams, type AddressInsightsResponse, type AddressRecord, type AddressSearchParams, type AddressSearchResponse, type AddressSearchResult, type AdvancedSearchBody, type AgentExecuteResponse, type AgentInfo, type AgentInput, type AgentJobStatus, type AgentJobSubmission, type AgentListResponse, AgentsClient, AuthenticationError, type BaseResponse, type BatchStandardiseParams, type BatchStandardiseResponse, type BusinessActivityEmployment, type BusinessActivityParams, type BusinessActivityResponse, type BusinessActivityTurnover, type CashRateCurrentResponse, type CashRateSeriesParams, type CashRateSeriesRecord, type CashRateSeriesResponse, type CensusMediansCpiAdjustment, type CensusMediansHousingCosts, type CensusMediansIncome, type CensusMediansParams, type CensusMediansResponse, type ClassifiedEvent, type ClearanceRateResponse, type ClearanceRateTrendRecord, type ConcordanceLgaCodeToLgaParams, type ConcordanceLgaRecord, type ConcordanceLgaToLocalitiesParams, type ConcordanceLocalityRecord, type ConcordanceLocalityToLgaParams, type ConcordanceLocalityToSa2Params, type ConcordanceLocalityWithWeightsRecord, type ConcordancePostcodeToLocalityParams, type ConcordanceSa2ToLocalityParams, type ConcordanceSalToLocalityParams, type CpiAdjustParams, type CpiAdjustResponse, type CpiFactorParams, type CpiFactorResponse, type CpiLatestRegion, type CpiLatestResponse, type CpiSeriesParams, type CpiSeriesRecord, type CpiSeriesResponse, type CreateIntegrationParams, type CreateSubscriptionParams, type DaysOnMarketResponse, type DaysOnMarketTrendRecord, type DemandLongSlopeResponse, type DemandProfileOut, type DemandProfileResponse, type DemandShortSlopeResponse, DemographicsClient, type DemographicsParams, type DemographicsRecord, type DemographicsResponse, EconomicsClient, type EnvironmentParams, type EnvironmentRecord, type EnvironmentResponse, type EssentialsOut, type EventCategory, type EventType, type FSDMonthlyOut, type FSDQuarterlyOut, type FSDYearlyOut, type GRCOut, type GeocodeParams, type GeocodeRecord, type GeocodeResponse, type GrowthAnnualisedResponse, type GrowthCumulativeResponse, type GrowthRatesResponse, type HealthcareParams, type HealthcareResponse, type HoldPeriodResponse, type HospitalRecord, HtAgApiClient, type HtAgClientOptions, HtAgError, type Integration, type IntegrationStatus, type IntegrationType, IntentHubClient, InternalNamespace, type InventoryTrendRecord, type InventoryTrendResponse, type LevelEnum, type LgaCodeToLgaResponse, type LgaParams, type LgaRecord, type LgaResponse, type LgaToLocalitiesResponse, type LocalityParams, type LocalityRecord, type LocalityResponse, type LocalityToLgaResponse, type LocalityToSa2Response, type LogicNode, type MarketCycleRecord, type MarketCycleResponse, type MarketDemandLongSlopeRecord, type MarketDemandRecord, type MarketDemandResponse, type MarketDemandShortSlopeRecord, type MarketFundamentalsRecord, type MarketFundamentalsResponse, type MarketGrowthAnnualisedRecord, type MarketGrowthCumulativeRecord, type MarketQueryParams, type MarketQueryResponse, type MarketRiskRecord, type MarketRiskResponse, type MarketScoresRecord, type MarketScoresResponse, type MarketSnapshot, type MarketSnapshotParams, type MarketSummaryParams, type MarketSummaryRecord, type MarketSummaryResponse, type MarketSupplyLongSlopeRecord, type MarketSupplyRecord, type MarketSupplyResponse, type MarketSupplyShortSlopeRecord, MarketsClient, type PaginatedEvents, type PerformanceResponse, type PostcodeToLocalityResponse, type PriceHistoryOut, type PriceResponse, type PropertyAvmParams, type PropertyAvmRecord, type PropertyAvmResponse, PropertyClient, type PropertyEstimatesParams, type PropertyEstimatesRecord, type PropertyEstimatesResponse, type PropertyMarketParams, type PropertyMarketRecord, type PropertyMarketResponse, type PropertySummaryParams, type PropertySummaryRecord, type PropertySummaryResponse, type PropertyTypeEnum, type QueryEventsParams, RateLimitError, ReferenceClient, type RentHistoryOut, type RentResponse, type RequestOptions, type ResolvedConfig, type Sa2Record, type Sa2ToLocalityResponse, type SalToLocalityResponse, type SchoolRecord, type SchoolsParams, type SchoolsResponse, type SearchIndexResponse, type Sentiment, ServerError, type SnapshotsParams, type SnapshotsResponse, type SoldPropertiesResponse, type SoldPropertyRecord, type SoldSearchParams, type SourceType, type StandardisedAddress, type StockOnMarketResponse, type StockOnMarketTrendRecord, type SubmitEventParams, type Subscription, type SupplyDemandResponse, type SupplyLongSlopeResponse, type SupplyShortSlopeResponse, type TagInfo, type TestResult, TrendsClient, type TrendsParams, type TrendsWithBedroomsParams, type UpdateIntegrationParams, type UpdateSubscriptionParams, type Urgency, type VacancyResponse, type VacancyTrendRecord, ValidationError, type YieldHistoryOut, type YieldResponse };