ws-dottie
Version:
Your friendly TypeScript companion for Washington State transportation APIs - WSDOT and WSF data with smart caching and React Query integration
106 lines (85 loc) • 4.27 kB
TypeScript
import { A as ApiDefinition, a as Endpoint, b as EndpointParams, c as EndpointResponse } from '../types--a4yiYtQ.js';
export { d as ApiMeta, C as CacheStrategy, E as EndpointGroupMeta, e as EndpointMeta, F as FetchEndpoint, R as ResourceDocumentation } from '../types--a4yiYtQ.js';
import 'zod';
declare const wsdotBorderCrossings: ApiDefinition;
declare const wsdotBridgeClearances: ApiDefinition;
declare const wsdotCommercialVehicleRestrictions: ApiDefinition;
declare const wsdotHighwayAlerts: ApiDefinition;
declare const wsdotHighwayCameras: ApiDefinition;
declare const wsdotMountainPassConditions: ApiDefinition;
declare const wsdotTollRates: ApiDefinition;
declare const wsdotTrafficFlow: ApiDefinition;
declare const wsdotTravelTimes: ApiDefinition;
declare const wsdotWeatherInformation: ApiDefinition;
declare const wsdotWeatherReadings: ApiDefinition;
declare const wsdotWeatherStations: ApiDefinition;
declare const wsfFares: ApiDefinition;
declare const wsfSchedule: ApiDefinition;
declare const wsfTerminals: ApiDefinition;
declare const wsfVessels: ApiDefinition;
/**
* @fileoverview Endpoint Registry
*
* This module provides a centralized registry of all endpoints from the new
* API structure. It automatically discovers all endpoints by iterating through
* the API graph: apis -> endpointGroups -> endpoints.
*
* ## Exports
*
* **`endpointsByApi`** - Nested structure organized by API name, then endpoint group, then function name.
* Useful for direct hierarchical access when you know the full path to an endpoint.
*
* ```typescript
* const endpoint = endpointsByApi['wsf-vessels']['vesselBasics']['vesselBasics'];
* ```
*
* **`endpointsFlat`** - Flat array of all endpoints from all APIs. Ideal for iteration,
* searching, and filtering operations. This is the primary export used by most consumers
* (CLI, E2E tests, documentation generation).
*
* ```typescript
* const endpoint = endpointsFlat.find(ep => ep.functionName === 'vesselBasics');
* ```
*/
/**
* All endpoints organized by API name, then endpoint group, then function name
*
* This nested structure provides organized access to endpoints by their
* hierarchical structure: API -> Endpoint Group -> Function Name.
* Useful for programmatic access when you know the API and group structure.
*/
declare const endpointsByApi: Record<string, Record<string, Record<string, Endpoint<EndpointParams, EndpointResponse>>>>;
/**
* All endpoints from all APIs as a flat array
*
* This array contains all endpoints from all APIs flattened into a single
* array for easy iteration and processing by CLI and e2e tests.
* Endpoints are automatically discovered by iterating through the API graph:
* apis -> endpointGroups -> endpoints.
*/
declare const endpointsFlat: Endpoint<EndpointParams, EndpointResponse>[];
/**
* All APIs as a simple object for iteration and programmatic access
*
* This object provides access to all APIs for consumers that need to
* iterate over them or access them programmatically.
*/
declare const apis: {
readonly wsdotBorderCrossings: ApiDefinition;
readonly wsdotBridgeClearances: ApiDefinition;
readonly wsdotCommercialVehicleRestrictions: ApiDefinition;
readonly wsdotHighwayAlerts: ApiDefinition;
readonly wsdotHighwayCameras: ApiDefinition;
readonly wsdotMountainPassConditions: ApiDefinition;
readonly wsdotTollRates: ApiDefinition;
readonly wsdotTrafficFlow: ApiDefinition;
readonly wsdotTravelTimes: ApiDefinition;
readonly wsdotWeatherInformation: ApiDefinition;
readonly wsdotWeatherReadings: ApiDefinition;
readonly wsdotWeatherStations: ApiDefinition;
readonly wsfFares: ApiDefinition;
readonly wsfSchedule: ApiDefinition;
readonly wsfTerminals: ApiDefinition;
readonly wsfVessels: ApiDefinition;
};
export { ApiDefinition, Endpoint, EndpointParams, EndpointResponse, apis, endpointsByApi, endpointsFlat, wsdotBorderCrossings, wsdotBridgeClearances, wsdotCommercialVehicleRestrictions, wsdotHighwayAlerts, wsdotHighwayCameras, wsdotMountainPassConditions, wsdotTollRates, wsdotTrafficFlow, wsdotTravelTimes, wsdotWeatherInformation, wsdotWeatherReadings, wsdotWeatherStations, wsfFares, wsfSchedule, wsfTerminals, wsfVessels };