@bowmark/web 1.12.0 → 1.12.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bowmark/web",
3
- "version": "1.12.0",
3
+ "version": "1.12.1",
4
4
  "type": "module",
5
5
  "description": "The public client for the Bowmark capability library — real TypeScript for the whole bowmark.* surface, with no Bowmark source on the caller's disk. ZERO runtime dependencies, deliberately and permanently.",
6
6
  "license": "MIT",
@@ -5,8 +5,8 @@
5
5
  // rather than imported. An `import` or `export` at the top level of this file would
6
6
  // turn it into a module and every declaration below would stop being global.
7
7
  //
8
- // Manifest version: 30acf97e882124423eecad144b20c278a6e81b46e839c2063822661efc063ea6
9
- // 32 capabilities, 253 providers, 665 typed functions, 20 refused.
8
+ // Manifest version: 5207ea33354972da803d6974eed73abefc0ae46410767310486fd5116faa04c1
9
+ // 34 capabilities, 257 providers, 674 typed functions, 20 refused.
10
10
  // 51,715 family members, sharing 2 interface(s) — declared once and pointed at, never repeated per member.
11
11
  //
12
12
  // REFUSED — these functions are real and callable, and their declared arguments
@@ -36,6 +36,40 @@
36
36
 
37
37
 
38
38
 
39
+ declare namespace BowmarkCapability_bundles {
40
+ // ── Check whether a set of products can be built and bought right now — the unit's own declarations, verbatim ──
41
+ interface BundleItemAvailability {
42
+ url: string
43
+ ok: boolean
44
+ buildable: boolean
45
+ price: { amount: number; currency: string } | null // integer minor units
46
+ availability: string | null
47
+ reason: string | null
48
+ }
49
+ interface BundleAvailability {
50
+ buildable: boolean
51
+ items: BundleItemAvailability[]
52
+ blocking: string[] // urls of the items stopping the bundle
53
+ totalPrice: { amount: number; currency: string } | null
54
+ warnings: string[]
55
+ }
56
+
57
+ /**
58
+ * Given a list of product page urls, reads each one's price and stock the way
59
+ * `products.getAvailability` does, then reduces the set to one buildable/not-buildable verdict
60
+ * naming whatever is blocking it.
61
+ */
62
+ interface Unit {
63
+ /**
64
+ * Reads every item's product page and returns whether the WHOLE bundle can be built and bought
65
+ * right now — false the moment any one item is out of stock, pre-order, or unreadable, naming
66
+ * which url(s) are blocking it in `blocking`. Never throws on a bad or dead item url; that
67
+ * item is reported as not buildable instead, with its reason.
68
+ */
69
+ checkAvailability(items: { url: string }[]): Promise<BundleAvailability>;
70
+ }
71
+ }
72
+
39
73
  declare namespace BowmarkCapability_cable_railing_quote {
40
74
  // ── Cable railing design quote (materials & mounting options) — the unit's own declarations, verbatim ──
41
75
  type CableRailingMaterial = {
@@ -1707,6 +1741,45 @@ type CallOptions = {
1707
1741
  }
1708
1742
  }
1709
1743
 
1744
+ declare namespace BowmarkCapability_school_shopping_basket {
1745
+ // ── Price a school-supply list across Target and Walmart — the unit's own declarations, verbatim ──
1746
+ interface BasketItemMatch {
1747
+ query: string
1748
+ title: string
1749
+ url: string
1750
+ price: { amount: number; currency: string } // integer minor units
1751
+ }
1752
+ interface RetailerBasket {
1753
+ total: { amount: number; currency: string } | null
1754
+ matched: BasketItemMatch[]
1755
+ unavailable: string[]
1756
+ }
1757
+ interface SchoolShoppingBasket {
1758
+ retailers: { target: RetailerBasket; walmart: RetailerBasket }
1759
+ warnings: string[]
1760
+ }
1761
+ type CallOptions = {
1762
+ timeoutMs?: number // per-provider budget in ms, default 30000, clamped to 1000-55000.
1763
+ // A provider slower than this is DROPPED from the results and
1764
+ // NAMED in warnings — never silently absent
1765
+ }
1766
+
1767
+ /**
1768
+ * Given a list of item queries (a school supply list), fans out to Target and Walmart search,
1769
+ * picks the cheapest in-stock match per item per retailer, and returns each retailer's basket
1770
+ * total plus which items neither retailer has in stock right now.
1771
+ */
1772
+ interface Unit {
1773
+ /**
1774
+ * Prices a multi-item shopping list at Target and Walmart, one basket total per retailer,
1775
+ * naming which items had no in-stock match anywhere. Never throws on one retailer being
1776
+ * unreachable — that retailer's basket is dropped and named in `warnings` instead; throws only
1777
+ * when BOTH retailers failed on every item.
1778
+ */
1779
+ priceList(args: { items: string[] }): Promise<SchoolShoppingBasket>;
1780
+ }
1781
+ }
1782
+
1710
1783
  declare namespace BowmarkCapability_search {
1711
1784
  // ── Web search — the unit's own declarations, verbatim ──
1712
1785
  type SearchResult = {
@@ -2407,6 +2480,57 @@ interface aaMaxCheckedBagsRule {
2407
2480
  }
2408
2481
  }
2409
2482
 
2483
+ declare namespace BowmarkProvider_aauto {
2484
+ // ── 1A Auto — the unit's own declarations, verbatim ──
2485
+ interface AautoSearchProduct {
2486
+ id: string;
2487
+ title: string;
2488
+ brand: string;
2489
+ category: string;
2490
+ price: number;
2491
+ url: string;
2492
+ image: string | null;
2493
+ }
2494
+ interface AautoSearchResult {
2495
+ query: string;
2496
+ /** The site's own reported match count — can exceed products.length. */
2497
+ totalResults: number;
2498
+ products: AautoSearchProduct[];
2499
+ }
2500
+ interface AautoProduct {
2501
+ id: string;
2502
+ title: string;
2503
+ brand: string;
2504
+ category: string;
2505
+ price: number;
2506
+ sku: string | null;
2507
+ inStock: boolean;
2508
+ description: string;
2509
+ image: string | null;
2510
+ url: string;
2511
+ }
2512
+
2513
+ /**
2514
+ * 1A Auto's DIY replacement-parts catalog — search results and one product's real price, stock
2515
+ * and description — read off the live storefront.
2516
+ */
2517
+ interface Unit {
2518
+ /**
2519
+ * Reads 1A Auto's own search-results page for `query` — real price, brand, category and
2520
+ * product URL per row, plus the site's own total-match count. `limit` truncates the first
2521
+ * results page (the site itself paginates; this reads only the first page).
2522
+ */
2523
+ search(query: string, opts?: { limit?: number }): Promise<AautoSearchResult>;
2524
+
2525
+ /**
2526
+ * Reads one product page by the URL search() returns (absolute or a site-relative path) —
2527
+ * title, brand, SKU, price, live stock status and description text. THROWS if the page does
2528
+ * not carry the site's own product data block.
2529
+ */
2530
+ getProduct(url: string): Promise<AautoProduct>;
2531
+ }
2532
+ }
2533
+
2410
2534
  declare namespace BowmarkProvider_abercrombie {
2411
2535
  // ── Abercrombie & Fitch — the unit's own declarations, verbatim ──
2412
2536
  interface abercrombieSizeOption {
@@ -2723,6 +2847,54 @@ interface AjmadisonSearchResult {
2723
2847
  }
2724
2848
  }
2725
2849
 
2850
+ declare namespace BowmarkProvider_allied {
2851
+ // ── Allied Van Lines — the unit's own declarations, verbatim ──
2852
+ interface AlliedSupplyLine {
2853
+ item: string;
2854
+ quantity: number | null;
2855
+ }
2856
+ interface AlliedRoomSupplies {
2857
+ room: string;
2858
+ supplies: AlliedSupplyLine[];
2859
+ }
2860
+ interface AlliedPackingEstimate {
2861
+ totalSupplies: AlliedSupplyLine[];
2862
+ byRoom: AlliedRoomSupplies[];
2863
+ }
2864
+ interface AlliedPackingCalculatorInput {
2865
+ yearsInHome?: "lessThan5" | "5to10" | "over10";
2866
+ cabinetsClosets?: "clutterFree" | "packRat";
2867
+ kitchen?: boolean;
2868
+ pantry?: boolean;
2869
+ diningRoom?: boolean;
2870
+ livingRoom?: boolean;
2871
+ familyRoom?: boolean;
2872
+ homeOffice?: boolean;
2873
+ bedrooms?: number;
2874
+ garageBays?: number;
2875
+ storedAttic?: boolean;
2876
+ storageFacility?: boolean;
2877
+ otherRooms?: number;
2878
+ }
2879
+
2880
+ /**
2881
+ * Runs Allied Van Lines' own Packing Calculator — takes which rooms are moving (no name, email
2882
+ * or phone) and returns a real, server-computed whole-house and per-room packing-supply
2883
+ * estimate (cartons, tape, paper). Allied's separate 'quote' flow is a sales-lead form with no
2884
+ * computed price and is out of scope; this is the one part of allied.com that answers a
2885
+ * question with a number.
2886
+ */
2887
+ interface Unit {
2888
+ /**
2889
+ * Allied Van Lines' own Packing Calculator: pass which rooms are moving (kitchen, bedrooms
2890
+ * count, garage bays, etc — no identity required) and get back a real per-room and whole-house
2891
+ * estimate of boxes, tape and paper. At least one room must be set, matching the site's own
2892
+ * validation.
2893
+ */
2894
+ estimatePackingSupplies(input: AlliedPackingCalculatorInput): Promise<AlliedPackingEstimate>;
2895
+ }
2896
+ }
2897
+
2726
2898
  declare namespace BowmarkProvider_alphavantage {
2727
2899
  // ── Alpha Vantage — the unit's own declarations, verbatim ──
2728
2900
  interface AlphavantageSignUpDetails {
@@ -5029,6 +5201,44 @@ interface CaliProductDetail extends CaliProduct {
5029
5201
  }
5030
5202
  }
5031
5203
 
5204
+ declare namespace BowmarkProvider_camelcamelcamel {
5205
+ // ── camelcamelcamel — the unit's own declarations, verbatim ──
5206
+ interface CamelPriceStat {
5207
+ price: number | null;
5208
+ date: string | null;
5209
+ }
5210
+
5211
+ interface CamelPriceTypeStats {
5212
+ lowestEver: CamelPriceStat;
5213
+ highestEver: CamelPriceStat;
5214
+ current: CamelPriceStat;
5215
+ average: number | null;
5216
+ }
5217
+
5218
+ interface CamelPriceHistory {
5219
+ asin: string;
5220
+ productTitle: string;
5221
+ amazon: CamelPriceTypeStats;
5222
+ thirdPartyNew: CamelPriceTypeStats;
5223
+ thirdPartyUsed: CamelPriceTypeStats;
5224
+ chartUrl: string;
5225
+ }
5226
+
5227
+ /**
5228
+ * Independent Amazon price-history tracker — real lowest/highest/current/average price per
5229
+ * item, each dated, so a claimed 'sale' can be checked against what the item actually sold
5230
+ * for.
5231
+ */
5232
+ interface Unit {
5233
+ /**
5234
+ * Reads camelcamelcamel's independently-tracked Amazon price history for one ASIN — the site's
5235
+ * own lowest-ever/highest-ever/current/average figures, each dated, for the Amazon,
5236
+ * 3rd-party-new and 3rd-party-used price types, plus the full-history chart image URL.
5237
+ */
5238
+ getPriceHistory(asinOrUrl: string): Promise<CamelPriceHistory>;
5239
+ }
5240
+ }
5241
+
5032
5242
  declare namespace BowmarkProvider_cancer {
5033
5243
  // ── National Cancer Institute (cancer.gov) — the unit's own declarations, verbatim ──
5034
5244
  type cancerCenterDesignation =
@@ -8776,10 +8986,11 @@ interface fredObservations {
8776
8986
  seriesId: string;
8777
8987
  /** The transform FRED reports having applied: "lin" (none), "pc1", "pch", … */
8778
8988
  units: string;
8779
- observationStart: string;
8780
- observationEnd: string;
8781
- realtimeStart: string;
8782
- realtimeEnd: string;
8989
+ observationStart: string | null;
8990
+ observationEnd: string | null;
8991
+ /** null: the public CSV has no vintage envelope. */
8992
+ realtimeStart: string | null;
8993
+ realtimeEnd: string | null;
8783
8994
  count: number;
8784
8995
  observations: fredObservation[];
8785
8996
  }
@@ -8831,10 +9042,10 @@ interface fredObservations {
8831
9042
  * `pch`, `chg`, `log` and the rest of FRED's ten codes), and `frequency` with
8832
9043
  * `aggregationMethod` collapses a series to a coarser period (`{ frequency: "a",
8833
9044
  * aggregationMethod: "avg" }` turns the monthly unemployment rate into annual averages). The
8834
- * result carries the transform FRED reports having applied and the vintage it served, so a
8835
- * caller can tell what they actually got. This is the function to call once
8836
- * `searchSeries`/`getSeriesInfo` has identified the right series id — e.g. A191RL1Q225SBEA for
8837
- * the US real GDP growth rate.
9045
+ * result carries the applied transform and the served row bounds; its realtime fields are
9046
+ * `null` because the keyless CSV publishes no vintage envelope. This is the function to call
9047
+ * once `searchSeries`/`getSeriesInfo` has identified the right series id — e.g.
9048
+ * A191RL1Q225SBEA for the US real GDP growth rate.
8838
9049
  */
8839
9050
  getSeriesObservations(args: string | { seriesId: string; from?: string; to?: string; units?: string; frequency?: string; aggregationMethod?: string }): Promise<fredObservations>;
8840
9051
 
@@ -9405,6 +9616,37 @@ interface GlassesusaProduct {
9405
9616
  }
9406
9617
  }
9407
9618
 
9619
+ declare namespace BowmarkProvider_goodway {
9620
+ // ── Goodway Technologies — the unit's own declarations, verbatim ──
9621
+ interface GoodwayProductSummary {
9622
+ sku: string;
9623
+ title: string;
9624
+ url: string;
9625
+ price: string | null; // null = call for price / quote required
9626
+ }
9627
+ interface GoodwayProduct extends GoodwayProductSummary {
9628
+ purchaseType: "buy" | "quote";
9629
+ }
9630
+
9631
+ /**
9632
+ * Goodway's own pressure-washer catalog — real listed prices, or a quote-required flag for
9633
+ * call-for-price units, and the site's own product page as the buy/quote handoff.
9634
+ */
9635
+ interface Unit {
9636
+ /**
9637
+ * Reads Goodway's pressure-washer catalog grid — every listed model, its SKU, its live price
9638
+ * (or null if quote-required) and its product page.
9639
+ */
9640
+ searchProducts(): Promise<GoodwayProductSummary[]>;
9641
+
9642
+ /**
9643
+ * Reads one product's detail page for its real current price and whether it buys online or
9644
+ * needs a written quote.
9645
+ */
9646
+ getProduct(arg0: { slug: string }): Promise<GoodwayProduct>;
9647
+ }
9648
+ }
9649
+
9408
9650
  declare namespace BowmarkProvider_google_flights {
9409
9651
  // ── Google Flights — the unit's own declarations, verbatim ──
9410
9652
  interface GoogleFlightQuery {
@@ -11053,6 +11295,10 @@ interface HobieModelSummary {
11053
11295
  name: string;
11054
11296
  url: string;
11055
11297
  }
11298
+ interface HobieKayakModelList {
11299
+ total_models: number;
11300
+ models: HobieModelSummary[];
11301
+ }
11056
11302
  interface HobieModelColor {
11057
11303
  color: string;
11058
11304
  upc: string;
@@ -11103,6 +11349,12 @@ interface HobieLocalAvailability {
11103
11349
  */
11104
11350
  listModels(): Promise<HobieModelSummary[]>;
11105
11351
 
11352
+ /**
11353
+ * Returns Hobie's live kayak-model list plus total_models. To answer a count request, call it
11354
+ * with run; do not infer or paraphrase the count from this description.
11355
+ */
11356
+ listKayakModels(): Promise<HobieKayakModelList>;
11357
+
11106
11358
  /**
11107
11359
  * Reads one model's real buildable colors, each paired with the exact UPC the local-inventory
11108
11360
  * widget is keyed on, plus the site's own default color.
@@ -21894,6 +22146,9 @@ interface thezebraAutoDriver {
21894
22146
  lastName: string
21895
22147
  dob: string // ISO YYYY-MM-DD — carriers rate on the DATE, not on an age
21896
22148
  email: string
22149
+ ageFirstLicensed?: number // default 16 when omitted
22150
+ violations?: { accidents: number, claims: number, tickets: number } // default a clean record
22151
+ occupation?: string // default "OTHER" — the only two confirmed-valid values are "OTHER" and "ENGINEER"
21897
22152
  }
21898
22153
 
21899
22154
  interface thezebraAutoVehicle {
@@ -22109,26 +22364,30 @@ interface thezebraAutoQuotes {
22109
22364
  * carrier's own monthly and six-month premium, deductible, and the coverage it priced, as The
22110
22365
  * Zebra's auto quote funnel prices them. This is a priced offer for the person asking, NOT the
22111
22366
  * published averages `getStateRates` and its siblings return. Pass `driver` (`firstName`,
22112
- * `lastName`, `dob` ISO YYYY-MM-DD, `email`), one `vehicle` (`year`, `make`, `model` — a model
22113
- * The Zebra does not rate THROWS naming the URL it tried), the 2-letter `state`, a 5-digit
22114
- * `zip`, and `county` (the county the ZIP sits in The Zebra validates it server-side and a
22115
- * missing or wrong county is bounced). **The write binds, the read does not yet**: the
22116
- * GraphQL gateway at `graphql-gateway.production.thezebra.com` accepts the auto seed
22117
- * (`LegacyStartInput.start.currentlyInsured` is the only field Apollo currently exposes on
22118
- * that input), but the results route STILL bounces the session to the homepage with the four
22119
- * fields this function sends. The function throws on the bounce with a message naming the gap;
22120
- * the second required field on `LegacyStartInput` is the next attempt's work, and the rejected
22121
- * probes `helpToday`, `userPurchaseTimeframe`, `hadActiveInsurance`, `residenceOwnership`,
22122
- * `presumedAnswers`, `policyLinkInfo`, `startDate`, `desiredCoverage` are documented in
22123
- * `agents/capability-engineer/instances/vertical-insurance/tools/zebra-auto-quotes/shape-summary.json`
22124
- * (and the e5 clone) so they don't have to be re-derived. **`advertisedCarriers` is not a
22125
- * quote list and must never be read as one**: the results page would carry paid carrier
22126
- * placements alongside real offers, separated by `data-cy="results-card_ad_<carrier>"` (ad)
22127
- * versus `data-cy="results-card_q2b_<carrier>"` (real offer), and the advertised names are
22128
- * returned in their own field with no price attached. Every premium is USD and
22129
- * `monthlyPremium` is per MONTH the card's own period is checked rather than assumed, and a
22130
- * card printing any other term THROWS instead of relabelling a figure. `totalPremium` is the
22131
- * site's own whole-term number and is never divided out of the monthly one.
22367
+ * `lastName`, `dob` ISO YYYY-MM-DD, `email`, and optionally
22368
+ * `ageFirstLicensed`/`violations`/`occupation` each defaults to a clean-record placeholder
22369
+ * when omitted), one `vehicle` (`year`, `make`, `model` a model The Zebra does not rate
22370
+ * THROWS naming the URL it tried), the 2-letter `state`, a 5-digit `zip`, and `county` (the
22371
+ * county the ZIP sits in — The Zebra validates it server-side and a missing or wrong county is
22372
+ * bounced). **The write always binds** the GraphQL gateway at
22373
+ * `graphql-gateway.production.thezebra.com` accepts the seed and returns 200 but AS OF
22374
+ * 2026-08-27 the results route was bouncing the session to the homepage because
22375
+ * `LegacyDriverInput` and `LegacyVehicleInput` accept more fields than an earlier version of
22376
+ * this function sent; the measured field map (every field on both inputs, which are confirmed
22377
+ * valid, which are still unmeasured) lives in
22378
+ * `agents/richard/problems/thezebra-getautoquotes-broken.md` and is not re-derived here. The
22379
+ * function throws on a bounce with a message naming the redirect target; `vehicle.submodel`,
22380
+ * `driver.education` and `driver.creditScore` remain unsent because no valid value for any of
22381
+ * them is confirmed yet sending a guess cannot break the write (all three are nullable) but
22382
+ * a wrong guess would look like a fix without being one, so they stay out until a live probe
22383
+ * confirms a value. **`advertisedCarriers` is not a quote list and must never be read as
22384
+ * one**: the results page would carry paid carrier placements alongside real offers, separated
22385
+ * by `data-cy="results-card_ad_<carrier>"` (ad) versus `data-cy="results-card_q2b_<carrier>"`
22386
+ * (real offer), and the advertised names are returned in their own field with no price
22387
+ * attached. Every premium is USD and `monthlyPremium` is per MONTH — the card's own period is
22388
+ * checked rather than assumed, and a card printing any other term THROWS instead of
22389
+ * relabelling a figure. `totalPremium` is the site's own whole-term number and is never
22390
+ * divided out of the monthly one.
22132
22391
  */
22133
22392
  getAutoQuotes(query: thezebraAutoQuotesQuery): Promise<thezebraAutoQuotes>;
22134
22393
  }
@@ -24670,9 +24929,11 @@ interface ShopifyCart {
24670
24929
  * string, so there is no camelCase alias to be uncertain about. */
24671
24930
  interface BowmarkProviders {
24672
24931
  aa: BowmarkProvider_aa.Unit;
24932
+ aauto: BowmarkProvider_aauto.Unit;
24673
24933
  abercrombie: BowmarkProvider_abercrombie.Unit;
24674
24934
  aiper: BowmarkProvider_aiper.Unit;
24675
24935
  ajmadison: BowmarkProvider_ajmadison.Unit;
24936
+ allied: BowmarkProvider_allied.Unit;
24676
24937
  alphavantage: BowmarkProvider_alphavantage.Unit;
24677
24938
  americanstandard: BowmarkProvider_americanstandard.Unit;
24678
24939
  amramp: BowmarkProvider_amramp.Unit;
@@ -24711,6 +24972,7 @@ interface BowmarkProviders {
24711
24972
  bykoket: BowmarkProvider_bykoket.Unit;
24712
24973
  byltbasics: BowmarkProvider_byltbasics.Unit;
24713
24974
  califloors: BowmarkProvider_califloors.Unit;
24975
+ camelcamelcamel: BowmarkProvider_camelcamelcamel.Unit;
24714
24976
  cancer: BowmarkProvider_cancer.Unit;
24715
24977
  capitalbrands: BowmarkProvider_capitalbrands.Unit;
24716
24978
  caraway: BowmarkProvider_caraway.Unit;
@@ -24762,6 +25024,7 @@ interface BowmarkProviders {
24762
25024
  geico: BowmarkProvider_geico.Unit;
24763
25025
  github: BowmarkProvider_github.Unit;
24764
25026
  glassesusa: BowmarkProvider_glassesusa.Unit;
25027
+ goodway: BowmarkProvider_goodway.Unit;
24765
25028
  google_flights: BowmarkProvider_google_flights.Unit;
24766
25029
  gotchacovered: BowmarkProvider_gotchacovered.Unit;
24767
25030
  grainger: BowmarkProvider_grainger.Unit;
@@ -76645,6 +76908,7 @@ interface BowmarkProviders {
76645
76908
  * `run()` script, and the Proxy over HTTP in a caller's own process. They are
76646
76909
  * generated once precisely so those two cannot drift. */
76647
76910
  interface BowmarkLibrary {
76911
+ bundles: BowmarkCapability_bundles.Unit;
76648
76912
  cable_railing_quote: BowmarkCapability_cable_railing_quote.Unit;
76649
76913
  cars: BowmarkCapability_cars.Unit;
76650
76914
  coworking: BowmarkCapability_coworking.Unit;
@@ -76669,6 +76933,7 @@ interface BowmarkLibrary {
76669
76933
  promocodes: BowmarkCapability_promocodes.Unit;
76670
76934
  read: BowmarkCapability_read.Unit;
76671
76935
  restaurant_booking: BowmarkCapability_restaurant_booking.Unit;
76936
+ school_shopping_basket: BowmarkCapability_school_shopping_basket.Unit;
76672
76937
  search: BowmarkCapability_search.Unit;
76673
76938
  sheds: BowmarkCapability_sheds.Unit;
76674
76939
  shipping: BowmarkCapability_shipping.Unit;
@@ -5,14 +5,40 @@
5
5
  // declares no readable argument shape — not an absent one, which is what the
6
6
  // guard fails closed on.
7
7
  //
8
- // Manifest version: 30acf97e882124423eecad144b20c278a6e81b46e839c2063822661efc063ea6
9
- // 647 checked, 20 unchecked.
8
+ // Manifest version: 5207ea33354972da803d6974eed73abefc0ae46410767310486fd5116faa04c1
9
+ // 656 checked, 20 unchecked.
10
10
 
11
11
  import type { ValidatorTable } from "../validate.js";
12
12
 
13
13
  export const VALIDATORS: ValidatorTable = {
14
- "version": "30acf97e882124423eecad144b20c278a6e81b46e839c2063822661efc063ea6",
14
+ "version": "5207ea33354972da803d6974eed73abefc0ae46410767310486fd5116faa04c1",
15
15
  "units": {
16
+ "bundles": {
17
+ "defs": {},
18
+ "functions": {
19
+ "checkAvailability": [
20
+ {
21
+ "name": "items",
22
+ "schema": {
23
+ "k": "array",
24
+ "of": {
25
+ "k": "object",
26
+ "props": [
27
+ {
28
+ "name": "url",
29
+ "schema": {
30
+ "k": "string"
31
+ },
32
+ "optional": false
33
+ }
34
+ ]
35
+ }
36
+ },
37
+ "optional": false
38
+ }
39
+ ]
40
+ }
41
+ },
16
42
  "cable_railing_quote": {
17
43
  "defs": {
18
44
  "CallOptions": {
@@ -1846,6 +1872,32 @@ export const VALIDATORS: ValidatorTable = {
1846
1872
  ]
1847
1873
  }
1848
1874
  },
1875
+ "school_shopping_basket": {
1876
+ "defs": {},
1877
+ "functions": {
1878
+ "priceList": [
1879
+ {
1880
+ "name": "args",
1881
+ "schema": {
1882
+ "k": "object",
1883
+ "props": [
1884
+ {
1885
+ "name": "items",
1886
+ "schema": {
1887
+ "k": "array",
1888
+ "of": {
1889
+ "k": "string"
1890
+ }
1891
+ },
1892
+ "optional": false
1893
+ }
1894
+ ]
1895
+ },
1896
+ "optional": false
1897
+ }
1898
+ ]
1899
+ }
1900
+ },
1849
1901
  "search": {
1850
1902
  "defs": {
1851
1903
  "CallOptions": {
@@ -2409,6 +2461,45 @@ export const VALIDATORS: ValidatorTable = {
2409
2461
  ]
2410
2462
  }
2411
2463
  },
2464
+ "providers.aauto": {
2465
+ "defs": {},
2466
+ "functions": {
2467
+ "search": [
2468
+ {
2469
+ "name": "query",
2470
+ "schema": {
2471
+ "k": "string"
2472
+ },
2473
+ "optional": false
2474
+ },
2475
+ {
2476
+ "name": "opts",
2477
+ "schema": {
2478
+ "k": "object",
2479
+ "props": [
2480
+ {
2481
+ "name": "limit",
2482
+ "schema": {
2483
+ "k": "number"
2484
+ },
2485
+ "optional": true
2486
+ }
2487
+ ]
2488
+ },
2489
+ "optional": true
2490
+ }
2491
+ ],
2492
+ "getProduct": [
2493
+ {
2494
+ "name": "url",
2495
+ "schema": {
2496
+ "k": "string"
2497
+ },
2498
+ "optional": false
2499
+ }
2500
+ ]
2501
+ }
2502
+ },
2412
2503
  "providers.abercrombie": {
2413
2504
  "defs": {
2414
2505
  "abercrombieProductQuery": {
@@ -2759,6 +2850,142 @@ export const VALIDATORS: ValidatorTable = {
2759
2850
  ]
2760
2851
  }
2761
2852
  },
2853
+ "providers.allied": {
2854
+ "defs": {
2855
+ "AlliedPackingCalculatorInput": {
2856
+ "k": "object",
2857
+ "props": [
2858
+ {
2859
+ "name": "yearsInHome",
2860
+ "schema": {
2861
+ "k": "union",
2862
+ "of": [
2863
+ {
2864
+ "k": "literal",
2865
+ "v": "lessThan5"
2866
+ },
2867
+ {
2868
+ "k": "literal",
2869
+ "v": "5to10"
2870
+ },
2871
+ {
2872
+ "k": "literal",
2873
+ "v": "over10"
2874
+ }
2875
+ ]
2876
+ },
2877
+ "optional": true
2878
+ },
2879
+ {
2880
+ "name": "cabinetsClosets",
2881
+ "schema": {
2882
+ "k": "union",
2883
+ "of": [
2884
+ {
2885
+ "k": "literal",
2886
+ "v": "clutterFree"
2887
+ },
2888
+ {
2889
+ "k": "literal",
2890
+ "v": "packRat"
2891
+ }
2892
+ ]
2893
+ },
2894
+ "optional": true
2895
+ },
2896
+ {
2897
+ "name": "kitchen",
2898
+ "schema": {
2899
+ "k": "boolean"
2900
+ },
2901
+ "optional": true
2902
+ },
2903
+ {
2904
+ "name": "pantry",
2905
+ "schema": {
2906
+ "k": "boolean"
2907
+ },
2908
+ "optional": true
2909
+ },
2910
+ {
2911
+ "name": "diningRoom",
2912
+ "schema": {
2913
+ "k": "boolean"
2914
+ },
2915
+ "optional": true
2916
+ },
2917
+ {
2918
+ "name": "livingRoom",
2919
+ "schema": {
2920
+ "k": "boolean"
2921
+ },
2922
+ "optional": true
2923
+ },
2924
+ {
2925
+ "name": "familyRoom",
2926
+ "schema": {
2927
+ "k": "boolean"
2928
+ },
2929
+ "optional": true
2930
+ },
2931
+ {
2932
+ "name": "homeOffice",
2933
+ "schema": {
2934
+ "k": "boolean"
2935
+ },
2936
+ "optional": true
2937
+ },
2938
+ {
2939
+ "name": "bedrooms",
2940
+ "schema": {
2941
+ "k": "number"
2942
+ },
2943
+ "optional": true
2944
+ },
2945
+ {
2946
+ "name": "garageBays",
2947
+ "schema": {
2948
+ "k": "number"
2949
+ },
2950
+ "optional": true
2951
+ },
2952
+ {
2953
+ "name": "storedAttic",
2954
+ "schema": {
2955
+ "k": "boolean"
2956
+ },
2957
+ "optional": true
2958
+ },
2959
+ {
2960
+ "name": "storageFacility",
2961
+ "schema": {
2962
+ "k": "boolean"
2963
+ },
2964
+ "optional": true
2965
+ },
2966
+ {
2967
+ "name": "otherRooms",
2968
+ "schema": {
2969
+ "k": "number"
2970
+ },
2971
+ "optional": true
2972
+ }
2973
+ ]
2974
+ }
2975
+ },
2976
+ "functions": {
2977
+ "estimatePackingSupplies": [
2978
+ {
2979
+ "name": "input",
2980
+ "schema": {
2981
+ "k": "ref",
2982
+ "name": "AlliedPackingCalculatorInput"
2983
+ },
2984
+ "optional": false
2985
+ }
2986
+ ]
2987
+ }
2988
+ },
2762
2989
  "providers.alphavantage": {
2763
2990
  "defs": {},
2764
2991
  "functions": {
@@ -4593,6 +4820,20 @@ export const VALIDATORS: ValidatorTable = {
4593
4820
  ]
4594
4821
  }
4595
4822
  },
4823
+ "providers.camelcamelcamel": {
4824
+ "defs": {},
4825
+ "functions": {
4826
+ "getPriceHistory": [
4827
+ {
4828
+ "name": "asinOrUrl",
4829
+ "schema": {
4830
+ "k": "string"
4831
+ },
4832
+ "optional": false
4833
+ }
4834
+ ]
4835
+ }
4836
+ },
4596
4837
  "providers.cancer": {
4597
4838
  "defs": {},
4598
4839
  "functions": {
@@ -7972,6 +8213,30 @@ export const VALIDATORS: ValidatorTable = {
7972
8213
  ]
7973
8214
  }
7974
8215
  },
8216
+ "providers.goodway": {
8217
+ "defs": {},
8218
+ "functions": {
8219
+ "searchProducts": [],
8220
+ "getProduct": [
8221
+ {
8222
+ "name": "arg0",
8223
+ "schema": {
8224
+ "k": "object",
8225
+ "props": [
8226
+ {
8227
+ "name": "slug",
8228
+ "schema": {
8229
+ "k": "string"
8230
+ },
8231
+ "optional": false
8232
+ }
8233
+ ]
8234
+ },
8235
+ "optional": false
8236
+ }
8237
+ ]
8238
+ }
8239
+ },
7975
8240
  "providers.google_flights": {
7976
8241
  "defs": {
7977
8242
  "GoogleFlightQuery": {
@@ -8944,6 +9209,7 @@ export const VALIDATORS: ValidatorTable = {
8944
9209
  "defs": {},
8945
9210
  "functions": {
8946
9211
  "listModels": [],
9212
+ "listKayakModels": [],
8947
9213
  "listModelColors": [
8948
9214
  {
8949
9215
  "name": "slug",
@@ -20196,6 +20462,50 @@ export const VALIDATORS: ValidatorTable = {
20196
20462
  "k": "string"
20197
20463
  },
20198
20464
  "optional": false
20465
+ },
20466
+ {
20467
+ "name": "ageFirstLicensed",
20468
+ "schema": {
20469
+ "k": "number"
20470
+ },
20471
+ "optional": true
20472
+ },
20473
+ {
20474
+ "name": "violations",
20475
+ "schema": {
20476
+ "k": "object",
20477
+ "props": [
20478
+ {
20479
+ "name": "accidents",
20480
+ "schema": {
20481
+ "k": "number"
20482
+ },
20483
+ "optional": false
20484
+ },
20485
+ {
20486
+ "name": "claims",
20487
+ "schema": {
20488
+ "k": "number"
20489
+ },
20490
+ "optional": false
20491
+ },
20492
+ {
20493
+ "name": "tickets",
20494
+ "schema": {
20495
+ "k": "number"
20496
+ },
20497
+ "optional": false
20498
+ }
20499
+ ]
20500
+ },
20501
+ "optional": true
20502
+ },
20503
+ {
20504
+ "name": "occupation",
20505
+ "schema": {
20506
+ "k": "string"
20507
+ },
20508
+ "optional": true
20199
20509
  }
20200
20510
  ]
20201
20511
  },