@bowmark/web 1.16.0 → 1.16.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/dist/generated/library.d.ts +526 -65
- package/dist/generated/validators.js +334 -3
- package/package.json +1 -1
|
@@ -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:
|
|
9
|
-
//
|
|
8
|
+
// Manifest version: ab1045c2b0a9094f69fd97b6a8be00087ae7b8871ef4e274bb3bb248203dbcea
|
|
9
|
+
// 44 capabilities, 348 providers, 874 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
|
|
@@ -1928,6 +1928,49 @@ type CallOptions = {
|
|
|
1928
1928
|
}
|
|
1929
1929
|
}
|
|
1930
1930
|
|
|
1931
|
+
declare namespace BowmarkCapability_prospect_screening {
|
|
1932
|
+
// ── Prospect screening — mid-market + a public interactive flow — the unit's own declarations, verbatim ──
|
|
1933
|
+
|
|
1934
|
+
type InteractiveFlowKind =
|
|
1935
|
+
| "booking" | "quote" | "configurator" | "checkout" | "application" | "scheduling" | "other"
|
|
1936
|
+
|
|
1937
|
+
interface InteractiveFlowSignal {
|
|
1938
|
+
found: boolean
|
|
1939
|
+
kind: InteractiveFlowKind | null
|
|
1940
|
+
url: string | null // the homepage itself, or a link found off it
|
|
1941
|
+
evidence: string | null // the text/attribute that matched, for an audit trail
|
|
1942
|
+
}
|
|
1943
|
+
|
|
1944
|
+
interface CompanySizeSignal {
|
|
1945
|
+
employeeCount: number | null
|
|
1946
|
+
employeeCountText: string | null // e.g. "201-500 employees"
|
|
1947
|
+
source: "schema-org" | "unknown"
|
|
1948
|
+
}
|
|
1949
|
+
|
|
1950
|
+
interface ProspectScreeningResult {
|
|
1951
|
+
domain: string
|
|
1952
|
+
fetchedUrl: string
|
|
1953
|
+
sizeSignal: CompanySizeSignal
|
|
1954
|
+
interactiveFlow: InteractiveFlowSignal
|
|
1955
|
+
verdict: "candidate" | "no-interactive-flow" | "not-mid-market" | "insufficient-size-data"
|
|
1956
|
+
warnings: string[]
|
|
1957
|
+
}
|
|
1958
|
+
|
|
1959
|
+
/**
|
|
1960
|
+
* Given a company's domain, checks whether its own site publishes a mid-market employee-count
|
|
1961
|
+
* signal and a public interactive goal flow (booking, quote, configurator, checkout) — a fast
|
|
1962
|
+
* screen before spending outbound research time on a candidate.
|
|
1963
|
+
*/
|
|
1964
|
+
interface Unit {
|
|
1965
|
+
/**
|
|
1966
|
+
* Fetches the homepage, reads any schema.org employee-count signal and any
|
|
1967
|
+
* booking/quote/configurator/checkout link or form, and returns a verdict for outbound
|
|
1968
|
+
* qualification.
|
|
1969
|
+
*/
|
|
1970
|
+
screenCompany(domain: string): Promise<ProspectScreeningResult>;
|
|
1971
|
+
}
|
|
1972
|
+
}
|
|
1973
|
+
|
|
1931
1974
|
declare namespace BowmarkCapability_read {
|
|
1932
1975
|
// ── Read any page (markdown, text or HTML) — the unit's own declarations, verbatim ──
|
|
1933
1976
|
|
|
@@ -2204,10 +2247,14 @@ type CallOptions = {
|
|
|
2204
2247
|
* Searches news coverage and returns stories with the headline, the outlet's own article URL,
|
|
2205
2248
|
* a summary, the publisher's name and a real publication timestamp. Use this rather than `web`
|
|
2206
2249
|
* whenever the question is about what happened or when — `web`'s dates are commonly the
|
|
2207
|
-
* engine's crawl stamp, and these are the story's own.
|
|
2208
|
-
*
|
|
2209
|
-
*
|
|
2210
|
-
*
|
|
2250
|
+
* engine's crawl stamp, and these are the story's own. ZERO RESULTS HERE ARE NOT EVIDENCE OF
|
|
2251
|
+
* ABSENCE, and this is the opposite of `web`: unlike the web feed, the news feed CAN return an
|
|
2252
|
+
* empty list, so a zero is a real possible answer — but it is also what a thin or throttled
|
|
2253
|
+
* response looks like. Measured 2026-09-08: five identical calls for one query on one route
|
|
2254
|
+
* inside ten seconds returned 4, 3, 2, 3 and 0 rows, and two exits disagreed (0 against 3) on
|
|
2255
|
+
* that query in the same minute. Every zero therefore arrives carrying a warning saying so;
|
|
2256
|
+
* RETRY before reporting that nothing has been written about something. Still NOT MEASURED:
|
|
2257
|
+
* whether this feed honours search operators — treat that as unknown.
|
|
2211
2258
|
*/
|
|
2212
2259
|
news(query: string | { query: string, limit?: number }, limit?: number, options?: CallOptions): Promise<SearchNewsResult>;
|
|
2213
2260
|
}
|
|
@@ -2657,7 +2704,7 @@ interface a1storageUnitGroup {
|
|
|
2657
2704
|
unitId: string; // the id getMoveInCost's unitId takes
|
|
2658
2705
|
length: number; width: number; areaSqFt: number;
|
|
2659
2706
|
categoryName: string; // e.g. "Medium"
|
|
2660
|
-
features: string[];
|
|
2707
|
+
features: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
2661
2708
|
availableCount: number;
|
|
2662
2709
|
regularPrice: number | null;
|
|
2663
2710
|
promoPrice: number | null; // null when no promo is currently active
|
|
@@ -2758,7 +2805,7 @@ interface aaFlightStatusResult {
|
|
|
2758
2805
|
|
|
2759
2806
|
interface aaReservation {
|
|
2760
2807
|
recordLocator: string;
|
|
2761
|
-
status: string | null;
|
|
2808
|
+
status: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
2762
2809
|
bookingTime: string | null;
|
|
2763
2810
|
passengers: aaReservationPassenger[];
|
|
2764
2811
|
itinerary: aaReservationSlice[];
|
|
@@ -2781,7 +2828,7 @@ interface aaReservationSegment {
|
|
|
2781
2828
|
flightNumber: string | null;
|
|
2782
2829
|
marketingCarrierCode: string | null;
|
|
2783
2830
|
operatingCarrierCode: string | null;
|
|
2784
|
-
cabinType: string | null;
|
|
2831
|
+
cabinType: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
2785
2832
|
bookingCode: string | null;
|
|
2786
2833
|
departureDateTime: string | null;
|
|
2787
2834
|
legs: aaReservationLeg[];
|
|
@@ -3020,7 +3067,7 @@ interface abercrombieProduct {
|
|
|
3020
3067
|
listPriceHigh: number | null;
|
|
3021
3068
|
currency: string;
|
|
3022
3069
|
onSale: boolean;
|
|
3023
|
-
availability: string | null;
|
|
3070
|
+
availability: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
3024
3071
|
rating: number | null;
|
|
3025
3072
|
reviewCount: number;
|
|
3026
3073
|
images: string[];
|
|
@@ -3696,7 +3743,7 @@ interface AndersenDealer {
|
|
|
3696
3743
|
name: string;
|
|
3697
3744
|
address: AndersenDealerAddress;
|
|
3698
3745
|
phone: string | null;
|
|
3699
|
-
tier: string;
|
|
3746
|
+
tier: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
3700
3747
|
accountType: string;
|
|
3701
3748
|
distanceMiles: number;
|
|
3702
3749
|
lat: number;
|
|
@@ -3730,7 +3777,7 @@ interface AndstrSearchArgs {
|
|
|
3730
3777
|
bedrooms?: number;
|
|
3731
3778
|
priceMin?: number;
|
|
3732
3779
|
priceMax?: number;
|
|
3733
|
-
propertyType?: string;
|
|
3780
|
+
propertyType?: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
3734
3781
|
instantBook?: boolean;
|
|
3735
3782
|
page?: number;
|
|
3736
3783
|
}
|
|
@@ -3761,7 +3808,7 @@ interface AndstrListingDetail {
|
|
|
3761
3808
|
maxGuests: number;
|
|
3762
3809
|
listedFromPerNight: number;
|
|
3763
3810
|
currency: string;
|
|
3764
|
-
amenities: string[];
|
|
3811
|
+
amenities: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
3765
3812
|
cancellationPolicy: string | null;
|
|
3766
3813
|
latitude: number | null;
|
|
3767
3814
|
longitude: number | null;
|
|
@@ -4155,6 +4202,35 @@ interface ArchipelagoGameOptions {
|
|
|
4155
4202
|
}
|
|
4156
4203
|
}
|
|
4157
4204
|
|
|
4205
|
+
declare namespace BowmarkProvider_archive_org {
|
|
4206
|
+
// ── Wayback Machine (archive.org) — the unit's own declarations, verbatim ──
|
|
4207
|
+
interface archive_orgAvailability {
|
|
4208
|
+
query: string;
|
|
4209
|
+
available: boolean;
|
|
4210
|
+
archivedUrl: string | null;
|
|
4211
|
+
archivedTimestamp: string | null; // YYYYMMDDhhmmss
|
|
4212
|
+
archivedStatus: string | null; // the original page's own HTTP status when captured
|
|
4213
|
+
}
|
|
4214
|
+
|
|
4215
|
+
/**
|
|
4216
|
+
* The Wayback Machine's own public availability lookup — is a site or page archived, and
|
|
4217
|
+
* where.
|
|
4218
|
+
*/
|
|
4219
|
+
interface Unit {
|
|
4220
|
+
/**
|
|
4221
|
+
* Checks the Wayback Machine's own public availability endpoint for one site or page — a bare
|
|
4222
|
+
* domain ("carpetlandusa.net"), a domain plus path
|
|
4223
|
+
* ("carpetlandusa.net/schedule-pre-measure/"), or a full URL. Returns whether ANY capture
|
|
4224
|
+
* exists, and — when one does — its own browsable `archivedUrl`, its `archivedTimestamp`
|
|
4225
|
+
* (`YYYYMMDDhhmmss`) and the original page's `archivedStatus` at capture time. `timestamp`
|
|
4226
|
+
* (`YYYYMMDDhhmmss`, or a shorter prefix like `20260615`) asks for the capture CLOSEST to that
|
|
4227
|
+
* moment; omit it for the most recent capture. This is the availability check only — it does
|
|
4228
|
+
* not fetch the archived page's own content.
|
|
4229
|
+
*/
|
|
4230
|
+
checkAvailability(site: string, timestamp?: string): Promise<archive_orgAvailability>;
|
|
4231
|
+
}
|
|
4232
|
+
}
|
|
4233
|
+
|
|
4158
4234
|
declare namespace BowmarkProvider_artpix3d {
|
|
4159
4235
|
// ── ArtPix 3D — the unit's own declarations, verbatim ──
|
|
4160
4236
|
// ArtPix 3D's OWN shapes — not a capability contract.
|
|
@@ -4184,6 +4260,12 @@ interface Artpix3dProductPricing {
|
|
|
4184
4260
|
* labels — the way the site's own size-picker computes it, real-time.
|
|
4185
4261
|
*/
|
|
4186
4262
|
interface Unit {
|
|
4263
|
+
/**
|
|
4264
|
+
* Lists every ArtPix 3D Photo Crystal shape currently sold (rectangle, heart, square, …), each
|
|
4265
|
+
* with its product page URL.
|
|
4266
|
+
*/
|
|
4267
|
+
listPhotoCrystalShapes(): Promise<Artpix3dShape[]>;
|
|
4268
|
+
|
|
4187
4269
|
/**
|
|
4188
4270
|
* Lists every crystal shape ArtPix 3D currently sells (rectangle, heart, square, …), each with
|
|
4189
4271
|
* its own product page URL.
|
|
@@ -4527,7 +4609,7 @@ interface AutocampRate {
|
|
|
4527
4609
|
|
|
4528
4610
|
interface AutocampRoomAvailability {
|
|
4529
4611
|
roomCategory: string | null;
|
|
4530
|
-
roomType: string;
|
|
4612
|
+
roomType: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
4531
4613
|
bedInfo: string | null;
|
|
4532
4614
|
sleeps: string | null;
|
|
4533
4615
|
rates: AutocampRate[];
|
|
@@ -5384,7 +5466,7 @@ interface BeltserviceCatalogItem {
|
|
|
5384
5466
|
catalogNumber: string;
|
|
5385
5467
|
partNumber: string;
|
|
5386
5468
|
name: string;
|
|
5387
|
-
grade: string | null;
|
|
5469
|
+
grade: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
5388
5470
|
specSheetUrl: string | null;
|
|
5389
5471
|
detailUrl: string;
|
|
5390
5472
|
quoteUrl: string;
|
|
@@ -6149,7 +6231,7 @@ interface BmwusaCpoVehicle {
|
|
|
6149
6231
|
odometer: number;
|
|
6150
6232
|
price: number;
|
|
6151
6233
|
drivetrain: string;
|
|
6152
|
-
fuelType: string;
|
|
6234
|
+
fuelType: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
6153
6235
|
vdpUrl: string;
|
|
6154
6236
|
photos: string[];
|
|
6155
6237
|
dealer: BmwusaCpoDealer;
|
|
@@ -6171,10 +6253,11 @@ interface BmwusaModelTrim {
|
|
|
6171
6253
|
zeroToSixty: number | null;
|
|
6172
6254
|
horsepower: number | null;
|
|
6173
6255
|
startingMsrp: number | null;
|
|
6256
|
+
buildable: boolean;
|
|
6174
6257
|
engineType: string | null;
|
|
6175
6258
|
drivetrain: string | null;
|
|
6176
6259
|
transmission: string | null;
|
|
6177
|
-
fuelType: string | null;
|
|
6260
|
+
fuelType: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
6178
6261
|
fuelEfficiency: { city: number | null; highway: number | null; combined: number | null; unit: string } | null;
|
|
6179
6262
|
seatingCapacity: number | null;
|
|
6180
6263
|
}
|
|
@@ -6966,7 +7049,7 @@ interface CabinsforyouCabinDetail {
|
|
|
6966
7049
|
sleeps: number | null;
|
|
6967
7050
|
parking: string | null;
|
|
6968
7051
|
petsAllowed: boolean | null;
|
|
6969
|
-
amenities: string[];
|
|
7052
|
+
amenities: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
6970
7053
|
rating: number | null;
|
|
6971
7054
|
reviewCount: number | null;
|
|
6972
7055
|
description: string;
|
|
@@ -7462,7 +7545,7 @@ interface CglOption {
|
|
|
7462
7545
|
|
|
7463
7546
|
interface CglVariant {
|
|
7464
7547
|
sku: string;
|
|
7465
|
-
stockStatus: string;
|
|
7548
|
+
stockStatus: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
7466
7549
|
price: number;
|
|
7467
7550
|
priceFormatted: string;
|
|
7468
7551
|
selections: Record<string, number>; // attributeCode -> valueIndex
|
|
@@ -7473,7 +7556,7 @@ interface CglProduct {
|
|
|
7473
7556
|
sku: string;
|
|
7474
7557
|
name: string;
|
|
7475
7558
|
url: string;
|
|
7476
|
-
stockStatus: string;
|
|
7559
|
+
stockStatus: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
7477
7560
|
basePrice: number;
|
|
7478
7561
|
basePriceFormatted: string;
|
|
7479
7562
|
options: CglOption[];
|
|
@@ -7484,7 +7567,7 @@ interface CglPriceResult {
|
|
|
7484
7567
|
urlKey: string;
|
|
7485
7568
|
sku: string;
|
|
7486
7569
|
variantSku: string | null; // null until every multi-choice group is picked
|
|
7487
|
-
stockStatus: string | null;
|
|
7570
|
+
stockStatus: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
7488
7571
|
price: number | null;
|
|
7489
7572
|
priceFormatted: string | null;
|
|
7490
7573
|
applied: { group: string; choice: string }[];
|
|
@@ -7501,7 +7584,7 @@ interface CglCartHandoff {
|
|
|
7501
7584
|
applied: { group: string; choice: string }[];
|
|
7502
7585
|
price: number | null;
|
|
7503
7586
|
priceFormatted: string | null;
|
|
7504
|
-
stockStatus: string | null;
|
|
7587
|
+
stockStatus: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
7505
7588
|
missingGroups: string[];
|
|
7506
7589
|
unmatched: string[];
|
|
7507
7590
|
}
|
|
@@ -7983,7 +8066,7 @@ interface CbhListing {
|
|
|
7983
8066
|
mls: number;
|
|
7984
8067
|
url: string;
|
|
7985
8068
|
image: string | null;
|
|
7986
|
-
status: string;
|
|
8069
|
+
status: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
7987
8070
|
isSold: boolean;
|
|
7988
8071
|
isReserved: boolean;
|
|
7989
8072
|
address: string;
|
|
@@ -8004,7 +8087,7 @@ interface CbhListing {
|
|
|
8004
8087
|
sqft: number | null;
|
|
8005
8088
|
price: number;
|
|
8006
8089
|
priceMonthly: number | null;
|
|
8007
|
-
amenities: string[];
|
|
8090
|
+
amenities: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
8008
8091
|
salesCenter: string | null;
|
|
8009
8092
|
schoolDistrict: string | null;
|
|
8010
8093
|
daysOnMarket: number | null;
|
|
@@ -8600,6 +8683,80 @@ interface ChriscraftPriceResult {
|
|
|
8600
8683
|
}
|
|
8601
8684
|
}
|
|
8602
8685
|
|
|
8686
|
+
declare namespace BowmarkProvider_christianbrothersauto {
|
|
8687
|
+
// ── Christian Brothers Automotive — the unit's own declarations, verbatim ──
|
|
8688
|
+
interface ChristianBrothersAutoService {
|
|
8689
|
+
serviceId: number;
|
|
8690
|
+
text: string;
|
|
8691
|
+
}
|
|
8692
|
+
interface ChristianBrothersAutoShop {
|
|
8693
|
+
slug: string;
|
|
8694
|
+
shopId: number;
|
|
8695
|
+
locationId: string;
|
|
8696
|
+
city: string;
|
|
8697
|
+
state: string;
|
|
8698
|
+
street: string;
|
|
8699
|
+
zip: string;
|
|
8700
|
+
phone: string;
|
|
8701
|
+
openingTime: string;
|
|
8702
|
+
closingTime: string;
|
|
8703
|
+
schedulerLive: boolean;
|
|
8704
|
+
isAfterHoursDropoff: boolean;
|
|
8705
|
+
services: ChristianBrothersAutoService[];
|
|
8706
|
+
schedulerUrl: string;
|
|
8707
|
+
}
|
|
8708
|
+
interface ChristianBrothersAutoSlotWindow {
|
|
8709
|
+
fromTime: string;
|
|
8710
|
+
endTime: string;
|
|
8711
|
+
availableSlots: number;
|
|
8712
|
+
totalSlots: number;
|
|
8713
|
+
}
|
|
8714
|
+
interface ChristianBrothersAutoDaySlots {
|
|
8715
|
+
date: string;
|
|
8716
|
+
availableTimes: number;
|
|
8717
|
+
slots: ChristianBrothersAutoSlotWindow[];
|
|
8718
|
+
}
|
|
8719
|
+
interface ChristianBrothersAutoAvailability {
|
|
8720
|
+
shop: ChristianBrothersAutoShop;
|
|
8721
|
+
service: ChristianBrothersAutoService;
|
|
8722
|
+
appointmentType: "dropoff" | "ahdo";
|
|
8723
|
+
days: ChristianBrothersAutoDaySlots[];
|
|
8724
|
+
schedulerUrl: string;
|
|
8725
|
+
}
|
|
8726
|
+
interface GetShopDetailsArgs {
|
|
8727
|
+
shop: string;
|
|
8728
|
+
}
|
|
8729
|
+
interface CheckAppointmentAvailabilityArgs {
|
|
8730
|
+
shop: string;
|
|
8731
|
+
service: string;
|
|
8732
|
+
appointmentType?: "dropoff" | "ahdo";
|
|
8733
|
+
days?: number;
|
|
8734
|
+
}
|
|
8735
|
+
|
|
8736
|
+
/**
|
|
8737
|
+
* Christian Brothers Automotive's public appointment scheduler — resolve a shop and check its
|
|
8738
|
+
* real open appointment slots for a service, straight from the site's own scheduler backend,
|
|
8739
|
+
* no vehicle/name/email/phone required.
|
|
8740
|
+
*/
|
|
8741
|
+
interface Unit {
|
|
8742
|
+
/**
|
|
8743
|
+
* Resolves a Christian Brothers Automotive shop — by its scheduler slug ("liberty-lake"), a
|
|
8744
|
+
* plain city/franchise name ("Liberty Lake"), or a scheduler.cbac.com/cbac.com shop URL — to
|
|
8745
|
+
* that shop's real public details: address, hours, phone, whether its online scheduler is
|
|
8746
|
+
* live, and its own list of bookable services with the site's own service ids.
|
|
8747
|
+
*/
|
|
8748
|
+
getShopDetails(args: GetShopDetailsArgs): Promise<ChristianBrothersAutoShop>;
|
|
8749
|
+
|
|
8750
|
+
/**
|
|
8751
|
+
* Checks real, currently-open appointment slots at one Christian Brothers Automotive shop for
|
|
8752
|
+
* a named service (matched against that shop's own service list) and visit type — reachable
|
|
8753
|
+
* with no vehicle info, name, email or phone. Returns real per-day open time windows plus the
|
|
8754
|
+
* exact scheduler URL to finish booking.
|
|
8755
|
+
*/
|
|
8756
|
+
checkAppointmentAvailability(args: CheckAppointmentAvailabilityArgs): Promise<ChristianBrothersAutoAvailability>;
|
|
8757
|
+
}
|
|
8758
|
+
}
|
|
8759
|
+
|
|
8603
8760
|
declare namespace BowmarkProvider_classichome {
|
|
8604
8761
|
// ── Classic Home — the unit's own declarations, verbatim ──
|
|
8605
8762
|
// Classic Home's OWN shapes — not a capability contract.
|
|
@@ -8669,6 +8826,48 @@ interface ClassicHomeCartHandoff {
|
|
|
8669
8826
|
}
|
|
8670
8827
|
}
|
|
8671
8828
|
|
|
8829
|
+
declare namespace BowmarkProvider_classicrockfab {
|
|
8830
|
+
// ── Classic Rock Fabrication — the unit's own declarations, verbatim ──
|
|
8831
|
+
interface ClassicRockAppointmentType {
|
|
8832
|
+
id: number;
|
|
8833
|
+
name: string;
|
|
8834
|
+
location: string | null;
|
|
8835
|
+
durationMinutes: number;
|
|
8836
|
+
price: string;
|
|
8837
|
+
bookingUrl: string;
|
|
8838
|
+
}
|
|
8839
|
+
interface ClassicRockAvailabilitySlot {
|
|
8840
|
+
date: string;
|
|
8841
|
+
time: string;
|
|
8842
|
+
slotsAvailable: number;
|
|
8843
|
+
}
|
|
8844
|
+
interface ClassicRockAvailability {
|
|
8845
|
+
appointmentTypeId: number;
|
|
8846
|
+
timezone: string;
|
|
8847
|
+
slots: ClassicRockAvailabilitySlot[];
|
|
8848
|
+
bookingUrl: string;
|
|
8849
|
+
}
|
|
8850
|
+
|
|
8851
|
+
/**
|
|
8852
|
+
* Classic Rock Fabrication's own public Acuity scheduler — list design-center appointment
|
|
8853
|
+
* types across all four locations, then read real live availability and the booking handoff
|
|
8854
|
+
* for one.
|
|
8855
|
+
*/
|
|
8856
|
+
interface Unit {
|
|
8857
|
+
/**
|
|
8858
|
+
* Lists Classic Rock's public design-center appointment types, optionally filtered by a
|
|
8859
|
+
* location substring (e.g. "Mechanicsburg", "Pittsburgh").
|
|
8860
|
+
*/
|
|
8861
|
+
listAppointmentTypes(locationQuery?: string): Promise<ClassicRockAppointmentType[]>;
|
|
8862
|
+
|
|
8863
|
+
/**
|
|
8864
|
+
* Given an appointmentTypeId from listAppointmentTypes, returns real open time slots over the
|
|
8865
|
+
* next several days plus the booking-handoff URL.
|
|
8866
|
+
*/
|
|
8867
|
+
checkAvailability(arg: { appointmentTypeId: number, days?: number }): Promise<ClassicRockAvailability>;
|
|
8868
|
+
}
|
|
8869
|
+
}
|
|
8870
|
+
|
|
8672
8871
|
declare namespace BowmarkProvider_classpass {
|
|
8673
8872
|
// ── ClassPass — the unit's own declarations, verbatim ──
|
|
8674
8873
|
/** Everything /v2/venues publishes about one studio — a superset of
|
|
@@ -9118,7 +9317,7 @@ interface CloudflareComparePlansResult {
|
|
|
9118
9317
|
|
|
9119
9318
|
interface CloudflareDomainSuggestion {
|
|
9120
9319
|
name: string;
|
|
9121
|
-
availability: string;
|
|
9320
|
+
availability: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
9122
9321
|
premium: boolean;
|
|
9123
9322
|
price: number | null;
|
|
9124
9323
|
renewal: number | null;
|
|
@@ -9676,7 +9875,7 @@ interface DavidsonhomesHomeSummary {
|
|
|
9676
9875
|
interface DavidsonhomesCommunityDetail {
|
|
9677
9876
|
title: string;
|
|
9678
9877
|
path: string;
|
|
9679
|
-
status: string;
|
|
9878
|
+
status: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
9680
9879
|
priceRange: DavidsonhomesRange;
|
|
9681
9880
|
sqftRange: DavidsonhomesRange;
|
|
9682
9881
|
phone: string | null;
|
|
@@ -9920,7 +10119,7 @@ interface DdOption {
|
|
|
9920
10119
|
|
|
9921
10120
|
interface DdVariant {
|
|
9922
10121
|
sku: string;
|
|
9923
|
-
stockStatus: string;
|
|
10122
|
+
stockStatus: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
9924
10123
|
price: number;
|
|
9925
10124
|
priceFormatted: string;
|
|
9926
10125
|
selections: Record<string, number>; // attributeCode -> valueIndex
|
|
@@ -9931,7 +10130,7 @@ interface DdProduct {
|
|
|
9931
10130
|
sku: string;
|
|
9932
10131
|
name: string;
|
|
9933
10132
|
url: string;
|
|
9934
|
-
stockStatus: string;
|
|
10133
|
+
stockStatus: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
9935
10134
|
basePrice: number;
|
|
9936
10135
|
basePriceFormatted: string;
|
|
9937
10136
|
options: DdOption[];
|
|
@@ -9942,7 +10141,7 @@ interface DdPriceResult {
|
|
|
9942
10141
|
urlKey: string;
|
|
9943
10142
|
sku: string;
|
|
9944
10143
|
variantSku: string | null; // null until every multi-choice group is picked
|
|
9945
|
-
stockStatus: string | null;
|
|
10144
|
+
stockStatus: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
9946
10145
|
price: number | null;
|
|
9947
10146
|
priceFormatted: string | null;
|
|
9948
10147
|
applied: { group: string; choice: string }[];
|
|
@@ -9959,7 +10158,7 @@ interface DdCartHandoff {
|
|
|
9959
10158
|
applied: { group: string; choice: string }[];
|
|
9960
10159
|
price: number | null;
|
|
9961
10160
|
priceFormatted: string | null;
|
|
9962
|
-
stockStatus: string | null;
|
|
10161
|
+
stockStatus: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
9963
10162
|
missingGroups: string[];
|
|
9964
10163
|
unmatched: string[];
|
|
9965
10164
|
}
|
|
@@ -10599,6 +10798,55 @@ interface DisneyTicketPrice {
|
|
|
10599
10798
|
}
|
|
10600
10799
|
}
|
|
10601
10800
|
|
|
10801
|
+
declare namespace BowmarkProvider_donsappliances {
|
|
10802
|
+
// ── Don's Appliances — the unit's own declarations, verbatim ──
|
|
10803
|
+
interface DonsAppliancesListing {
|
|
10804
|
+
name: string;
|
|
10805
|
+
url: string;
|
|
10806
|
+
price: number;
|
|
10807
|
+
sku: string;
|
|
10808
|
+
imageUrl: string | null;
|
|
10809
|
+
}
|
|
10810
|
+
interface DonsAppliancesProduct {
|
|
10811
|
+
name: string;
|
|
10812
|
+
modelNumber: string | null;
|
|
10813
|
+
sku: string;
|
|
10814
|
+
brand: string | null;
|
|
10815
|
+
price: number;
|
|
10816
|
+
regularPrice: number;
|
|
10817
|
+
inStock: boolean;
|
|
10818
|
+
inventoryLabel: string | null;
|
|
10819
|
+
url: string;
|
|
10820
|
+
}
|
|
10821
|
+
interface DonsAppliancesSearchArgs {
|
|
10822
|
+
category: string;
|
|
10823
|
+
maxPrice?: number;
|
|
10824
|
+
}
|
|
10825
|
+
|
|
10826
|
+
/**
|
|
10827
|
+
* Browses Don's Appliances' own public catalog and reads a product's live price, availability
|
|
10828
|
+
* and inventory-label wording straight off the site's own data — no browser.
|
|
10829
|
+
*/
|
|
10830
|
+
interface Unit {
|
|
10831
|
+
/**
|
|
10832
|
+
* Browses one of Don's Appliances' catalog categories (the slug from a URL like
|
|
10833
|
+
* https://www.donsappliances.com/catalog/<category>, e.g.
|
|
10834
|
+
* "shop-all-refrigerators-upright-freezers") and returns up to 24 listed products — name,
|
|
10835
|
+
* product URL, current price and SKU — optionally filtered to `maxPrice` or under. Call
|
|
10836
|
+
* `getProduct` on a returned `url` for full detail (brand, model number, live stock).
|
|
10837
|
+
*/
|
|
10838
|
+
search(args: DonsAppliancesSearchArgs): Promise<DonsAppliancesListing[]>;
|
|
10839
|
+
|
|
10840
|
+
/**
|
|
10841
|
+
* Reads one Don's Appliances product page (a URL search() already returned) and returns its
|
|
10842
|
+
* brand, model number, current sale price, regular price, live in-stock flag and the site's
|
|
10843
|
+
* own inventory-label wording (e.g. "Limited Stock") — the computed result a shopper checks
|
|
10844
|
+
* before heading to Don's own Add To Cart / checkout on that same page.
|
|
10845
|
+
*/
|
|
10846
|
+
getProduct(url: string): Promise<DonsAppliancesProduct>;
|
|
10847
|
+
}
|
|
10848
|
+
}
|
|
10849
|
+
|
|
10602
10850
|
declare namespace BowmarkProvider_doordash {
|
|
10603
10851
|
// ── DoorDash — the unit's own declarations, verbatim ──
|
|
10604
10852
|
interface DoordashSearchArgs {
|
|
@@ -10678,7 +10926,7 @@ interface ebayItem {
|
|
|
10678
10926
|
itemId: string;
|
|
10679
10927
|
title: string;
|
|
10680
10928
|
price: { value: string; currency: string } | null;
|
|
10681
|
-
condition: string | null;
|
|
10929
|
+
condition: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
10682
10930
|
buyingOptions: string[];
|
|
10683
10931
|
url: string;
|
|
10684
10932
|
imageUrl: string | null;
|
|
@@ -10770,6 +11018,81 @@ interface EmbrokerQuoteEntryPoint {
|
|
|
10770
11018
|
}
|
|
10771
11019
|
}
|
|
10772
11020
|
|
|
11021
|
+
declare namespace BowmarkProvider_epromos {
|
|
11022
|
+
// ── ePromos — the unit's own declarations, verbatim ──
|
|
11023
|
+
// ePromos' OWN shapes — not a capability contract.
|
|
11024
|
+
|
|
11025
|
+
interface EpromosProductOption {
|
|
11026
|
+
groupLabel: string;
|
|
11027
|
+
label: string;
|
|
11028
|
+
isDefault: boolean;
|
|
11029
|
+
}
|
|
11030
|
+
|
|
11031
|
+
interface EpromosCustomizationField {
|
|
11032
|
+
label: string;
|
|
11033
|
+
inputType: string;
|
|
11034
|
+
required: boolean;
|
|
11035
|
+
}
|
|
11036
|
+
|
|
11037
|
+
interface EpromosBulkPricingTier {
|
|
11038
|
+
minQuantity: number;
|
|
11039
|
+
unitPrice: number;
|
|
11040
|
+
}
|
|
11041
|
+
|
|
11042
|
+
interface EpromosProductConfiguration {
|
|
11043
|
+
name: string;
|
|
11044
|
+
sku: string;
|
|
11045
|
+
url: string;
|
|
11046
|
+
colorOptions: EpromosProductOption[];
|
|
11047
|
+
customizationFields: EpromosCustomizationField[];
|
|
11048
|
+
bulkPricing: EpromosBulkPricingTier[];
|
|
11049
|
+
}
|
|
11050
|
+
|
|
11051
|
+
interface EpromosBulkQuote {
|
|
11052
|
+
productUrl: string;
|
|
11053
|
+
requestedQuantity: number;
|
|
11054
|
+
tierMinQuantity: number;
|
|
11055
|
+
unitPrice: number;
|
|
11056
|
+
totalPrice: number;
|
|
11057
|
+
currency: "USD";
|
|
11058
|
+
}
|
|
11059
|
+
|
|
11060
|
+
interface EpromosCategoryProduct {
|
|
11061
|
+
name: string;
|
|
11062
|
+
url: string;
|
|
11063
|
+
}
|
|
11064
|
+
|
|
11065
|
+
interface EpromosCategoryListing {
|
|
11066
|
+
categoryUrl: string;
|
|
11067
|
+
products: EpromosCategoryProduct[];
|
|
11068
|
+
}
|
|
11069
|
+
|
|
11070
|
+
/**
|
|
11071
|
+
* ePromos' own product configurator and bulk-pricing tables off its live product pages — real
|
|
11072
|
+
* tiered per-unit prices for a caller-given quantity, not a stale mirror — plus the
|
|
11073
|
+
* category-page browse path to find a configurable SKU.
|
|
11074
|
+
*/
|
|
11075
|
+
interface Unit {
|
|
11076
|
+
/**
|
|
11077
|
+
* Reads one ePromos product's own configurator page — color/style options, customization
|
|
11078
|
+
* fields, and the site's own bulk-pricing tier table.
|
|
11079
|
+
*/
|
|
11080
|
+
getProductConfiguration(url: string): Promise<EpromosProductConfiguration>;
|
|
11081
|
+
|
|
11082
|
+
/**
|
|
11083
|
+
* Computes the real per-unit and total price for one product at a given quantity, off the
|
|
11084
|
+
* site's own bulk-pricing table.
|
|
11085
|
+
*/
|
|
11086
|
+
quoteBulkPrice(args: { productUrl: string; quantity: number }): Promise<EpromosBulkQuote>;
|
|
11087
|
+
|
|
11088
|
+
/**
|
|
11089
|
+
* Lists the products ePromos features on one category landing page, with name and product-page
|
|
11090
|
+
* URL.
|
|
11091
|
+
*/
|
|
11092
|
+
listCategoryProducts(url: string): Promise<EpromosCategoryListing>;
|
|
11093
|
+
}
|
|
11094
|
+
}
|
|
11095
|
+
|
|
10773
11096
|
declare namespace BowmarkProvider_eq3 {
|
|
10774
11097
|
// ── EQ3 — the unit's own declarations, verbatim ──
|
|
10775
11098
|
interface Eq3SofaListing {
|
|
@@ -10806,7 +11129,7 @@ interface Eq3SofaConfiguration {
|
|
|
10806
11129
|
sellingPrice: number;
|
|
10807
11130
|
discountPercent: number | null; // e.g. 20 — null when no sale is running
|
|
10808
11131
|
massPounds: number | null;
|
|
10809
|
-
availability: string;
|
|
11132
|
+
availability: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
10810
11133
|
canonicalUrl: string;
|
|
10811
11134
|
optionGroups: Eq3OptionGroup[]; // every alternative the configurator offers
|
|
10812
11135
|
}
|
|
@@ -11129,7 +11452,7 @@ interface ExtraspaceUnit {
|
|
|
11129
11452
|
webRate: number | null;
|
|
11130
11453
|
promotions: string[];
|
|
11131
11454
|
available: boolean;
|
|
11132
|
-
features: string[];
|
|
11455
|
+
features: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
11133
11456
|
}
|
|
11134
11457
|
|
|
11135
11458
|
interface ExtraspaceFeatures {
|
|
@@ -11410,7 +11733,7 @@ interface FirstdibsSearchResult {
|
|
|
11410
11733
|
url: string;
|
|
11411
11734
|
price: number;
|
|
11412
11735
|
priceCurrency: string;
|
|
11413
|
-
availability: string;
|
|
11736
|
+
availability: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
11414
11737
|
image: string | null;
|
|
11415
11738
|
}
|
|
11416
11739
|
interface FirstdibsCompletingAction {
|
|
@@ -11983,6 +12306,56 @@ interface FormaxCartLink {
|
|
|
11983
12306
|
}
|
|
11984
12307
|
}
|
|
11985
12308
|
|
|
12309
|
+
declare namespace BowmarkProvider_forms_hubspot_com {
|
|
12310
|
+
// ── HubSpot Forms — the unit's own declarations, verbatim ──
|
|
12311
|
+
interface HubspotFormField {
|
|
12312
|
+
name: string;
|
|
12313
|
+
label: string;
|
|
12314
|
+
type: string;
|
|
12315
|
+
fieldType: string;
|
|
12316
|
+
required: boolean;
|
|
12317
|
+
hidden: boolean;
|
|
12318
|
+
defaultValue: string;
|
|
12319
|
+
placeholder: string;
|
|
12320
|
+
options: Array<{ label: string; value: string }>;
|
|
12321
|
+
}
|
|
12322
|
+
interface HubspotFormDefinition {
|
|
12323
|
+
portalId: number;
|
|
12324
|
+
guid: string;
|
|
12325
|
+
submitText: string;
|
|
12326
|
+
fields: HubspotFormField[];
|
|
12327
|
+
sourceUrl: string;
|
|
12328
|
+
}
|
|
12329
|
+
interface HubspotFormReference {
|
|
12330
|
+
portalId: string;
|
|
12331
|
+
guid: string;
|
|
12332
|
+
}
|
|
12333
|
+
interface HubspotPageForms {
|
|
12334
|
+
pageUrl: string;
|
|
12335
|
+
forms: HubspotFormReference[];
|
|
12336
|
+
}
|
|
12337
|
+
|
|
12338
|
+
/**
|
|
12339
|
+
* Reads a public HubSpot form's own field definitions off its forms.hubspot.com URL — no
|
|
12340
|
+
* submission, no browser.
|
|
12341
|
+
*/
|
|
12342
|
+
interface Unit {
|
|
12343
|
+
/**
|
|
12344
|
+
* Fetches one page on a company's own site (a bare domain, or a domain + path) and returns
|
|
12345
|
+
* every HubSpot form it embeds (portalId + formId) — the door into getFormDefinition for a
|
|
12346
|
+
* caller who only knows the company, not a form URL.
|
|
12347
|
+
*/
|
|
12348
|
+
findForms(site: string): Promise<HubspotPageForms>;
|
|
12349
|
+
|
|
12350
|
+
/**
|
|
12351
|
+
* Reads a public HubSpot form's own field definitions off its forms.hubspot.com URL (or a
|
|
12352
|
+
* "<portalId> <formGuid>" pair) — every field's name, label, type and required flag, plus the
|
|
12353
|
+
* form's submit text.
|
|
12354
|
+
*/
|
|
12355
|
+
getFormDefinition(formUrlOrIds: string): Promise<HubspotFormDefinition>;
|
|
12356
|
+
}
|
|
12357
|
+
}
|
|
12358
|
+
|
|
11986
12359
|
declare namespace BowmarkProvider_fourseasonsyachts {
|
|
11987
12360
|
// ── Four Seasons Yachts — the unit's own declarations, verbatim ──
|
|
11988
12361
|
interface FourseasonsyachtsVoyage {
|
|
@@ -13327,7 +13700,7 @@ interface GrandwelcomeRentalRow {
|
|
|
13327
13700
|
name: string;
|
|
13328
13701
|
url: string;
|
|
13329
13702
|
location: string;
|
|
13330
|
-
propertyType: string;
|
|
13703
|
+
propertyType: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
13331
13704
|
petFriendly: boolean;
|
|
13332
13705
|
priceFromUsd: number | null;
|
|
13333
13706
|
priceFromFormatted: string | null;
|
|
@@ -14648,7 +15021,7 @@ interface hiltonRoomOffer {
|
|
|
14648
15021
|
roomTypeName: string;
|
|
14649
15022
|
bedType: string | null;
|
|
14650
15023
|
maxOccupancy: number | null;
|
|
14651
|
-
features: string[];
|
|
15024
|
+
features: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
14652
15025
|
ratePlanCode: string;
|
|
14653
15026
|
currencyCode: string;
|
|
14654
15027
|
nightlyRate: string;
|
|
@@ -14764,7 +15137,7 @@ interface HobieDealer {
|
|
|
14764
15137
|
carriesExactColor: boolean;
|
|
14765
15138
|
carriesModel: boolean;
|
|
14766
15139
|
carriesBrand: boolean;
|
|
14767
|
-
stockStatus: string;
|
|
15140
|
+
stockStatus: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
14768
15141
|
stockDisclaimer: string;
|
|
14769
15142
|
}
|
|
14770
15143
|
interface HobieLocalAvailability {
|
|
@@ -16375,7 +16748,7 @@ declare namespace BowmarkProvider_iproyal {
|
|
|
16375
16748
|
type IproyalProductType = "residential" | "datacenter" | "isp" | "mobile";
|
|
16376
16749
|
interface IproyalPlanTier {
|
|
16377
16750
|
productType: IproyalProductType;
|
|
16378
|
-
tier: string;
|
|
16751
|
+
tier: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
16379
16752
|
price: number;
|
|
16380
16753
|
unit: string;
|
|
16381
16754
|
billingMode: "subscription" | "payAsYouGo" | null;
|
|
@@ -16873,7 +17246,7 @@ interface KalshiMarket {
|
|
|
16873
17246
|
eventTicker: string;
|
|
16874
17247
|
title: string;
|
|
16875
17248
|
subtitle: string;
|
|
16876
|
-
status: string;
|
|
17249
|
+
status: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
16877
17250
|
marketType: string;
|
|
16878
17251
|
openTime: string;
|
|
16879
17252
|
closeTime: string;
|
|
@@ -16889,7 +17262,7 @@ interface KalshiMarket {
|
|
|
16889
17262
|
rules: string;
|
|
16890
17263
|
}
|
|
16891
17264
|
interface KalshiGetMarketsOptions {
|
|
16892
|
-
status?: string;
|
|
17265
|
+
status?: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
16893
17266
|
series_ticker?: string;
|
|
16894
17267
|
event_ticker?: string;
|
|
16895
17268
|
limit?: number;
|
|
@@ -17446,7 +17819,7 @@ interface LegacyHomesalCommunity {
|
|
|
17446
17819
|
name: string;
|
|
17447
17820
|
aliases: string[];
|
|
17448
17821
|
area: string | null;
|
|
17449
|
-
status: string | null;
|
|
17822
|
+
status: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
17450
17823
|
repSlug: string;
|
|
17451
17824
|
bookingUrl: string;
|
|
17452
17825
|
}
|
|
@@ -18870,7 +19243,7 @@ interface mcdonaldsStore {
|
|
|
18870
19243
|
openStatus: string;
|
|
18871
19244
|
hours: mcdonaldsStoreHours;
|
|
18872
19245
|
services: mcdonaldsStoreServices;
|
|
18873
|
-
amenities: string[];
|
|
19246
|
+
amenities: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
18874
19247
|
deliveryPartners: mcdonaldsDeliveryPartner[];
|
|
18875
19248
|
}
|
|
18876
19249
|
|
|
@@ -18913,7 +19286,7 @@ interface mcpRegistryEntry {
|
|
|
18913
19286
|
version: string;
|
|
18914
19287
|
repositoryUrl: string | null;
|
|
18915
19288
|
remoteUrl: string | null;
|
|
18916
|
-
status: string;
|
|
19289
|
+
status: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
18917
19290
|
}
|
|
18918
19291
|
|
|
18919
19292
|
/**
|
|
@@ -20114,7 +20487,7 @@ interface MixbookProductPrice {
|
|
|
20114
20487
|
size: string;
|
|
20115
20488
|
price: number; // real Mixbook-computed price for the default configuration
|
|
20116
20489
|
currency: string;
|
|
20117
|
-
availability: string;
|
|
20490
|
+
availability: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
20118
20491
|
url: string;
|
|
20119
20492
|
}
|
|
20120
20493
|
|
|
@@ -21431,7 +21804,7 @@ interface ottoProduct {
|
|
|
21431
21804
|
originalPrice: number | null;
|
|
21432
21805
|
discountPercent: number | null;
|
|
21433
21806
|
currency: string;
|
|
21434
|
-
availability: string | null;
|
|
21807
|
+
availability: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
21435
21808
|
soldOut: boolean;
|
|
21436
21809
|
delivery: { text: string; minDays: number | null; maxDays: number | null } | null;
|
|
21437
21810
|
rating: { value: number; count: number } | null;
|
|
@@ -23011,6 +23384,80 @@ interface ProgressiveHomeCarrier {
|
|
|
23011
23384
|
}
|
|
23012
23385
|
}
|
|
23013
23386
|
|
|
23387
|
+
declare namespace BowmarkProvider_prolook {
|
|
23388
|
+
// ── PROLOOK — the unit's own declarations, verbatim ──
|
|
23389
|
+
interface ProlookUniformStyle {
|
|
23390
|
+
id: number;
|
|
23391
|
+
page: number;
|
|
23392
|
+
brandStyleName: string;
|
|
23393
|
+
productName: string;
|
|
23394
|
+
productLineName: string;
|
|
23395
|
+
filterFlags: Record<string, string>;
|
|
23396
|
+
pricing: {
|
|
23397
|
+
msrpAdult: number | null;
|
|
23398
|
+
msrpYouth: number | null;
|
|
23399
|
+
brandCostAdult: number | null;
|
|
23400
|
+
brandCostYouth: number | null;
|
|
23401
|
+
};
|
|
23402
|
+
estimatedShippingDate: string | null;
|
|
23403
|
+
}
|
|
23404
|
+
|
|
23405
|
+
interface ProlookStyleListPage {
|
|
23406
|
+
page: number;
|
|
23407
|
+
lastPage: number;
|
|
23408
|
+
styles: ProlookUniformStyle[];
|
|
23409
|
+
}
|
|
23410
|
+
|
|
23411
|
+
interface ProlookTrim {
|
|
23412
|
+
trimId: string;
|
|
23413
|
+
trimName: string;
|
|
23414
|
+
trimType: string;
|
|
23415
|
+
colors: { id: number; alias: string; hex: string; code: string }[];
|
|
23416
|
+
}
|
|
23417
|
+
|
|
23418
|
+
interface ProlookStyleOptions {
|
|
23419
|
+
styleId: number;
|
|
23420
|
+
brandStyleName: string;
|
|
23421
|
+
trims: ProlookTrim[];
|
|
23422
|
+
}
|
|
23423
|
+
|
|
23424
|
+
interface ProlookTeamQuote {
|
|
23425
|
+
styleId: number;
|
|
23426
|
+
brandStyleName: string;
|
|
23427
|
+
quantity: number;
|
|
23428
|
+
pricePerUnit: number;
|
|
23429
|
+
total: number;
|
|
23430
|
+
brandCostPerUnit: number | null;
|
|
23431
|
+
}
|
|
23432
|
+
|
|
23433
|
+
/**
|
|
23434
|
+
* PROLOOK's real team-uniform catalog with live per-style MSRP/dealer pricing, real
|
|
23435
|
+
* customization options (trims and colors), and a real computed team-order total — no browser,
|
|
23436
|
+
* no marketing-page guesswork.
|
|
23437
|
+
*/
|
|
23438
|
+
interface Unit {
|
|
23439
|
+
/**
|
|
23440
|
+
* Lists one page of PROLOOK's real uniform styles for a sport (e.g. "BSB" for baseball) with
|
|
23441
|
+
* real per-unit MSRP/dealer-cost pricing and cut/sleeve filter flags — the entry point every
|
|
23442
|
+
* other function's styleId + page come from.
|
|
23443
|
+
*/
|
|
23444
|
+
listUniformStyles(sportCode: string, page?: number): Promise<ProlookStyleListPage>;
|
|
23445
|
+
|
|
23446
|
+
/**
|
|
23447
|
+
* Reads one style's real trim options (buttons, piping, etc.) and each trim's selectable
|
|
23448
|
+
* colors — the same data PROLOOK's own customizer canvas reads.
|
|
23449
|
+
*/
|
|
23450
|
+
getStyleCustomizationOptions(styleId: number): Promise<ProlookStyleOptions>;
|
|
23451
|
+
|
|
23452
|
+
/**
|
|
23453
|
+
* Computes a real team-order total for N jerseys of one style from PROLOOK's own live per-unit
|
|
23454
|
+
* MSRP — not a marketing-page estimate. `sportCode` and `page` are the values
|
|
23455
|
+
* listUniformStyles() found this style with.
|
|
23456
|
+
*/
|
|
23457
|
+
getTeamQuote(styleId: number, sportCode: string, page: number, quantity: number): Promise<ProlookTeamQuote>;
|
|
23458
|
+
}
|
|
23459
|
+
}
|
|
23460
|
+
|
|
23014
23461
|
declare namespace BowmarkProvider_prose {
|
|
23015
23462
|
// ── Prose — the unit's own declarations, verbatim ──
|
|
23016
23463
|
interface ProseHaircareProduct {
|
|
@@ -24077,7 +24524,7 @@ interface SamsclubInstantSavingsItem {
|
|
|
24077
24524
|
savingsAmount: number | null;
|
|
24078
24525
|
expiresLabel: string | null;
|
|
24079
24526
|
limitLabel: string | null;
|
|
24080
|
-
availability: string | null;
|
|
24527
|
+
availability: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
24081
24528
|
}
|
|
24082
24529
|
interface SamsclubCategoryItem {
|
|
24083
24530
|
id: string;
|
|
@@ -24089,10 +24536,10 @@ interface SamsclubCategoryItem {
|
|
|
24089
24536
|
wasPrice: string | null;
|
|
24090
24537
|
rating: number | null;
|
|
24091
24538
|
reviewCount: number | null;
|
|
24092
|
-
availability: string | null;
|
|
24539
|
+
availability: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
24093
24540
|
}
|
|
24094
24541
|
interface SamsclubFuelPrice {
|
|
24095
|
-
grade: string;
|
|
24542
|
+
grade: string; // the site's own labels: "Unleaded", "Premium", "Diesel" where the club sells it
|
|
24096
24543
|
pricePerGallon: number;
|
|
24097
24544
|
}
|
|
24098
24545
|
interface SamsclubFuelPrices {
|
|
@@ -24112,7 +24559,7 @@ interface SamsclubProduct {
|
|
|
24112
24559
|
nonMemberPrice: string | null;
|
|
24113
24560
|
rating: number | null;
|
|
24114
24561
|
reviewCount: number | null;
|
|
24115
|
-
availability: string | null;
|
|
24562
|
+
availability: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
24116
24563
|
description: string | null;
|
|
24117
24564
|
images: string[];
|
|
24118
24565
|
thumbnailUrl: string | null;
|
|
@@ -24147,7 +24594,11 @@ interface SamsclubClub {
|
|
|
24147
24594
|
address: { addressLine1: string | null; addressLine2: string | null; city: string; state: string; postalCode: string; country: string };
|
|
24148
24595
|
open24Hours: boolean;
|
|
24149
24596
|
hours: SamsclubClubHours[];
|
|
24150
|
-
services: string[];
|
|
24597
|
+
services: string[]; // the SITE'S OWN labels, verbatim: "Sam’s Fuel Station" (NOT "Fuel Center"),
|
|
24598
|
+
// "Pharmacy", "Optical Center", "Auto & Tires", "Sam’s Cafe", "Bakery", "Deli", "Liquor",
|
|
24599
|
+
// "Tobacco", "Photo Center", "Hearing Aid Center", "Fresh Flowers", "Wireless Mobile",
|
|
24600
|
+
// "Grocery Pickup and Delivery". Note the CURLY apostrophe (U+2019) — a filter written
|
|
24601
|
+
// with a straight one matches nothing. Read the values off a result, never guess from prose.
|
|
24151
24602
|
geoPoint: { latitude: number; longitude: number } | null;
|
|
24152
24603
|
}
|
|
24153
24604
|
interface SamsclubMembershipBenefit {
|
|
@@ -24176,10 +24627,10 @@ interface SamsclubMembershipPlan {
|
|
|
24176
24627
|
* availability) given the site's own numeric category id. getFuelPrices reads a specific
|
|
24177
24628
|
* club's current fuel-center prices (per grade — unleaded, premium, diesel where sold) given
|
|
24178
24629
|
* the site's own numeric club id. findClubs reads the site's own club locator for a zip code —
|
|
24179
|
-
* address, phone, hours and which real departments
|
|
24180
|
-
*
|
|
24181
|
-
* membership tiers — current price, regular price, and the full
|
|
24182
|
-
* comparison. The rest is not yet built.
|
|
24630
|
+
* address, phone, hours and which real departments each nearby club has, as the site's own
|
|
24631
|
+
* label strings (“Sam’s Fuel Station”, never “Fuel Center”). getMembershipPlans reads the
|
|
24632
|
+
* site's own published Club/Plus membership tiers — current price, regular price, and the full
|
|
24633
|
+
* stated benefit-by-tier comparison. The rest is not yet built.
|
|
24183
24634
|
*/
|
|
24184
24635
|
interface Unit {
|
|
24185
24636
|
/**
|
|
@@ -24238,8 +24689,10 @@ interface SamsclubMembershipPlan {
|
|
|
24238
24689
|
|
|
24239
24690
|
/**
|
|
24240
24691
|
* Finds nearby Sam's Club warehouse locations for a 5-digit US zip — address, phone, hours,
|
|
24241
|
-
* distance and which real customer-facing departments
|
|
24242
|
-
*
|
|
24692
|
+
* distance and which real customer-facing departments each club has, the way the site's own
|
|
24693
|
+
* club finder does. `services` carries the SITE'S OWN label strings verbatim, curly
|
|
24694
|
+
* apostrophes included (“Sam’s Fuel Station”, never “Fuel Center”) — a caller filters on a
|
|
24695
|
+
* value read off a result, never one guessed from prose. Resolves clubId for
|
|
24243
24696
|
* getFuelPrices/checkStock's clubId argument.
|
|
24244
24697
|
*/
|
|
24245
24698
|
findClubs(zip: string): Promise<SamsclubClub[]>;
|
|
@@ -24308,7 +24761,7 @@ interface SeakeeperDealer {
|
|
|
24308
24761
|
website: string;
|
|
24309
24762
|
latitude: number;
|
|
24310
24763
|
longitude: number;
|
|
24311
|
-
tier: string;
|
|
24764
|
+
tier: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
24312
24765
|
tierLabel: string;
|
|
24313
24766
|
}
|
|
24314
24767
|
interface SeakeeperNearbyDealer extends SeakeeperDealer {
|
|
@@ -25600,7 +26053,7 @@ interface StickergiantProduct {
|
|
|
25600
26053
|
priceUsd: string; // "$37.90" — per-100 stickers starting price
|
|
25601
26054
|
priceValue: number; // Same number unformatted
|
|
25602
26055
|
priceCurrency: string; // "USD"
|
|
25603
|
-
availability: string; // Schema.org URL, e.g. "https://schema.org/InStock"
|
|
26056
|
+
availability: string; // Schema.org URL, e.g. "https://schema.org/InStock" — the site's own labels — read the values off a result, never guess one from prose
|
|
25604
26057
|
imageUrl: string;
|
|
25605
26058
|
}
|
|
25606
26059
|
|
|
@@ -25929,7 +26382,7 @@ interface TargetSearchResult {
|
|
|
25929
26382
|
image: string | null;
|
|
25930
26383
|
price: number | null;
|
|
25931
26384
|
wasPrice: number | null;
|
|
25932
|
-
availabilityStatus: string | null;
|
|
26385
|
+
availabilityStatus: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
25933
26386
|
inStock: boolean;
|
|
25934
26387
|
rating: number | null;
|
|
25935
26388
|
reviewCount: number;
|
|
@@ -26042,7 +26495,7 @@ interface teladocInsuranceCoverage {
|
|
|
26042
26495
|
source: string;
|
|
26043
26496
|
headline: string;
|
|
26044
26497
|
headlinePriceUsd: number;
|
|
26045
|
-
services: string[];
|
|
26498
|
+
services: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
26046
26499
|
disclaimer: string;
|
|
26047
26500
|
}
|
|
26048
26501
|
|
|
@@ -27269,7 +27722,7 @@ interface TrojanstorageFacilitySearchFilters { state?: string; city?: string }
|
|
|
27269
27722
|
interface TrojanstorageUnit {
|
|
27270
27723
|
unitGroupId: string;
|
|
27271
27724
|
name: string; // e.g. "5x5 Upstairs Storage"
|
|
27272
|
-
features: string[];
|
|
27725
|
+
features: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
27273
27726
|
areaSqFt: number | null;
|
|
27274
27727
|
regularPrice: number | null;
|
|
27275
27728
|
promoPrice: number | null; // null when no promo is currently active
|
|
@@ -27395,7 +27848,7 @@ interface TwiddyRentalDetail {
|
|
|
27395
27848
|
streetAddress: string;
|
|
27396
27849
|
town: string;
|
|
27397
27850
|
petsAllowed: boolean;
|
|
27398
|
-
amenities: string[];
|
|
27851
|
+
amenities: string[]; // the site's own labels — read the values off a result, never guess one from prose
|
|
27399
27852
|
numberOfBedrooms: number | null;
|
|
27400
27853
|
numberOfBathrooms: number | null;
|
|
27401
27854
|
images: string[];
|
|
@@ -27897,7 +28350,7 @@ interface VisiblePhoneVariant {
|
|
|
27897
28350
|
sku: string;
|
|
27898
28351
|
storage: string | null;
|
|
27899
28352
|
color: string | null;
|
|
27900
|
-
condition: string | null;
|
|
28353
|
+
condition: string | null; // the site's own labels — read the values off a result, never guess one from prose
|
|
27901
28354
|
listPrice: number | null;
|
|
27902
28355
|
price: number | null;
|
|
27903
28356
|
monthlyPrice: number | null;
|
|
@@ -28731,7 +29184,7 @@ declare namespace BowmarkProvider_yourarborhome {
|
|
|
28731
29184
|
interface ArborHome {
|
|
28732
29185
|
uniqueName: string;
|
|
28733
29186
|
headline: string;
|
|
28734
|
-
status: string;
|
|
29187
|
+
status: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
28735
29188
|
price: number | null;
|
|
28736
29189
|
beds: number | null;
|
|
28737
29190
|
bathsFull: number | null;
|
|
@@ -28750,7 +29203,7 @@ interface SearchHomesFilters {
|
|
|
28750
29203
|
minBeds?: number;
|
|
28751
29204
|
minBaths?: number;
|
|
28752
29205
|
minSqft?: number;
|
|
28753
|
-
status?: string;
|
|
29206
|
+
status?: string; // the site's own labels — read the values off a result, never guess one from prose
|
|
28754
29207
|
}
|
|
28755
29208
|
|
|
28756
29209
|
/**
|
|
@@ -29721,6 +30174,7 @@ interface BowmarkProviders {
|
|
|
29721
30174
|
aquaphoenixsci: BowmarkProvider_aquaphoenixsci.Unit;
|
|
29722
30175
|
arajet: BowmarkProvider_arajet.Unit;
|
|
29723
30176
|
archipelago: BowmarkProvider_archipelago.Unit;
|
|
30177
|
+
archive_org: BowmarkProvider_archive_org.Unit;
|
|
29724
30178
|
artpix3d: BowmarkProvider_artpix3d.Unit;
|
|
29725
30179
|
ashleyfurniture: BowmarkProvider_ashleyfurniture.Unit;
|
|
29726
30180
|
asppoolco: BowmarkProvider_asppoolco.Unit;
|
|
@@ -29790,7 +30244,9 @@ interface BowmarkProviders {
|
|
|
29790
30244
|
chesmar: BowmarkProvider_chesmar.Unit;
|
|
29791
30245
|
chipotle: BowmarkProvider_chipotle.Unit;
|
|
29792
30246
|
chriscraft: BowmarkProvider_chriscraft.Unit;
|
|
30247
|
+
christianbrothersauto: BowmarkProvider_christianbrothersauto.Unit;
|
|
29793
30248
|
classichome: BowmarkProvider_classichome.Unit;
|
|
30249
|
+
classicrockfab: BowmarkProvider_classicrockfab.Unit;
|
|
29794
30250
|
classpass: BowmarkProvider_classpass.Unit;
|
|
29795
30251
|
claude_com: BowmarkProvider_claude_com.Unit;
|
|
29796
30252
|
claude_support: BowmarkProvider_claude_support.Unit;
|
|
@@ -29815,11 +30271,13 @@ interface BowmarkProviders {
|
|
|
29815
30271
|
dillards: BowmarkProvider_dillards.Unit;
|
|
29816
30272
|
discounttire: BowmarkProvider_discounttire.Unit;
|
|
29817
30273
|
disney: BowmarkProvider_disney.Unit;
|
|
30274
|
+
donsappliances: BowmarkProvider_donsappliances.Unit;
|
|
29818
30275
|
doordash: BowmarkProvider_doordash.Unit;
|
|
29819
30276
|
dumpsters: BowmarkProvider_dumpsters.Unit;
|
|
29820
30277
|
ebay: BowmarkProvider_ebay.Unit;
|
|
29821
30278
|
elevenlabs: BowmarkProvider_elevenlabs.Unit;
|
|
29822
30279
|
embroker: BowmarkProvider_embroker.Unit;
|
|
30280
|
+
epromos: BowmarkProvider_epromos.Unit;
|
|
29823
30281
|
eq3: BowmarkProvider_eq3.Unit;
|
|
29824
30282
|
erieinsurance: BowmarkProvider_erieinsurance.Unit;
|
|
29825
30283
|
etsy: BowmarkProvider_etsy.Unit;
|
|
@@ -29835,6 +30293,7 @@ interface BowmarkProviders {
|
|
|
29835
30293
|
flightradar24: BowmarkProvider_flightradar24.Unit;
|
|
29836
30294
|
ford: BowmarkProvider_ford.Unit;
|
|
29837
30295
|
formax: BowmarkProvider_formax.Unit;
|
|
30296
|
+
forms_hubspot_com: BowmarkProvider_forms_hubspot_com.Unit;
|
|
29838
30297
|
fourseasonsyachts: BowmarkProvider_fourseasonsyachts.Unit;
|
|
29839
30298
|
framebridge: BowmarkProvider_framebridge.Unit;
|
|
29840
30299
|
fred: BowmarkProvider_fred.Unit;
|
|
@@ -29956,6 +30415,7 @@ interface BowmarkProviders {
|
|
|
29956
30415
|
positivegrid: BowmarkProvider_positivegrid.Unit;
|
|
29957
30416
|
premierbuildings: BowmarkProvider_premierbuildings.Unit;
|
|
29958
30417
|
progressive: BowmarkProvider_progressive.Unit;
|
|
30418
|
+
prolook: BowmarkProvider_prolook.Unit;
|
|
29959
30419
|
prose: BowmarkProvider_prose.Unit;
|
|
29960
30420
|
provenwinners: BowmarkProvider_provenwinners.Unit;
|
|
29961
30421
|
proxmox: BowmarkProvider_proxmox.Unit;
|
|
@@ -81790,6 +82250,7 @@ interface BowmarkLibrary {
|
|
|
81790
82250
|
pricing: BowmarkCapability_pricing.Unit;
|
|
81791
82251
|
products: BowmarkCapability_products.Unit;
|
|
81792
82252
|
promocodes: BowmarkCapability_promocodes.Unit;
|
|
82253
|
+
prospect_screening: BowmarkCapability_prospect_screening.Unit;
|
|
81793
82254
|
read: BowmarkCapability_read.Unit;
|
|
81794
82255
|
restaurant_booking: BowmarkCapability_restaurant_booking.Unit;
|
|
81795
82256
|
retail: BowmarkCapability_retail.Unit;
|