@jablum/weather-mcp 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1319 -0
  3. package/dist/analytics/anonymizer.d.ts +37 -0
  4. package/dist/analytics/anonymizer.d.ts.map +1 -0
  5. package/dist/analytics/anonymizer.js +112 -0
  6. package/dist/analytics/anonymizer.js.map +1 -0
  7. package/dist/analytics/collector.d.ts +72 -0
  8. package/dist/analytics/collector.d.ts.map +1 -0
  9. package/dist/analytics/collector.js +282 -0
  10. package/dist/analytics/collector.js.map +1 -0
  11. package/dist/analytics/config.d.ts +15 -0
  12. package/dist/analytics/config.d.ts.map +1 -0
  13. package/dist/analytics/config.js +172 -0
  14. package/dist/analytics/config.js.map +1 -0
  15. package/dist/analytics/index.d.ts +8 -0
  16. package/dist/analytics/index.d.ts.map +1 -0
  17. package/dist/analytics/index.js +7 -0
  18. package/dist/analytics/index.js.map +1 -0
  19. package/dist/analytics/middleware.d.ts +33 -0
  20. package/dist/analytics/middleware.d.ts.map +1 -0
  21. package/dist/analytics/middleware.js +99 -0
  22. package/dist/analytics/middleware.js.map +1 -0
  23. package/dist/analytics/transport.d.ts +11 -0
  24. package/dist/analytics/transport.d.ts.map +1 -0
  25. package/dist/analytics/transport.js +92 -0
  26. package/dist/analytics/transport.js.map +1 -0
  27. package/dist/analytics/types.d.ts +74 -0
  28. package/dist/analytics/types.d.ts.map +1 -0
  29. package/dist/analytics/types.js +6 -0
  30. package/dist/analytics/types.js.map +1 -0
  31. package/dist/config/api.d.ts +30 -0
  32. package/dist/config/api.d.ts.map +1 -0
  33. package/dist/config/api.js +32 -0
  34. package/dist/config/api.js.map +1 -0
  35. package/dist/config/cache.d.ts +31 -0
  36. package/dist/config/cache.d.ts.map +1 -0
  37. package/dist/config/cache.js +108 -0
  38. package/dist/config/cache.js.map +1 -0
  39. package/dist/config/displayThresholds.d.ts +83 -0
  40. package/dist/config/displayThresholds.d.ts.map +1 -0
  41. package/dist/config/displayThresholds.js +83 -0
  42. package/dist/config/displayThresholds.js.map +1 -0
  43. package/dist/config/tools.d.ts +44 -0
  44. package/dist/config/tools.d.ts.map +1 -0
  45. package/dist/config/tools.js +269 -0
  46. package/dist/config/tools.js.map +1 -0
  47. package/dist/errors/ApiError.d.ts +62 -0
  48. package/dist/errors/ApiError.d.ts.map +1 -0
  49. package/dist/errors/ApiError.js +171 -0
  50. package/dist/errors/ApiError.js.map +1 -0
  51. package/dist/handlers/airQualityHandler.d.ts +11 -0
  52. package/dist/handlers/airQualityHandler.d.ts.map +1 -0
  53. package/dist/handlers/airQualityHandler.js +154 -0
  54. package/dist/handlers/airQualityHandler.js.map +1 -0
  55. package/dist/handlers/alertsHandler.d.ts +11 -0
  56. package/dist/handlers/alertsHandler.d.ts.map +1 -0
  57. package/dist/handlers/alertsHandler.js +98 -0
  58. package/dist/handlers/alertsHandler.js.map +1 -0
  59. package/dist/handlers/currentConditionsHandler.d.ts +13 -0
  60. package/dist/handlers/currentConditionsHandler.d.ts.map +1 -0
  61. package/dist/handlers/currentConditionsHandler.js +296 -0
  62. package/dist/handlers/currentConditionsHandler.js.map +1 -0
  63. package/dist/handlers/forecastHandler.d.ts +16 -0
  64. package/dist/handlers/forecastHandler.d.ts.map +1 -0
  65. package/dist/handlers/forecastHandler.js +454 -0
  66. package/dist/handlers/forecastHandler.js.map +1 -0
  67. package/dist/handlers/historicalWeatherHandler.d.ts +12 -0
  68. package/dist/handlers/historicalWeatherHandler.d.ts.map +1 -0
  69. package/dist/handlers/historicalWeatherHandler.js +188 -0
  70. package/dist/handlers/historicalWeatherHandler.js.map +1 -0
  71. package/dist/handlers/lightningHandler.d.ts +14 -0
  72. package/dist/handlers/lightningHandler.d.ts.map +1 -0
  73. package/dist/handlers/lightningHandler.js +258 -0
  74. package/dist/handlers/lightningHandler.js.map +1 -0
  75. package/dist/handlers/locationHandler.d.ts +12 -0
  76. package/dist/handlers/locationHandler.d.ts.map +1 -0
  77. package/dist/handlers/locationHandler.js +149 -0
  78. package/dist/handlers/locationHandler.js.map +1 -0
  79. package/dist/handlers/marineConditionsHandler.d.ts +13 -0
  80. package/dist/handlers/marineConditionsHandler.d.ts.map +1 -0
  81. package/dist/handlers/marineConditionsHandler.js +270 -0
  82. package/dist/handlers/marineConditionsHandler.js.map +1 -0
  83. package/dist/handlers/riverConditionsHandler.d.ts +11 -0
  84. package/dist/handlers/riverConditionsHandler.d.ts.map +1 -0
  85. package/dist/handlers/riverConditionsHandler.js +176 -0
  86. package/dist/handlers/riverConditionsHandler.js.map +1 -0
  87. package/dist/handlers/savedLocationsHandler.d.ts +50 -0
  88. package/dist/handlers/savedLocationsHandler.d.ts.map +1 -0
  89. package/dist/handlers/savedLocationsHandler.js +397 -0
  90. package/dist/handlers/savedLocationsHandler.js.map +1 -0
  91. package/dist/handlers/statusHandler.d.ts +12 -0
  92. package/dist/handlers/statusHandler.d.ts.map +1 -0
  93. package/dist/handlers/statusHandler.js +115 -0
  94. package/dist/handlers/statusHandler.js.map +1 -0
  95. package/dist/handlers/weatherImageryHandler.d.ts +14 -0
  96. package/dist/handlers/weatherImageryHandler.d.ts.map +1 -0
  97. package/dist/handlers/weatherImageryHandler.js +143 -0
  98. package/dist/handlers/weatherImageryHandler.js.map +1 -0
  99. package/dist/handlers/wildfireHandler.d.ts +11 -0
  100. package/dist/handlers/wildfireHandler.d.ts.map +1 -0
  101. package/dist/handlers/wildfireHandler.js +186 -0
  102. package/dist/handlers/wildfireHandler.js.map +1 -0
  103. package/dist/index.d.ts +7 -0
  104. package/dist/index.d.ts.map +1 -0
  105. package/dist/index.js +735 -0
  106. package/dist/index.js.map +1 -0
  107. package/dist/services/blitzortung.d.ts +67 -0
  108. package/dist/services/blitzortung.d.ts.map +1 -0
  109. package/dist/services/blitzortung.js +475 -0
  110. package/dist/services/blitzortung.js.map +1 -0
  111. package/dist/services/geocoding.d.ts +57 -0
  112. package/dist/services/geocoding.d.ts.map +1 -0
  113. package/dist/services/geocoding.js +393 -0
  114. package/dist/services/geocoding.js.map +1 -0
  115. package/dist/services/locationStore.d.ts +62 -0
  116. package/dist/services/locationStore.d.ts.map +1 -0
  117. package/dist/services/locationStore.js +201 -0
  118. package/dist/services/locationStore.js.map +1 -0
  119. package/dist/services/ncei.d.ts +61 -0
  120. package/dist/services/ncei.d.ts.map +1 -0
  121. package/dist/services/ncei.js +126 -0
  122. package/dist/services/ncei.js.map +1 -0
  123. package/dist/services/nifc.d.ts +44 -0
  124. package/dist/services/nifc.d.ts.map +1 -0
  125. package/dist/services/nifc.js +159 -0
  126. package/dist/services/nifc.js.map +1 -0
  127. package/dist/services/noaa.d.ts +161 -0
  128. package/dist/services/noaa.d.ts.map +1 -0
  129. package/dist/services/noaa.js +681 -0
  130. package/dist/services/noaa.js.map +1 -0
  131. package/dist/services/nominatim.d.ts +62 -0
  132. package/dist/services/nominatim.d.ts.map +1 -0
  133. package/dist/services/nominatim.js +254 -0
  134. package/dist/services/nominatim.js.map +1 -0
  135. package/dist/services/openmeteo.d.ts +189 -0
  136. package/dist/services/openmeteo.d.ts.map +1 -0
  137. package/dist/services/openmeteo.js +936 -0
  138. package/dist/services/openmeteo.js.map +1 -0
  139. package/dist/services/rainviewer.d.ts +37 -0
  140. package/dist/services/rainviewer.d.ts.map +1 -0
  141. package/dist/services/rainviewer.js +115 -0
  142. package/dist/services/rainviewer.js.map +1 -0
  143. package/dist/types/imagery.d.ts +82 -0
  144. package/dist/types/imagery.d.ts.map +1 -0
  145. package/dist/types/imagery.js +6 -0
  146. package/dist/types/imagery.js.map +1 -0
  147. package/dist/types/lightning.d.ts +89 -0
  148. package/dist/types/lightning.d.ts.map +1 -0
  149. package/dist/types/lightning.js +6 -0
  150. package/dist/types/lightning.js.map +1 -0
  151. package/dist/types/noaa.d.ts +535 -0
  152. package/dist/types/noaa.d.ts.map +1 -0
  153. package/dist/types/noaa.js +5 -0
  154. package/dist/types/noaa.js.map +1 -0
  155. package/dist/types/nominatim.d.ts +72 -0
  156. package/dist/types/nominatim.d.ts.map +1 -0
  157. package/dist/types/nominatim.js +6 -0
  158. package/dist/types/nominatim.js.map +1 -0
  159. package/dist/types/openmeteo.d.ts +583 -0
  160. package/dist/types/openmeteo.d.ts.map +1 -0
  161. package/dist/types/openmeteo.js +6 -0
  162. package/dist/types/openmeteo.js.map +1 -0
  163. package/dist/types/savedLocations.d.ts +58 -0
  164. package/dist/types/savedLocations.d.ts.map +1 -0
  165. package/dist/types/savedLocations.js +5 -0
  166. package/dist/types/savedLocations.js.map +1 -0
  167. package/dist/types/wildfire.d.ts +83 -0
  168. package/dist/types/wildfire.d.ts.map +1 -0
  169. package/dist/types/wildfire.js +5 -0
  170. package/dist/types/wildfire.js.map +1 -0
  171. package/dist/utils/airQuality.d.ts +54 -0
  172. package/dist/utils/airQuality.d.ts.map +1 -0
  173. package/dist/utils/airQuality.js +251 -0
  174. package/dist/utils/airQuality.js.map +1 -0
  175. package/dist/utils/cache.d.ts +69 -0
  176. package/dist/utils/cache.d.ts.map +1 -0
  177. package/dist/utils/cache.js +164 -0
  178. package/dist/utils/cache.js.map +1 -0
  179. package/dist/utils/distance.d.ts +25 -0
  180. package/dist/utils/distance.d.ts.map +1 -0
  181. package/dist/utils/distance.js +40 -0
  182. package/dist/utils/distance.js.map +1 -0
  183. package/dist/utils/fireWeather.d.ts +76 -0
  184. package/dist/utils/fireWeather.d.ts.map +1 -0
  185. package/dist/utils/fireWeather.js +243 -0
  186. package/dist/utils/fireWeather.js.map +1 -0
  187. package/dist/utils/geography.d.ts +79 -0
  188. package/dist/utils/geography.d.ts.map +1 -0
  189. package/dist/utils/geography.js +266 -0
  190. package/dist/utils/geography.js.map +1 -0
  191. package/dist/utils/geohash.d.ts +62 -0
  192. package/dist/utils/geohash.d.ts.map +1 -0
  193. package/dist/utils/geohash.js +146 -0
  194. package/dist/utils/geohash.js.map +1 -0
  195. package/dist/utils/locationResolver.d.ts +34 -0
  196. package/dist/utils/locationResolver.d.ts.map +1 -0
  197. package/dist/utils/locationResolver.js +120 -0
  198. package/dist/utils/locationResolver.js.map +1 -0
  199. package/dist/utils/logger.d.ts +75 -0
  200. package/dist/utils/logger.d.ts.map +1 -0
  201. package/dist/utils/logger.js +153 -0
  202. package/dist/utils/logger.js.map +1 -0
  203. package/dist/utils/marine.d.ts +59 -0
  204. package/dist/utils/marine.d.ts.map +1 -0
  205. package/dist/utils/marine.js +215 -0
  206. package/dist/utils/marine.js.map +1 -0
  207. package/dist/utils/normals.d.ts +86 -0
  208. package/dist/utils/normals.d.ts.map +1 -0
  209. package/dist/utils/normals.js +223 -0
  210. package/dist/utils/normals.js.map +1 -0
  211. package/dist/utils/snow.d.ts +45 -0
  212. package/dist/utils/snow.d.ts.map +1 -0
  213. package/dist/utils/snow.js +144 -0
  214. package/dist/utils/snow.js.map +1 -0
  215. package/dist/utils/temperatureConversion.d.ts +12 -0
  216. package/dist/utils/temperatureConversion.d.ts.map +1 -0
  217. package/dist/utils/temperatureConversion.js +17 -0
  218. package/dist/utils/temperatureConversion.js.map +1 -0
  219. package/dist/utils/timezone.d.ts +56 -0
  220. package/dist/utils/timezone.d.ts.map +1 -0
  221. package/dist/utils/timezone.js +167 -0
  222. package/dist/utils/timezone.js.map +1 -0
  223. package/dist/utils/units.d.ts +69 -0
  224. package/dist/utils/units.d.ts.map +1 -0
  225. package/dist/utils/units.js +158 -0
  226. package/dist/utils/units.js.map +1 -0
  227. package/dist/utils/validation.d.ts +89 -0
  228. package/dist/utils/validation.d.ts.map +1 -0
  229. package/dist/utils/validation.js +177 -0
  230. package/dist/utils/validation.js.map +1 -0
  231. package/dist/utils/version.d.ts +15 -0
  232. package/dist/utils/version.d.ts.map +1 -0
  233. package/dist/utils/version.js +24 -0
  234. package/dist/utils/version.js.map +1 -0
  235. package/package.json +74 -0
@@ -0,0 +1,535 @@
1
+ /**
2
+ * Type definitions for NOAA Weather API responses
3
+ */
4
+ /**
5
+ * Common properties in NOAA API responses
6
+ */
7
+ export interface NOAAResponse<T> {
8
+ '@context'?: unknown;
9
+ type?: string;
10
+ geometry?: {
11
+ type: string;
12
+ coordinates: number[];
13
+ };
14
+ properties: T;
15
+ }
16
+ /**
17
+ * Response from /points/{lat},{lon} endpoint
18
+ */
19
+ export interface PointsProperties {
20
+ '@id': string;
21
+ cwa: string;
22
+ forecastOffice: string;
23
+ gridId: string;
24
+ gridX: number;
25
+ gridY: number;
26
+ forecast: string;
27
+ forecastHourly: string;
28
+ forecastGridData: string;
29
+ observationStations: string;
30
+ relativeLocation: {
31
+ type: string;
32
+ geometry: {
33
+ type: string;
34
+ coordinates: number[];
35
+ };
36
+ properties: {
37
+ city: string;
38
+ state: string;
39
+ distance: {
40
+ unitCode: string;
41
+ value: number;
42
+ };
43
+ bearing: {
44
+ unitCode: string;
45
+ value: number;
46
+ };
47
+ };
48
+ };
49
+ forecastZone: string;
50
+ county: string;
51
+ fireWeatherZone: string;
52
+ timeZone: string;
53
+ radarStation: string;
54
+ }
55
+ export type PointsResponse = NOAAResponse<PointsProperties>;
56
+ /**
57
+ * Forecast period from /gridpoints/{office}/{x},{y}/forecast
58
+ */
59
+ export interface ForecastPeriod {
60
+ number: number;
61
+ name: string;
62
+ startTime: string;
63
+ endTime: string;
64
+ isDaytime: boolean;
65
+ temperature: number;
66
+ temperatureUnit: 'F' | 'C';
67
+ temperatureTrend?: string | null;
68
+ probabilityOfPrecipitation: {
69
+ unitCode: string;
70
+ value: number | null;
71
+ };
72
+ dewpoint: {
73
+ unitCode: string;
74
+ value: number;
75
+ };
76
+ relativeHumidity: {
77
+ unitCode: string;
78
+ value: number;
79
+ };
80
+ windSpeed: string;
81
+ windDirection: string;
82
+ icon: string;
83
+ shortForecast: string;
84
+ detailedForecast: string;
85
+ }
86
+ /**
87
+ * Response from forecast endpoints
88
+ */
89
+ export interface ForecastProperties {
90
+ updated: string;
91
+ units: string;
92
+ forecastGenerator: string;
93
+ generatedAt: string;
94
+ updateTime: string;
95
+ validTimes: string;
96
+ elevation: {
97
+ unitCode: string;
98
+ value: number;
99
+ };
100
+ periods: ForecastPeriod[];
101
+ }
102
+ export type ForecastResponse = NOAAResponse<ForecastProperties>;
103
+ /**
104
+ * Quantitative value with unit
105
+ */
106
+ export interface QuantitativeValue {
107
+ unitCode: string;
108
+ value: number | null;
109
+ qualityControl?: string;
110
+ }
111
+ /**
112
+ * Observation data from /stations/{id}/observations
113
+ */
114
+ export interface ObservationProperties {
115
+ '@id': string;
116
+ '@type': string;
117
+ elevation: QuantitativeValue;
118
+ station: string;
119
+ timestamp: string;
120
+ rawMessage?: string;
121
+ textDescription?: string;
122
+ icon?: string;
123
+ presentWeather?: Array<{
124
+ intensity?: string;
125
+ modifier?: string;
126
+ weather: string;
127
+ rawString: string;
128
+ }>;
129
+ temperature: QuantitativeValue;
130
+ dewpoint: QuantitativeValue;
131
+ windDirection?: QuantitativeValue;
132
+ windSpeed: QuantitativeValue;
133
+ windGust?: QuantitativeValue;
134
+ barometricPressure?: QuantitativeValue;
135
+ seaLevelPressure?: QuantitativeValue;
136
+ visibility?: QuantitativeValue;
137
+ maxTemperatureLast24Hours?: QuantitativeValue;
138
+ minTemperatureLast24Hours?: QuantitativeValue;
139
+ precipitationLastHour?: QuantitativeValue;
140
+ precipitationLast3Hours?: QuantitativeValue;
141
+ precipitationLast6Hours?: QuantitativeValue;
142
+ relativeHumidity: QuantitativeValue;
143
+ windChill?: QuantitativeValue;
144
+ heatIndex?: QuantitativeValue;
145
+ cloudLayers?: Array<{
146
+ base: QuantitativeValue;
147
+ amount: string;
148
+ }>;
149
+ snowDepth?: QuantitativeValue;
150
+ }
151
+ export type ObservationResponse = NOAAResponse<ObservationProperties>;
152
+ /**
153
+ * Collection of observations
154
+ */
155
+ export interface ObservationCollectionResponse {
156
+ '@context'?: unknown;
157
+ type: string;
158
+ features: ObservationResponse[];
159
+ }
160
+ /**
161
+ * Weather station information
162
+ */
163
+ export interface StationProperties {
164
+ '@id': string;
165
+ '@type': string;
166
+ elevation: QuantitativeValue;
167
+ stationIdentifier: string;
168
+ name: string;
169
+ timeZone: string;
170
+ forecast?: string;
171
+ county?: string;
172
+ fireWeatherZone?: string;
173
+ }
174
+ export type StationResponse = NOAAResponse<StationProperties>;
175
+ /**
176
+ * Collection of stations
177
+ */
178
+ export interface StationCollectionResponse {
179
+ '@context'?: unknown;
180
+ type: string;
181
+ features: StationResponse[];
182
+ observationStations?: string[];
183
+ }
184
+ /**
185
+ * Error response from NOAA API
186
+ */
187
+ export interface NOAAErrorResponse {
188
+ correlationId: string;
189
+ title: string;
190
+ type: string;
191
+ status: number;
192
+ detail: string;
193
+ instance?: string;
194
+ }
195
+ /**
196
+ * Weather alert properties from /alerts endpoint
197
+ */
198
+ export interface AlertProperties {
199
+ '@id': string;
200
+ '@type': string;
201
+ id: string;
202
+ areaDesc: string;
203
+ geocode: {
204
+ SAME?: string[];
205
+ UGC?: string[];
206
+ };
207
+ affectedZones: string[];
208
+ references: Array<{
209
+ '@id': string;
210
+ identifier: string;
211
+ sender: string;
212
+ sent: string;
213
+ }>;
214
+ sent: string;
215
+ effective: string;
216
+ onset: string | null;
217
+ expires: string;
218
+ ends: string | null;
219
+ status: 'Actual' | 'Exercise' | 'System' | 'Test' | 'Draft';
220
+ messageType: 'Alert' | 'Update' | 'Cancel' | 'Ack' | 'Error';
221
+ category: 'Met' | 'Geo' | 'Safety' | 'Security' | 'Rescue' | 'Fire' | 'Health' | 'Env' | 'Transport' | 'Infra' | 'CBRNE' | 'Other';
222
+ severity: 'Extreme' | 'Severe' | 'Moderate' | 'Minor' | 'Unknown';
223
+ certainty: 'Observed' | 'Likely' | 'Possible' | 'Unlikely' | 'Unknown';
224
+ urgency: 'Immediate' | 'Expected' | 'Future' | 'Past' | 'Unknown';
225
+ event: string;
226
+ sender: string;
227
+ senderName: string;
228
+ headline: string | null;
229
+ description: string;
230
+ instruction: string | null;
231
+ response: 'Shelter' | 'Evacuate' | 'Prepare' | 'Execute' | 'Avoid' | 'Monitor' | 'Assess' | 'AllClear' | 'None';
232
+ parameters: {
233
+ [key: string]: string[];
234
+ };
235
+ }
236
+ export type AlertResponse = NOAAResponse<AlertProperties>;
237
+ /**
238
+ * Collection of alerts from /alerts endpoint
239
+ */
240
+ export interface AlertCollectionResponse {
241
+ '@context'?: unknown;
242
+ type: string;
243
+ features: AlertResponse[];
244
+ title?: string;
245
+ updated?: string;
246
+ }
247
+ /**
248
+ * Helper type for converting units
249
+ */
250
+ export type TemperatureUnit = 'F' | 'C' | 'K';
251
+ export type SpeedUnit = 'mph' | 'kph' | 'mps' | 'knots';
252
+ export type DistanceUnit = 'miles' | 'km' | 'meters' | 'feet';
253
+ export type PressureUnit = 'mb' | 'hPa' | 'inHg' | 'Pa';
254
+ /**
255
+ * Gridpoint data value with time range
256
+ */
257
+ export interface GridpointValue {
258
+ validTime: string;
259
+ value: number;
260
+ }
261
+ /**
262
+ * Gridpoint data series
263
+ */
264
+ export interface GridpointDataSeries {
265
+ uom?: string;
266
+ values: GridpointValue[];
267
+ }
268
+ /**
269
+ * Fire weather properties from gridpoint data
270
+ */
271
+ export interface GridpointFireWeather {
272
+ grasslandFireDangerIndex?: GridpointDataSeries;
273
+ hainesIndex?: GridpointDataSeries;
274
+ redFlagThreatIndex?: GridpointDataSeries;
275
+ atmosphericDispersionIndex?: GridpointDataSeries;
276
+ mixingHeight?: GridpointDataSeries;
277
+ transportWindSpeed?: GridpointDataSeries;
278
+ transportWindDirection?: GridpointDataSeries;
279
+ twentyFootWindSpeed?: GridpointDataSeries;
280
+ twentyFootWindDirection?: GridpointDataSeries;
281
+ }
282
+ /**
283
+ * Severe weather properties from gridpoint data
284
+ */
285
+ export interface GridpointSevereWeather {
286
+ probabilityOfThunder?: GridpointDataSeries;
287
+ probabilityOfTropicalStormWinds?: GridpointDataSeries;
288
+ probabilityOfHurricaneWinds?: GridpointDataSeries;
289
+ potentialOf15mphWinds?: GridpointDataSeries;
290
+ potentialOf20mphWindGusts?: GridpointDataSeries;
291
+ potentialOf25mphWinds?: GridpointDataSeries;
292
+ potentialOf30mphWindGusts?: GridpointDataSeries;
293
+ potentialOf35mphWinds?: GridpointDataSeries;
294
+ potentialOf40mphWindGusts?: GridpointDataSeries;
295
+ potentialOf45mphWinds?: GridpointDataSeries;
296
+ potentialOf50mphWindGusts?: GridpointDataSeries;
297
+ potentialOf60mphWindGusts?: GridpointDataSeries;
298
+ lightningActivityLevel?: GridpointDataSeries;
299
+ }
300
+ /**
301
+ * Marine forecast properties from gridpoint data (Great Lakes and coastal areas)
302
+ */
303
+ export interface GridpointMarineForecast {
304
+ waveHeight?: GridpointDataSeries;
305
+ wavePeriod?: GridpointDataSeries;
306
+ wavePeriod2?: GridpointDataSeries;
307
+ waveDirection?: GridpointDataSeries;
308
+ windWaveHeight?: GridpointDataSeries;
309
+ primarySwellHeight?: GridpointDataSeries;
310
+ primarySwellDirection?: GridpointDataSeries;
311
+ secondarySwellHeight?: GridpointDataSeries;
312
+ secondarySwellDirection?: GridpointDataSeries;
313
+ }
314
+ /**
315
+ * Gridpoint properties from /gridpoints/{office}/{gridX},{gridY} endpoint
316
+ * Contains detailed forecast data including fire weather indices, severe weather, and marine conditions
317
+ */
318
+ export interface GridpointProperties extends GridpointFireWeather, GridpointSevereWeather, GridpointMarineForecast {
319
+ '@id': string;
320
+ '@type': string;
321
+ updateTime: string;
322
+ validTimes: string;
323
+ elevation: QuantitativeValue;
324
+ forecastOffice: string;
325
+ gridId: string;
326
+ gridX: number;
327
+ gridY: number;
328
+ temperature?: GridpointDataSeries;
329
+ dewpoint?: GridpointDataSeries;
330
+ relativeHumidity?: GridpointDataSeries;
331
+ apparentTemperature?: GridpointDataSeries;
332
+ heatIndex?: GridpointDataSeries;
333
+ windChill?: GridpointDataSeries;
334
+ skyCover?: GridpointDataSeries;
335
+ windDirection?: GridpointDataSeries;
336
+ windSpeed?: GridpointDataSeries;
337
+ windGust?: GridpointDataSeries;
338
+ snowfallAmount?: GridpointDataSeries;
339
+ iceAccumulation?: GridpointDataSeries;
340
+ snowLevel?: GridpointDataSeries;
341
+ weather?: {
342
+ values: Array<{
343
+ validTime: string;
344
+ value: Array<{
345
+ coverage: string | null;
346
+ weather: string | null;
347
+ intensity: string | null;
348
+ visibility: QuantitativeValue | null;
349
+ attributes: string[];
350
+ }>;
351
+ }>;
352
+ };
353
+ hazards?: {
354
+ values: Array<{
355
+ validTime: string;
356
+ value: Array<{
357
+ phenomenon: string;
358
+ significance: string;
359
+ event_number: number | null;
360
+ }>;
361
+ }>;
362
+ };
363
+ }
364
+ export type GridpointResponse = NOAAResponse<GridpointProperties>;
365
+ /**
366
+ * NWPS (National Water Prediction Service) River Gauge Types
367
+ */
368
+ /**
369
+ * Flood category levels in feet for a river gauge
370
+ */
371
+ export interface FloodCategories {
372
+ action: number;
373
+ minor: number;
374
+ moderate: number;
375
+ major: number;
376
+ }
377
+ /**
378
+ * Historical crest data for a river gauge
379
+ */
380
+ export interface HistoricCrest {
381
+ value: number;
382
+ flow?: number;
383
+ date: string;
384
+ description?: string;
385
+ }
386
+ /**
387
+ * Current status for a river gauge (observed or forecast)
388
+ */
389
+ export interface GaugeStatus {
390
+ primary: number | null;
391
+ secondary: number | null;
392
+ floodCategory: 'major' | 'moderate' | 'minor' | 'action' | 'no flooding' | null;
393
+ validTime: string;
394
+ }
395
+ /**
396
+ * River gauge metadata and current status from NWPS API
397
+ */
398
+ export interface NWPSGauge {
399
+ lid: string;
400
+ usgsId?: string;
401
+ name: string;
402
+ latitude: number;
403
+ longitude: number;
404
+ state: string;
405
+ county?: string;
406
+ timeZone: string;
407
+ wfo: string;
408
+ rfc: string;
409
+ status: {
410
+ observed?: GaugeStatus;
411
+ forecast?: GaugeStatus;
412
+ };
413
+ flood: {
414
+ categories: FloodCategories;
415
+ crests?: {
416
+ historic?: HistoricCrest[];
417
+ recent?: HistoricCrest[];
418
+ };
419
+ };
420
+ inService: boolean;
421
+ upstreamLid?: string;
422
+ downstreamLid?: string;
423
+ }
424
+ /**
425
+ * Stage/flow time series data point from NWPS stageflow endpoint
426
+ */
427
+ export interface StageFlowDataPoint {
428
+ validTime: string;
429
+ generatedTime: string;
430
+ primary: number | null;
431
+ secondary: number | null;
432
+ }
433
+ /**
434
+ * Stage/flow time series response from NWPS
435
+ */
436
+ export interface NWPSStageFlowResponse {
437
+ lid: string;
438
+ issued: string;
439
+ timeZone: string;
440
+ primaryName: string;
441
+ primaryUnits: string;
442
+ secondaryName: string;
443
+ secondaryUnits: string;
444
+ data: StageFlowDataPoint[];
445
+ }
446
+ /**
447
+ * USGS Water Services API Types
448
+ */
449
+ /**
450
+ * USGS site information
451
+ */
452
+ export interface USGSSite {
453
+ siteName: string;
454
+ siteCode: string;
455
+ network: string;
456
+ geoLocation: {
457
+ geogLocation: {
458
+ latitude: number;
459
+ longitude: number;
460
+ srs: string;
461
+ };
462
+ localSiteXY?: unknown[];
463
+ };
464
+ timeZoneInfo: {
465
+ defaultTimeZone: {
466
+ zoneOffset: string;
467
+ zoneAbbreviation: string;
468
+ };
469
+ daylightSavingsTimeZone?: {
470
+ zoneOffset: string;
471
+ zoneAbbreviation: string;
472
+ };
473
+ };
474
+ siteProperty?: Array<{
475
+ name: string;
476
+ value: string;
477
+ }>;
478
+ }
479
+ /**
480
+ * USGS variable definition (e.g., streamflow parameter 00060)
481
+ */
482
+ export interface USGSVariable {
483
+ variableCode: string;
484
+ variableName: string;
485
+ variableDescription: string;
486
+ unit: {
487
+ unitCode: string;
488
+ };
489
+ noDataValue: number;
490
+ }
491
+ /**
492
+ * USGS time series value (observation)
493
+ */
494
+ export interface USGSValue {
495
+ value: string;
496
+ qualifiers: string[];
497
+ dateTime: string;
498
+ }
499
+ /**
500
+ * USGS time series data
501
+ */
502
+ export interface USGSTimeSeries {
503
+ sourceInfo: USGSSite;
504
+ variable: USGSVariable;
505
+ values: Array<{
506
+ value: USGSValue[];
507
+ method: string[];
508
+ }>;
509
+ }
510
+ /**
511
+ * USGS Instantaneous Values (IV) response
512
+ */
513
+ export interface USGSIVResponse {
514
+ name: string;
515
+ declaredType: string;
516
+ scope: string;
517
+ value: {
518
+ queryInfo: {
519
+ queryURL: string;
520
+ criteria: {
521
+ locationParam: string;
522
+ variableParam: string;
523
+ };
524
+ note: Array<{
525
+ value: string;
526
+ title: string;
527
+ }>;
528
+ };
529
+ timeSeries: USGSTimeSeries[];
530
+ };
531
+ nil: boolean;
532
+ globalScope: boolean;
533
+ typeSubstituted: boolean;
534
+ }
535
+ //# sourceMappingURL=noaa.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noaa.d.ts","sourceRoot":"","sources":["../../src/types/noaa.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Type definitions for NOAA Weather API responses
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=noaa.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noaa.js","sourceRoot":"","sources":["../../src/types/noaa.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * TypeScript type definitions for Nominatim Geocoding API
3
+ * API Documentation: https://nominatim.org/release-docs/latest/api/Search/
4
+ */
5
+ /**
6
+ * Address components from Nominatim response
7
+ */
8
+ export interface NominatimAddress {
9
+ house_number?: string;
10
+ road?: string;
11
+ suburb?: string;
12
+ village?: string;
13
+ town?: string;
14
+ city?: string;
15
+ municipality?: string;
16
+ county?: string;
17
+ state?: string;
18
+ postcode?: string;
19
+ country?: string;
20
+ country_code?: string;
21
+ }
22
+ /**
23
+ * Single location result from Nominatim Search API
24
+ */
25
+ export interface NominatimLocation {
26
+ place_id: number;
27
+ licence: string;
28
+ osm_type: string;
29
+ osm_id: number;
30
+ lat: string;
31
+ lon: string;
32
+ display_name: string;
33
+ address?: NominatimAddress;
34
+ boundingbox?: string[];
35
+ class?: string;
36
+ type?: string;
37
+ importance?: number;
38
+ icon?: string;
39
+ }
40
+ /**
41
+ * Error response from Nominatim API
42
+ */
43
+ export interface NominatimErrorResponse {
44
+ error: string;
45
+ }
46
+ /**
47
+ * Mapped location result for compatibility with existing GeocodingLocation interface
48
+ */
49
+ export interface MappedGeocodingLocation {
50
+ id: number;
51
+ name: string;
52
+ latitude: number;
53
+ longitude: number;
54
+ elevation?: number;
55
+ feature_code?: string;
56
+ country_code?: string;
57
+ country?: string;
58
+ timezone?: string;
59
+ population?: number;
60
+ admin1?: string;
61
+ admin2?: string;
62
+ admin3?: string;
63
+ admin4?: string;
64
+ }
65
+ /**
66
+ * Response format compatible with existing GeocodingResponse interface
67
+ */
68
+ export interface MappedGeocodingResponse {
69
+ results?: MappedGeocodingLocation[];
70
+ generationtime_ms?: number;
71
+ }
72
+ //# sourceMappingURL=nominatim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nominatim.d.ts","sourceRoot":"","sources":["../../src/types/nominatim.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACpC,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * TypeScript type definitions for Nominatim Geocoding API
3
+ * API Documentation: https://nominatim.org/release-docs/latest/api/Search/
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=nominatim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nominatim.js","sourceRoot":"","sources":["../../src/types/nominatim.ts"],"names":[],"mappings":"AAAA;;;GAGG"}