@honua/react 0.0.20-alpha.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 (597) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +9 -0
  3. package/contract/analytics-sources.d.ts +149 -0
  4. package/contract/analytics-sources.d.ts.map +1 -0
  5. package/contract/analytics-sources.js +235 -0
  6. package/contract/edit-session.d.ts +203 -0
  7. package/contract/edit-session.d.ts.map +1 -0
  8. package/contract/edit-session.js +760 -0
  9. package/contract/edit-sketch.d.ts +91 -0
  10. package/contract/edit-sketch.d.ts.map +1 -0
  11. package/contract/edit-sketch.js +281 -0
  12. package/contract/index.d.ts +61 -0
  13. package/contract/index.d.ts.map +1 -0
  14. package/contract/index.js +51 -0
  15. package/contract/jobs.d.ts +149 -0
  16. package/contract/jobs.d.ts.map +1 -0
  17. package/contract/jobs.js +40 -0
  18. package/contract/source.d.ts +423 -0
  19. package/contract/source.d.ts.map +1 -0
  20. package/contract/source.js +3802 -0
  21. package/contract/spatial-aggregation.d.ts +336 -0
  22. package/contract/spatial-aggregation.d.ts.map +1 -0
  23. package/contract/spatial-aggregation.js +298 -0
  24. package/contract/temporal.d.ts +455 -0
  25. package/contract/temporal.d.ts.map +1 -0
  26. package/contract/temporal.js +146 -0
  27. package/contract/tiles.d.ts +370 -0
  28. package/contract/tiles.d.ts.map +1 -0
  29. package/contract/tiles.js +519 -0
  30. package/contract/types.d.ts +665 -0
  31. package/contract/types.d.ts.map +1 -0
  32. package/contract/types.js +175 -0
  33. package/contract/widget-source.d.ts +205 -0
  34. package/contract/widget-source.d.ts.map +1 -0
  35. package/contract/widget-source.js +1473 -0
  36. package/control-plane/client.d.ts +95 -0
  37. package/control-plane/client.d.ts.map +1 -0
  38. package/control-plane/client.js +374 -0
  39. package/control-plane/index.d.ts +18 -0
  40. package/control-plane/index.d.ts.map +1 -0
  41. package/control-plane/index.js +14 -0
  42. package/control-plane/types.d.ts +233 -0
  43. package/control-plane/types.d.ts.map +1 -0
  44. package/control-plane/types.js +7 -0
  45. package/core/batch.d.ts +37 -0
  46. package/core/batch.d.ts.map +1 -0
  47. package/core/batch.js +79 -0
  48. package/core/cache-state.d.ts +79 -0
  49. package/core/cache-state.d.ts.map +1 -0
  50. package/core/cache-state.js +87 -0
  51. package/core/client.d.ts +577 -0
  52. package/core/client.d.ts.map +1 -0
  53. package/core/client.js +1664 -0
  54. package/core/compatibility.d.ts +18 -0
  55. package/core/compatibility.d.ts.map +1 -0
  56. package/core/compatibility.js +245 -0
  57. package/core/errors.d.ts +107 -0
  58. package/core/errors.d.ts.map +1 -0
  59. package/core/errors.js +156 -0
  60. package/core/esri-geojson.d.ts +66 -0
  61. package/core/esri-geojson.d.ts.map +1 -0
  62. package/core/esri-geojson.js +363 -0
  63. package/core/geoservices.d.ts +34 -0
  64. package/core/geoservices.d.ts.map +1 -0
  65. package/core/geoservices.js +434 -0
  66. package/core/grpc-adapter.d.ts +23 -0
  67. package/core/grpc-adapter.d.ts.map +1 -0
  68. package/core/grpc-adapter.js +688 -0
  69. package/core/odata.d.ts +347 -0
  70. package/core/odata.d.ts.map +1 -0
  71. package/core/odata.js +913 -0
  72. package/core/ogc-conformance.d.ts +35 -0
  73. package/core/ogc-conformance.d.ts.map +1 -0
  74. package/core/ogc-conformance.js +134 -0
  75. package/core/ogc-features.d.ts +23 -0
  76. package/core/ogc-features.d.ts.map +1 -0
  77. package/core/ogc-features.js +114 -0
  78. package/core/ogc-maps.d.ts +49 -0
  79. package/core/ogc-maps.d.ts.map +1 -0
  80. package/core/ogc-maps.js +126 -0
  81. package/core/ogc-processes.d.ts +118 -0
  82. package/core/ogc-processes.d.ts.map +1 -0
  83. package/core/ogc-processes.js +423 -0
  84. package/core/ogc-records.d.ts +75 -0
  85. package/core/ogc-records.d.ts.map +1 -0
  86. package/core/ogc-records.js +251 -0
  87. package/core/ogc-tiles.d.ts +125 -0
  88. package/core/ogc-tiles.d.ts.map +1 -0
  89. package/core/ogc-tiles.js +183 -0
  90. package/core/path-utils.d.ts +69 -0
  91. package/core/path-utils.d.ts.map +1 -0
  92. package/core/path-utils.js +123 -0
  93. package/core/pbf-decoder.d.ts +39 -0
  94. package/core/pbf-decoder.d.ts.map +1 -0
  95. package/core/pbf-decoder.js +702 -0
  96. package/core/process-runner.d.ts +104 -0
  97. package/core/process-runner.d.ts.map +1 -0
  98. package/core/process-runner.js +315 -0
  99. package/core/protocol-transport.d.ts +76 -0
  100. package/core/protocol-transport.d.ts.map +1 -0
  101. package/core/protocol-transport.js +15 -0
  102. package/core/query-builder.d.ts +261 -0
  103. package/core/query-builder.d.ts.map +1 -0
  104. package/core/query-builder.js +538 -0
  105. package/core/request-pipeline.d.ts +88 -0
  106. package/core/request-pipeline.d.ts.map +1 -0
  107. package/core/request-pipeline.js +273 -0
  108. package/core/spatial-filter.d.ts +93 -0
  109. package/core/spatial-filter.d.ts.map +1 -0
  110. package/core/spatial-filter.js +153 -0
  111. package/core/stac.d.ts +55 -0
  112. package/core/stac.d.ts.map +1 -0
  113. package/core/stac.js +229 -0
  114. package/core/surfaces.d.ts +527 -0
  115. package/core/surfaces.d.ts.map +1 -0
  116. package/core/surfaces.js +1917 -0
  117. package/core/terrain-elevation.d.ts +114 -0
  118. package/core/terrain-elevation.d.ts.map +1 -0
  119. package/core/terrain-elevation.js +150 -0
  120. package/core/types.d.ts +1355 -0
  121. package/core/types.d.ts.map +1 -0
  122. package/core/types.js +13 -0
  123. package/core/wfs-capabilities.d.ts +143 -0
  124. package/core/wfs-capabilities.d.ts.map +1 -0
  125. package/core/wfs-capabilities.js +478 -0
  126. package/core/wfs-filter.d.ts +118 -0
  127. package/core/wfs-filter.d.ts.map +1 -0
  128. package/core/wfs-filter.js +634 -0
  129. package/core/wfs.d.ts +219 -0
  130. package/core/wfs.d.ts.map +1 -0
  131. package/core/wfs.js +406 -0
  132. package/core/wire-shared.d.ts +32 -0
  133. package/core/wire-shared.d.ts.map +1 -0
  134. package/core/wire-shared.js +76 -0
  135. package/core/wms-axis.d.ts +36 -0
  136. package/core/wms-axis.d.ts.map +1 -0
  137. package/core/wms-axis.js +73 -0
  138. package/core/wms-capabilities.d.ts +110 -0
  139. package/core/wms-capabilities.d.ts.map +1 -0
  140. package/core/wms-capabilities.js +559 -0
  141. package/core/wms-types.d.ts +128 -0
  142. package/core/wms-types.d.ts.map +1 -0
  143. package/core/wms-types.js +32 -0
  144. package/core/wms.d.ts +144 -0
  145. package/core/wms.d.ts.map +1 -0
  146. package/core/wms.js +338 -0
  147. package/core/wmts-capabilities.d.ts +82 -0
  148. package/core/wmts-capabilities.d.ts.map +1 -0
  149. package/core/wmts-capabilities.js +402 -0
  150. package/core/wmts.d.ts +103 -0
  151. package/core/wmts.d.ts.map +1 -0
  152. package/core/wmts.js +332 -0
  153. package/core/xml-text.d.ts +20 -0
  154. package/core/xml-text.d.ts.map +1 -0
  155. package/core/xml-text.js +85 -0
  156. package/esri-compat/basemap-gallery.d.ts +38 -0
  157. package/esri-compat/basemap-gallery.d.ts.map +1 -0
  158. package/esri-compat/basemap-gallery.js +159 -0
  159. package/esri-compat/basemap-layer-list.d.ts +35 -0
  160. package/esri-compat/basemap-layer-list.d.ts.map +1 -0
  161. package/esri-compat/basemap-layer-list.js +139 -0
  162. package/esri-compat/basemap.d.ts +32 -0
  163. package/esri-compat/basemap.d.ts.map +1 -0
  164. package/esri-compat/basemap.js +84 -0
  165. package/esri-compat/bookmarks.d.ts +36 -0
  166. package/esri-compat/bookmarks.d.ts.map +1 -0
  167. package/esri-compat/bookmarks.js +108 -0
  168. package/esri-compat/class-breaks-renderer.d.ts +50 -0
  169. package/esri-compat/class-breaks-renderer.d.ts.map +1 -0
  170. package/esri-compat/class-breaks-renderer.js +164 -0
  171. package/esri-compat/color.d.ts +22 -0
  172. package/esri-compat/color.d.ts.map +1 -0
  173. package/esri-compat/color.js +106 -0
  174. package/esri-compat/controls.d.ts +174 -0
  175. package/esri-compat/controls.d.ts.map +1 -0
  176. package/esri-compat/controls.js +479 -0
  177. package/esri-compat/coordinate-conversion.d.ts +41 -0
  178. package/esri-compat/coordinate-conversion.d.ts.map +1 -0
  179. package/esri-compat/coordinate-conversion.js +125 -0
  180. package/esri-compat/directions.d.ts +45 -0
  181. package/esri-compat/directions.d.ts.map +1 -0
  182. package/esri-compat/directions.js +123 -0
  183. package/esri-compat/editor.d.ts +47 -0
  184. package/esri-compat/editor.d.ts.map +1 -0
  185. package/esri-compat/editor.js +170 -0
  186. package/esri-compat/esri-config.d.ts +16 -0
  187. package/esri-compat/esri-config.d.ts.map +1 -0
  188. package/esri-compat/esri-config.js +23 -0
  189. package/esri-compat/esri-request.d.ts +17 -0
  190. package/esri-compat/esri-request.d.ts.map +1 -0
  191. package/esri-compat/esri-request.js +127 -0
  192. package/esri-compat/event-bus.d.ts +106 -0
  193. package/esri-compat/event-bus.d.ts.map +1 -0
  194. package/esri-compat/event-bus.js +90 -0
  195. package/esri-compat/expand.d.ts +36 -0
  196. package/esri-compat/expand.d.ts.map +1 -0
  197. package/esri-compat/expand.js +97 -0
  198. package/esri-compat/extent.d.ts +43 -0
  199. package/esri-compat/extent.d.ts.map +1 -0
  200. package/esri-compat/extent.js +140 -0
  201. package/esri-compat/feature-filter.d.ts +55 -0
  202. package/esri-compat/feature-filter.d.ts.map +1 -0
  203. package/esri-compat/feature-filter.js +109 -0
  204. package/esri-compat/feature-form.d.ts +64 -0
  205. package/esri-compat/feature-form.d.ts.map +1 -0
  206. package/esri-compat/feature-form.js +137 -0
  207. package/esri-compat/feature-layer.d.ts +173 -0
  208. package/esri-compat/feature-layer.d.ts.map +1 -0
  209. package/esri-compat/feature-layer.js +661 -0
  210. package/esri-compat/feature-set.d.ts +32 -0
  211. package/esri-compat/feature-set.d.ts.map +1 -0
  212. package/esri-compat/feature-set.js +80 -0
  213. package/esri-compat/feature-table.d.ts +141 -0
  214. package/esri-compat/feature-table.d.ts.map +1 -0
  215. package/esri-compat/feature-table.js +500 -0
  216. package/esri-compat/feature-templates.d.ts +41 -0
  217. package/esri-compat/feature-templates.d.ts.map +1 -0
  218. package/esri-compat/feature-templates.js +97 -0
  219. package/esri-compat/feature.d.ts +33 -0
  220. package/esri-compat/feature.d.ts.map +1 -0
  221. package/esri-compat/feature.js +83 -0
  222. package/esri-compat/geojson-layer.d.ts +86 -0
  223. package/esri-compat/geojson-layer.d.ts.map +1 -0
  224. package/esri-compat/geojson-layer.js +191 -0
  225. package/esri-compat/geometry-engine.d.ts +107 -0
  226. package/esri-compat/geometry-engine.d.ts.map +1 -0
  227. package/esri-compat/geometry-engine.js +266 -0
  228. package/esri-compat/graphic.d.ts +46 -0
  229. package/esri-compat/graphic.d.ts.map +1 -0
  230. package/esri-compat/graphic.js +103 -0
  231. package/esri-compat/graphics-layer.d.ts +49 -0
  232. package/esri-compat/graphics-layer.d.ts.map +1 -0
  233. package/esri-compat/graphics-layer.js +185 -0
  234. package/esri-compat/group-layer.d.ts +48 -0
  235. package/esri-compat/group-layer.d.ts.map +1 -0
  236. package/esri-compat/group-layer.js +212 -0
  237. package/esri-compat/identify.d.ts +71 -0
  238. package/esri-compat/identify.d.ts.map +1 -0
  239. package/esri-compat/identify.js +299 -0
  240. package/esri-compat/identity-manager.d.ts +31 -0
  241. package/esri-compat/identity-manager.d.ts.map +1 -0
  242. package/esri-compat/identity-manager.js +115 -0
  243. package/esri-compat/imagery-layer.d.ts +78 -0
  244. package/esri-compat/imagery-layer.d.ts.map +1 -0
  245. package/esri-compat/imagery-layer.js +167 -0
  246. package/esri-compat/label-class.d.ts +31 -0
  247. package/esri-compat/label-class.d.ts.map +1 -0
  248. package/esri-compat/label-class.js +102 -0
  249. package/esri-compat/layer-list.d.ts +77 -0
  250. package/esri-compat/layer-list.d.ts.map +1 -0
  251. package/esri-compat/layer-list.js +342 -0
  252. package/esri-compat/legend.d.ts +53 -0
  253. package/esri-compat/legend.d.ts.map +1 -0
  254. package/esri-compat/legend.js +254 -0
  255. package/esri-compat/map-image-layer.d.ts +162 -0
  256. package/esri-compat/map-image-layer.d.ts.map +1 -0
  257. package/esri-compat/map-image-layer.js +709 -0
  258. package/esri-compat/map-view.d.ts +323 -0
  259. package/esri-compat/map-view.d.ts.map +1 -0
  260. package/esri-compat/map-view.js +1175 -0
  261. package/esri-compat/map.d.ts +47 -0
  262. package/esri-compat/map.d.ts.map +1 -0
  263. package/esri-compat/map.js +209 -0
  264. package/esri-compat/measurement-2d.d.ts +61 -0
  265. package/esri-compat/measurement-2d.d.ts.map +1 -0
  266. package/esri-compat/measurement-2d.js +184 -0
  267. package/esri-compat/measurement.d.ts +45 -0
  268. package/esri-compat/measurement.d.ts.map +1 -0
  269. package/esri-compat/measurement.js +193 -0
  270. package/esri-compat/oauth-info.d.ts +35 -0
  271. package/esri-compat/oauth-info.d.ts.map +1 -0
  272. package/esri-compat/oauth-info.js +115 -0
  273. package/esri-compat/picture-marker-symbol.d.ts +35 -0
  274. package/esri-compat/picture-marker-symbol.d.ts.map +1 -0
  275. package/esri-compat/picture-marker-symbol.js +126 -0
  276. package/esri-compat/point.d.ts +31 -0
  277. package/esri-compat/point.d.ts.map +1 -0
  278. package/esri-compat/point.js +102 -0
  279. package/esri-compat/polygon.d.ts +31 -0
  280. package/esri-compat/polygon.d.ts.map +1 -0
  281. package/esri-compat/polygon.js +107 -0
  282. package/esri-compat/polyline.d.ts +31 -0
  283. package/esri-compat/polyline.d.ts.map +1 -0
  284. package/esri-compat/polyline.js +107 -0
  285. package/esri-compat/popup-template.d.ts +55 -0
  286. package/esri-compat/popup-template.d.ts.map +1 -0
  287. package/esri-compat/popup-template.js +128 -0
  288. package/esri-compat/popup.d.ts +54 -0
  289. package/esri-compat/popup.d.ts.map +1 -0
  290. package/esri-compat/popup.js +312 -0
  291. package/esri-compat/print.d.ts +47 -0
  292. package/esri-compat/print.d.ts.map +1 -0
  293. package/esri-compat/print.js +105 -0
  294. package/esri-compat/query.d.ts +58 -0
  295. package/esri-compat/query.d.ts.map +1 -0
  296. package/esri-compat/query.js +128 -0
  297. package/esri-compat/reactive-utils.d.ts +24 -0
  298. package/esri-compat/reactive-utils.d.ts.map +1 -0
  299. package/esri-compat/reactive-utils.js +193 -0
  300. package/esri-compat/request.d.ts +41 -0
  301. package/esri-compat/request.d.ts.map +1 -0
  302. package/esri-compat/request.js +253 -0
  303. package/esri-compat/route-layer.d.ts +59 -0
  304. package/esri-compat/route-layer.d.ts.map +1 -0
  305. package/esri-compat/route-layer.js +223 -0
  306. package/esri-compat/route-task.d.ts +88 -0
  307. package/esri-compat/route-task.d.ts.map +1 -0
  308. package/esri-compat/route-task.js +225 -0
  309. package/esri-compat/scene-view.d.ts +41 -0
  310. package/esri-compat/scene-view.d.ts.map +1 -0
  311. package/esri-compat/scene-view.js +68 -0
  312. package/esri-compat/search.d.ts +112 -0
  313. package/esri-compat/search.d.ts.map +1 -0
  314. package/esri-compat/search.js +820 -0
  315. package/esri-compat/simple-fill-symbol.d.ts +27 -0
  316. package/esri-compat/simple-fill-symbol.d.ts.map +1 -0
  317. package/esri-compat/simple-fill-symbol.js +85 -0
  318. package/esri-compat/simple-line-symbol.d.ts +27 -0
  319. package/esri-compat/simple-line-symbol.d.ts.map +1 -0
  320. package/esri-compat/simple-line-symbol.js +85 -0
  321. package/esri-compat/simple-marker-symbol.d.ts +29 -0
  322. package/esri-compat/simple-marker-symbol.d.ts.map +1 -0
  323. package/esri-compat/simple-marker-symbol.js +92 -0
  324. package/esri-compat/simple-renderer.d.ts +29 -0
  325. package/esri-compat/simple-renderer.d.ts.map +1 -0
  326. package/esri-compat/simple-renderer.js +92 -0
  327. package/esri-compat/sketch.d.ts +64 -0
  328. package/esri-compat/sketch.d.ts.map +1 -0
  329. package/esri-compat/sketch.js +227 -0
  330. package/esri-compat/spatial-reference.d.ts +31 -0
  331. package/esri-compat/spatial-reference.d.ts.map +1 -0
  332. package/esri-compat/spatial-reference.js +102 -0
  333. package/esri-compat/swipe.d.ts +34 -0
  334. package/esri-compat/swipe.d.ts.map +1 -0
  335. package/esri-compat/swipe.js +93 -0
  336. package/esri-compat/table-list.d.ts +36 -0
  337. package/esri-compat/table-list.d.ts.map +1 -0
  338. package/esri-compat/table-list.js +126 -0
  339. package/esri-compat/text-symbol.d.ts +37 -0
  340. package/esri-compat/text-symbol.d.ts.map +1 -0
  341. package/esri-compat/text-symbol.js +123 -0
  342. package/esri-compat/tile-layer.d.ts +52 -0
  343. package/esri-compat/tile-layer.d.ts.map +1 -0
  344. package/esri-compat/tile-layer.js +168 -0
  345. package/esri-compat/time-slider.d.ts +70 -0
  346. package/esri-compat/time-slider.d.ts.map +1 -0
  347. package/esri-compat/time-slider.js +208 -0
  348. package/esri-compat/track.d.ts +51 -0
  349. package/esri-compat/track.d.ts.map +1 -0
  350. package/esri-compat/track.js +174 -0
  351. package/esri-compat/unique-value-renderer.d.ts +41 -0
  352. package/esri-compat/unique-value-renderer.d.ts.map +1 -0
  353. package/esri-compat/unique-value-renderer.js +127 -0
  354. package/esri-compat/url.d.ts +13 -0
  355. package/esri-compat/url.d.ts.map +1 -0
  356. package/esri-compat/url.js +68 -0
  357. package/esri-compat/vector-tile-layer.d.ts +47 -0
  358. package/esri-compat/vector-tile-layer.d.ts.map +1 -0
  359. package/esri-compat/vector-tile-layer.js +130 -0
  360. package/esri-compat/web-map.d.ts +14 -0
  361. package/esri-compat/web-map.d.ts.map +1 -0
  362. package/esri-compat/web-map.js +24 -0
  363. package/esri-compat/wfs-layer.d.ts +64 -0
  364. package/esri-compat/wfs-layer.d.ts.map +1 -0
  365. package/esri-compat/wfs-layer.js +145 -0
  366. package/esri-compat/wms-layer.d.ts +76 -0
  367. package/esri-compat/wms-layer.d.ts.map +1 -0
  368. package/esri-compat/wms-layer.js +157 -0
  369. package/exploration/context.d.ts +25 -0
  370. package/exploration/context.d.ts.map +1 -0
  371. package/exploration/context.js +396 -0
  372. package/exploration/index.d.ts +27 -0
  373. package/exploration/index.d.ts.map +1 -0
  374. package/exploration/index.js +24 -0
  375. package/exploration/presets.d.ts +27 -0
  376. package/exploration/presets.d.ts.map +1 -0
  377. package/exploration/presets.js +114 -0
  378. package/exploration/reducer.d.ts +23 -0
  379. package/exploration/reducer.d.ts.map +1 -0
  380. package/exploration/reducer.js +332 -0
  381. package/exploration/selection.d.ts +25 -0
  382. package/exploration/selection.d.ts.map +1 -0
  383. package/exploration/selection.js +34 -0
  384. package/exploration/selectors.d.ts +56 -0
  385. package/exploration/selectors.d.ts.map +1 -0
  386. package/exploration/selectors.js +110 -0
  387. package/exploration/types.d.ts +294 -0
  388. package/exploration/types.d.ts.map +1 -0
  389. package/exploration/types.js +33 -0
  390. package/expr/expression.d.ts +457 -0
  391. package/expr/expression.d.ts.map +1 -0
  392. package/expr/expression.js +663 -0
  393. package/expr/index.d.ts +32 -0
  394. package/expr/index.d.ts.map +1 -0
  395. package/expr/index.js +30 -0
  396. package/gen/honua/v1/feature_service_pb.d.ts +918 -0
  397. package/gen/honua/v1/feature_service_pb.d.ts.map +1 -0
  398. package/gen/honua/v1/feature_service_pb.js +375 -0
  399. package/generated-app/errors.d.ts +41 -0
  400. package/generated-app/errors.d.ts.map +1 -0
  401. package/generated-app/errors.js +41 -0
  402. package/generated-app/index.d.ts +17 -0
  403. package/generated-app/index.d.ts.map +1 -0
  404. package/generated-app/index.js +12 -0
  405. package/generated-app/manifest.d.ts +183 -0
  406. package/generated-app/manifest.d.ts.map +1 -0
  407. package/generated-app/manifest.js +14 -0
  408. package/generated-app/projection.d.ts +44 -0
  409. package/generated-app/projection.d.ts.map +1 -0
  410. package/generated-app/projection.js +234 -0
  411. package/generated-app/runtime.d.ts +215 -0
  412. package/generated-app/runtime.d.ts.map +1 -0
  413. package/generated-app/runtime.js +1196 -0
  414. package/interactions/detail-model.d.ts +54 -0
  415. package/interactions/detail-model.d.ts.map +1 -0
  416. package/interactions/detail-model.js +105 -0
  417. package/interactions/exploration-bindings.d.ts +120 -0
  418. package/interactions/exploration-bindings.d.ts.map +1 -0
  419. package/interactions/exploration-bindings.js +218 -0
  420. package/interactions/feature-state.d.ts +144 -0
  421. package/interactions/feature-state.d.ts.map +1 -0
  422. package/interactions/feature-state.js +169 -0
  423. package/interactions/hit-test.d.ts +112 -0
  424. package/interactions/hit-test.d.ts.map +1 -0
  425. package/interactions/hit-test.js +291 -0
  426. package/interactions/index.d.ts +31 -0
  427. package/interactions/index.d.ts.map +1 -0
  428. package/interactions/index.js +24 -0
  429. package/interactions/share-state.d.ts +36 -0
  430. package/interactions/share-state.d.ts.map +1 -0
  431. package/interactions/share-state.js +123 -0
  432. package/map/feature-service-adapter.d.ts +138 -0
  433. package/map/feature-service-adapter.d.ts.map +1 -0
  434. package/map/feature-service-adapter.js +279 -0
  435. package/map/honua-map.d.ts +203 -0
  436. package/map/honua-map.d.ts.map +1 -0
  437. package/map/honua-map.js +347 -0
  438. package/map/index.d.ts +27 -0
  439. package/map/index.d.ts.map +1 -0
  440. package/map/index.js +22 -0
  441. package/map/maplibre-target.d.ts +103 -0
  442. package/map/maplibre-target.d.ts.map +1 -0
  443. package/map/maplibre-target.js +164 -0
  444. package/map/webmap-maplibre.d.ts +60 -0
  445. package/map/webmap-maplibre.d.ts.map +1 -0
  446. package/map/webmap-maplibre.js +212 -0
  447. package/package.json +37 -0
  448. package/react/context.d.ts +32 -0
  449. package/react/context.d.ts.map +1 -0
  450. package/react/context.js +19 -0
  451. package/react/honua-layer.d.ts +35 -0
  452. package/react/honua-layer.d.ts.map +1 -0
  453. package/react/honua-layer.js +47 -0
  454. package/react/honua-map.d.ts +83 -0
  455. package/react/honua-map.d.ts.map +1 -0
  456. package/react/honua-map.js +109 -0
  457. package/react/honua-popup.d.ts +26 -0
  458. package/react/honua-popup.d.ts.map +1 -0
  459. package/react/honua-popup.js +34 -0
  460. package/react/hooks.d.ts +127 -0
  461. package/react/hooks.d.ts.map +1 -0
  462. package/react/hooks.js +206 -0
  463. package/react/index.d.ts +42 -0
  464. package/react/index.d.ts.map +1 -0
  465. package/react/index.js +34 -0
  466. package/react/provider.d.ts +36 -0
  467. package/react/provider.d.ts.map +1 -0
  468. package/react/provider.js +35 -0
  469. package/react/query-cache.d.ts +76 -0
  470. package/react/query-cache.d.ts.map +1 -0
  471. package/react/query-cache.js +188 -0
  472. package/runtime/diff.d.ts +31 -0
  473. package/runtime/diff.d.ts.map +1 -0
  474. package/runtime/diff.js +143 -0
  475. package/runtime/errors.d.ts +40 -0
  476. package/runtime/errors.d.ts.map +1 -0
  477. package/runtime/errors.js +35 -0
  478. package/runtime/index.d.ts +59 -0
  479. package/runtime/index.d.ts.map +1 -0
  480. package/runtime/index.js +43 -0
  481. package/runtime/legend.d.ts +23 -0
  482. package/runtime/legend.d.ts.map +1 -0
  483. package/runtime/legend.js +38 -0
  484. package/runtime/load-package.d.ts +125 -0
  485. package/runtime/load-package.d.ts.map +1 -0
  486. package/runtime/load-package.js +264 -0
  487. package/runtime/map-package-fetch.d.ts +107 -0
  488. package/runtime/map-package-fetch.d.ts.map +1 -0
  489. package/runtime/map-package-fetch.js +336 -0
  490. package/runtime/map-package-realtime.d.ts +169 -0
  491. package/runtime/map-package-realtime.d.ts.map +1 -0
  492. package/runtime/map-package-realtime.js +350 -0
  493. package/runtime/map-package-validation.d.ts +43 -0
  494. package/runtime/map-package-validation.d.ts.map +1 -0
  495. package/runtime/map-package-validation.js +269 -0
  496. package/runtime/map-package-watch.d.ts +78 -0
  497. package/runtime/map-package-watch.d.ts.map +1 -0
  498. package/runtime/map-package-watch.js +695 -0
  499. package/runtime/map-package.d.ts +167 -0
  500. package/runtime/map-package.d.ts.map +1 -0
  501. package/runtime/map-package.js +15 -0
  502. package/runtime/ogc-styles.d.ts +110 -0
  503. package/runtime/ogc-styles.d.ts.map +1 -0
  504. package/runtime/ogc-styles.js +195 -0
  505. package/runtime/popups.d.ts +62 -0
  506. package/runtime/popups.d.ts.map +1 -0
  507. package/runtime/popups.js +95 -0
  508. package/runtime/query-tiles.d.ts +217 -0
  509. package/runtime/query-tiles.d.ts.map +1 -0
  510. package/runtime/query-tiles.js +801 -0
  511. package/runtime/runtime.d.ts +243 -0
  512. package/runtime/runtime.d.ts.map +1 -0
  513. package/runtime/runtime.js +1147 -0
  514. package/runtime/source-bridge.d.ts +99 -0
  515. package/runtime/source-bridge.d.ts.map +1 -0
  516. package/runtime/source-bridge.js +401 -0
  517. package/runtime/style-compose.d.ts +46 -0
  518. package/runtime/style-compose.d.ts.map +1 -0
  519. package/runtime/style-compose.js +144 -0
  520. package/runtime/style-interactions.d.ts +141 -0
  521. package/runtime/style-interactions.d.ts.map +1 -0
  522. package/runtime/style-interactions.js +574 -0
  523. package/runtime/style-spec-validation.d.ts +23 -0
  524. package/runtime/style-spec-validation.d.ts.map +1 -0
  525. package/runtime/style-spec-validation.js +357 -0
  526. package/studio/capability-manifest.d.ts +285 -0
  527. package/studio/capability-manifest.d.ts.map +1 -0
  528. package/studio/capability-manifest.js +59 -0
  529. package/studio/chart-spec.d.ts +85 -0
  530. package/studio/chart-spec.d.ts.map +1 -0
  531. package/studio/chart-spec.js +106 -0
  532. package/studio/index.d.ts +34 -0
  533. package/studio/index.d.ts.map +1 -0
  534. package/studio/index.js +27 -0
  535. package/studio/provenance.d.ts +131 -0
  536. package/studio/provenance.d.ts.map +1 -0
  537. package/studio/provenance.js +39 -0
  538. package/studio/publish.d.ts +64 -0
  539. package/studio/publish.d.ts.map +1 -0
  540. package/studio/publish.js +13 -0
  541. package/studio/types.d.ts +278 -0
  542. package/studio/types.d.ts.map +1 -0
  543. package/studio/types.js +71 -0
  544. package/studio/validate.d.ts +45 -0
  545. package/studio/validate.d.ts.map +1 -0
  546. package/studio/validate.js +255 -0
  547. package/studio/validation.d.ts +112 -0
  548. package/studio/validation.d.ts.map +1 -0
  549. package/studio/validation.js +42 -0
  550. package/style/factory.d.ts +30 -0
  551. package/style/factory.d.ts.map +1 -0
  552. package/style/factory.js +61 -0
  553. package/style/index.d.ts +25 -0
  554. package/style/index.d.ts.map +1 -0
  555. package/style/index.js +24 -0
  556. package/style/specification.d.ts +203 -0
  557. package/style/specification.d.ts.map +1 -0
  558. package/style/specification.js +178 -0
  559. package/style/wms-wmts-resolvers.d.ts +38 -0
  560. package/style/wms-wmts-resolvers.d.ts.map +1 -0
  561. package/style/wms-wmts-resolvers.js +92 -0
  562. package/webmap/contract.d.ts +28 -0
  563. package/webmap/contract.d.ts.map +1 -0
  564. package/webmap/contract.js +130 -0
  565. package/webmap/convert-basemap.d.ts +17 -0
  566. package/webmap/convert-basemap.d.ts.map +1 -0
  567. package/webmap/convert-basemap.js +78 -0
  568. package/webmap/convert-extent.d.ts +17 -0
  569. package/webmap/convert-extent.d.ts.map +1 -0
  570. package/webmap/convert-extent.js +114 -0
  571. package/webmap/convert-label.d.ts +13 -0
  572. package/webmap/convert-label.d.ts.map +1 -0
  573. package/webmap/convert-label.js +125 -0
  574. package/webmap/convert-layer.d.ts +22 -0
  575. package/webmap/convert-layer.d.ts.map +1 -0
  576. package/webmap/convert-layer.js +181 -0
  577. package/webmap/convert-popup.d.ts +34 -0
  578. package/webmap/convert-popup.d.ts.map +1 -0
  579. package/webmap/convert-popup.js +68 -0
  580. package/webmap/convert-renderer.d.ts +17 -0
  581. package/webmap/convert-renderer.d.ts.map +1 -0
  582. package/webmap/convert-renderer.js +161 -0
  583. package/webmap/convert-symbol.d.ts +17 -0
  584. package/webmap/convert-symbol.d.ts.map +1 -0
  585. package/webmap/convert-symbol.js +122 -0
  586. package/webmap/index.d.ts +44 -0
  587. package/webmap/index.d.ts.map +1 -0
  588. package/webmap/index.js +33 -0
  589. package/webmap/parse.d.ts +25 -0
  590. package/webmap/parse.d.ts.map +1 -0
  591. package/webmap/parse.js +83 -0
  592. package/webmap/types.d.ts +264 -0
  593. package/webmap/types.d.ts.map +1 -0
  594. package/webmap/types.js +13 -0
  595. package/webmap/warnings.d.ts +30 -0
  596. package/webmap/warnings.d.ts.map +1 -0
  597. package/webmap/warnings.js +37 -0
@@ -0,0 +1,1355 @@
1
+ import type { HonuaCacheState, HonuaMetadataRequestOptions } from "./cache-state.js";
2
+ export type QueryMethod = "GET" | "POST" | "PUT" | "PATCH" | "DELETE";
3
+ export interface HonuaRequestContext {
4
+ url: string;
5
+ path: string;
6
+ method: QueryMethod;
7
+ init: RequestInit;
8
+ }
9
+ export interface HonuaRequestMutation {
10
+ url?: string;
11
+ method?: QueryMethod;
12
+ init?: RequestInit;
13
+ }
14
+ export interface HonuaResponseContext {
15
+ request: HonuaRequestContext;
16
+ response: Response;
17
+ /** Wall-clock duration of the fetch call in milliseconds. */
18
+ durationMs: number;
19
+ }
20
+ export interface HonuaErrorContext {
21
+ request: HonuaRequestContext;
22
+ error: unknown;
23
+ /** Wall-clock duration of the fetch call in milliseconds, if available. */
24
+ durationMs?: number;
25
+ }
26
+ export interface HonuaRequestInterceptor {
27
+ before?(context: HonuaRequestContext): void | HonuaRequestMutation | Promise<void | HonuaRequestMutation>;
28
+ after?(context: HonuaResponseContext): void | Promise<void>;
29
+ error?(context: HonuaErrorContext): void | Promise<void>;
30
+ }
31
+ export type HonuaAuthRefreshReason = "initial" | "expired" | "unauthorized" | "manual";
32
+ export interface HonuaAuthCredentials {
33
+ /** API key sent as `X-API-Key`. Useful for server key rotation. */
34
+ apiKey?: string;
35
+ /** Bearer token sent as `Authorization: Bearer <token>`. */
36
+ bearerToken?: string;
37
+ /** Full Authorization header value for non-bearer schemes. */
38
+ authorization?: string;
39
+ /** Expiry time. Number values are epoch milliseconds. */
40
+ expiresAt?: number | string | Date;
41
+ }
42
+ export interface HonuaAuthProviderContext {
43
+ reason: HonuaAuthRefreshReason;
44
+ forceRefresh: boolean;
45
+ previousCredentials?: HonuaAuthCredentials;
46
+ }
47
+ export interface HonuaAuthRevocationContext {
48
+ reason: "manual" | "unauthorized";
49
+ }
50
+ export type HonuaAuthProviderResult = HonuaAuthCredentials | string | null | undefined | Promise<HonuaAuthCredentials | string | null | undefined>;
51
+ export type HonuaAuthCredentialsProvider = (context: HonuaAuthProviderContext) => HonuaAuthProviderResult;
52
+ export interface HonuaAuthProvider {
53
+ getCredentials(context: HonuaAuthProviderContext): HonuaAuthProviderResult;
54
+ revokeCredentials?(credentials: HonuaAuthCredentials, context: HonuaAuthRevocationContext): void | Promise<void>;
55
+ }
56
+ /** Parameters for querying features from a feature layer. */
57
+ export interface QueryFeaturesRequest {
58
+ serviceId: string;
59
+ layerId: number;
60
+ where?: string;
61
+ outFields?: string | string[];
62
+ returnGeometry?: boolean;
63
+ outSr?: HonuaSpatialReference | number | string;
64
+ method?: QueryMethod;
65
+ orderByFields?: string;
66
+ objectIds?: number[] | string;
67
+ geometry?: string | Record<string, unknown>;
68
+ geometryType?: EsriGeometryType;
69
+ spatialRel?: EsriSpatialRel;
70
+ distance?: number;
71
+ units?: string;
72
+ nearestCount?: number;
73
+ returnDistance?: boolean;
74
+ returnDistinctValues?: boolean;
75
+ returnCentroid?: boolean;
76
+ groupByFieldsForStatistics?: string;
77
+ outStatistics?: string | readonly Record<string, unknown>[];
78
+ resultOffset?: number;
79
+ resultRecordCount?: number;
80
+ extraParams?: Record<string, string | number | boolean>;
81
+ signal?: AbortSignal;
82
+ }
83
+ /** Parameters for querying features from a map service layer. */
84
+ export interface MapLayerQueryRequest {
85
+ serviceId: string;
86
+ layerId: number;
87
+ where?: string;
88
+ outFields?: string | string[];
89
+ returnGeometry?: boolean;
90
+ outSr?: HonuaSpatialReference | number | string;
91
+ method?: QueryMethod;
92
+ orderByFields?: string;
93
+ objectIds?: number[] | string;
94
+ geometry?: string | Record<string, unknown>;
95
+ geometryType?: EsriGeometryType;
96
+ spatialRel?: EsriSpatialRel;
97
+ distance?: number;
98
+ units?: string;
99
+ nearestCount?: number;
100
+ returnDistance?: boolean;
101
+ returnDistinctValues?: boolean;
102
+ returnCentroid?: boolean;
103
+ groupByFieldsForStatistics?: string;
104
+ outStatistics?: string | readonly Record<string, unknown>[];
105
+ resultOffset?: number;
106
+ resultRecordCount?: number;
107
+ extraParams?: Record<string, string | number | boolean>;
108
+ signal?: AbortSignal;
109
+ }
110
+ /** Parameters for querying related records from a feature layer. */
111
+ export interface QueryRelatedRecordsRequest {
112
+ serviceId: string;
113
+ layerId: number;
114
+ relationshipId: number;
115
+ objectIds?: number[] | string;
116
+ where?: string;
117
+ outFields?: string | string[];
118
+ returnGeometry?: boolean;
119
+ method?: QueryMethod;
120
+ extraParams?: Record<string, string | number | boolean>;
121
+ signal?: AbortSignal;
122
+ }
123
+ /** Parameters for querying related records from a map service layer. */
124
+ export interface MapRelatedRecordsRequest {
125
+ serviceId: string;
126
+ layerId: number;
127
+ relationshipId: number;
128
+ objectIds?: number[] | string;
129
+ where?: string;
130
+ outFields?: string | string[];
131
+ returnGeometry?: boolean;
132
+ method?: QueryMethod;
133
+ extraParams?: Record<string, string | number | boolean>;
134
+ signal?: AbortSignal;
135
+ }
136
+ /** Parameters for exporting a map image from a map service. */
137
+ export interface ExportMapRequest {
138
+ serviceId: string;
139
+ bbox: string | [number, number, number, number];
140
+ size: string | [number, number];
141
+ responseFormat?: "json" | "pjson";
142
+ format?: string;
143
+ dpi?: number;
144
+ transparent?: boolean;
145
+ layers?: string;
146
+ bboxSr?: string | number;
147
+ imageSr?: string | number;
148
+ backgroundColor?: string;
149
+ method?: QueryMethod;
150
+ extraParams?: Record<string, string | number | boolean>;
151
+ }
152
+ /** Parameters for requesting legend information from a map service. */
153
+ export interface MapLegendRequest {
154
+ serviceId: string;
155
+ responseFormat?: "json" | "pjson";
156
+ size?: string | number | [number, number];
157
+ dynamicLayers?: string;
158
+ extraParams?: Record<string, string | number | boolean>;
159
+ }
160
+ /** Parameters for identifying features at a point on a map service. */
161
+ export interface MapIdentifyRequest {
162
+ serviceId: string;
163
+ geometry: string | Record<string, unknown>;
164
+ geometryType?: string;
165
+ sr?: string | number;
166
+ layers?: string;
167
+ tolerance?: number;
168
+ mapExtent: string | [number, number, number, number];
169
+ imageDisplay: string | [number, number, number];
170
+ returnGeometry?: boolean;
171
+ responseFormat?: "json" | "pjson";
172
+ maxAllowableOffset?: number;
173
+ layerDefs?: string;
174
+ dynamicLayers?: string;
175
+ time?: string;
176
+ method?: QueryMethod;
177
+ extraParams?: Record<string, string | number | boolean>;
178
+ }
179
+ /** Parameters for finding features by attribute value in a map service. */
180
+ export interface MapFindRequest {
181
+ serviceId: string;
182
+ searchText: string;
183
+ contains?: boolean;
184
+ searchFields?: string | string[];
185
+ layers?: string;
186
+ sr?: string | number;
187
+ layerDefs?: string;
188
+ returnGeometry?: boolean;
189
+ maxAllowableOffset?: number;
190
+ dynamicLayers?: string;
191
+ returnZ?: boolean;
192
+ returnM?: boolean;
193
+ gdbVersion?: string;
194
+ time?: string;
195
+ relationParam?: string;
196
+ responseFormat?: "json" | "pjson";
197
+ method?: QueryMethod;
198
+ extraParams?: Record<string, string | number | boolean>;
199
+ }
200
+ /** Parameters for making a raw HTTP request through the client. */
201
+ export interface HonuaRawRequest {
202
+ path: string;
203
+ method?: QueryMethod;
204
+ responseFormat?: "json" | "pjson";
205
+ query?: Record<string, string | number | boolean>;
206
+ headers?: HeadersInit;
207
+ body?: BodyInit | null;
208
+ signal?: AbortSignal;
209
+ }
210
+ export declare const MIGRATION_SOURCE_INVENTORY_ARTIFACT_KIND = "honua.migration.source-inventory";
211
+ export declare const MIGRATION_SOURCE_INVENTORY_ARTIFACT_VERSION = "1.0";
212
+ export declare const MIGRATION_MANIFEST_ARTIFACT_KIND = "honua.migration.manifest";
213
+ export declare const MIGRATION_MANIFEST_ARTIFACT_VERSION = "1.0";
214
+ export declare const MIGRATION_PARITY_EVIDENCE_ARTIFACT_KIND = "honua.migration.parity-evidence-pack";
215
+ export declare const MIGRATION_PARITY_EVIDENCE_ARTIFACT_VERSION = "1.0";
216
+ export declare const MIGRATION_EVIDENCE_STATES: {
217
+ readonly pass: "pass";
218
+ readonly fail: "fail";
219
+ readonly unknown: "unknown";
220
+ readonly notApplicable: "not-applicable";
221
+ };
222
+ export type MigrationEvidenceState = (typeof MIGRATION_EVIDENCE_STATES)[keyof typeof MIGRATION_EVIDENCE_STATES];
223
+ export type MigrationInventorySourceKind = "geoserver" | "geoserver-rest" | "geoservices" | "arcgis-geoservices-rest" | (string & {});
224
+ export interface MigrationInventoryScanRequest {
225
+ sourceKind: MigrationInventorySourceKind;
226
+ sourceUrl: string;
227
+ username?: string;
228
+ password?: string;
229
+ timeoutSeconds?: number;
230
+ includeStyleContent?: boolean;
231
+ /** Request `/api/v1/admin/import/scan?export=json`; the response is still parsed as JSON. */
232
+ exportJson?: boolean;
233
+ signal?: AbortSignal;
234
+ }
235
+ export interface MigrationSourceInventoryArtifact {
236
+ artifactKind: typeof MIGRATION_SOURCE_INVENTORY_ARTIFACT_KIND;
237
+ artifactVersion: typeof MIGRATION_SOURCE_INVENTORY_ARTIFACT_VERSION;
238
+ sourceKind: string;
239
+ source: MigrationSourceIdentity;
240
+ authPosture: MigrationInventoryAuthPosture;
241
+ scanCompleteness: MigrationInventoryCompleteness;
242
+ summary: MigrationInventorySummary;
243
+ overallCompatibility: MigrationCompatibilityAssessment;
244
+ containers: MigrationInventoryContainer[];
245
+ resources: MigrationInventoryResource[];
246
+ styles: MigrationInventoryStyle[];
247
+ externalDependencies: MigrationExternalDependency[];
248
+ }
249
+ export interface MigrationSourceIdentity {
250
+ displayName: string;
251
+ baseUrl: string;
252
+ product?: string;
253
+ version?: string;
254
+ build?: string;
255
+ serviceType?: string;
256
+ }
257
+ export interface MigrationInventoryAuthPosture {
258
+ mode: string;
259
+ credentialsSupplied: boolean;
260
+ accessConfirmed: boolean;
261
+ notes: string[];
262
+ }
263
+ export interface MigrationInventoryCompleteness {
264
+ /** `200 OK` can still carry `status: "failed"`; use this value as the planning gate. */
265
+ status: "complete" | "partial" | "failed" | (string & {});
266
+ warnings: string[];
267
+ missingArtifacts: string[];
268
+ }
269
+ export interface MigrationInventorySummary {
270
+ containerCount: number;
271
+ resourceCount: number;
272
+ styleCount: number;
273
+ externalDependencyCount: number;
274
+ compatibleCount: number;
275
+ partiallyCompatibleCount: number;
276
+ incompatibleCount: number;
277
+ }
278
+ export interface MigrationCompatibilityAssessment {
279
+ level: "compatible" | "partial" | "incompatible" | (string & {});
280
+ code?: string;
281
+ reason: string;
282
+ warnings: string[];
283
+ manualSteps: string[];
284
+ }
285
+ export interface MigrationInventoryContainer {
286
+ id: string;
287
+ kind: string;
288
+ name: string;
289
+ title?: string;
290
+ description?: string;
291
+ isDefault?: boolean;
292
+ compatibility: MigrationCompatibilityAssessment;
293
+ }
294
+ export interface MigrationInventoryResource {
295
+ id: string;
296
+ containerId: string;
297
+ kind: string;
298
+ name: string;
299
+ title?: string;
300
+ description?: string;
301
+ geometryType?: string;
302
+ featureCount?: number;
303
+ hasAttachments?: boolean;
304
+ capabilities: string[];
305
+ spatialReferences: MigrationSpatialReferenceInfo[];
306
+ fields: MigrationInventoryField[];
307
+ styleIds: string[];
308
+ externalDependencyIds: string[];
309
+ compatibility: MigrationCompatibilityAssessment;
310
+ }
311
+ export interface MigrationInventoryField {
312
+ name: string;
313
+ alias?: string;
314
+ fieldType: string;
315
+ nullable?: boolean;
316
+ domainType?: string;
317
+ domainName?: string;
318
+ domainValues?: MigrationInventoryCodedValue[];
319
+ }
320
+ export interface MigrationInventoryCodedValue {
321
+ code: string;
322
+ name: string;
323
+ }
324
+ export interface MigrationInventoryStyle {
325
+ id: string;
326
+ containerId: string;
327
+ kind: string;
328
+ name: string;
329
+ format?: string;
330
+ resourceIds: string[];
331
+ externalDependencyIds: string[];
332
+ metadata: Record<string, string>;
333
+ compatibility: MigrationCompatibilityAssessment;
334
+ }
335
+ export interface MigrationExternalDependency {
336
+ id: string;
337
+ containerId: string;
338
+ resourceId?: string;
339
+ kind: string;
340
+ name: string;
341
+ dependencyType?: string;
342
+ address?: string;
343
+ metadata: Record<string, string>;
344
+ spatialReferences: MigrationSpatialReferenceInfo[];
345
+ compatibility: MigrationCompatibilityAssessment;
346
+ }
347
+ export interface MigrationSpatialReferenceInfo {
348
+ role: string;
349
+ sourceValue?: string;
350
+ srid?: number;
351
+ crsUri?: string;
352
+ datum?: string;
353
+ unit?: string;
354
+ axisOrder?: string;
355
+ isGeographic?: boolean;
356
+ }
357
+ export interface MigrationManifestArtifact {
358
+ artifactKind: typeof MIGRATION_MANIFEST_ARTIFACT_KIND;
359
+ artifactVersion: typeof MIGRATION_MANIFEST_ARTIFACT_VERSION;
360
+ sourceArtifactKind: typeof MIGRATION_SOURCE_INVENTORY_ARTIFACT_KIND;
361
+ sourceArtifactVersion: typeof MIGRATION_SOURCE_INVENTORY_ARTIFACT_VERSION;
362
+ sourceKind: string;
363
+ source: MigrationSourceIdentity;
364
+ summary: MigrationManifestSummary;
365
+ targetResources: MigrationManifestTargetResource[];
366
+ styleActions: MigrationManifestStyleAction[];
367
+ manualReviewItems: MigrationManifestReviewItem[];
368
+ unsupportedItems: MigrationManifestReviewItem[];
369
+ }
370
+ export interface MigrationManifestSummary {
371
+ sourceResourceCount: number;
372
+ targetResourceCount: number;
373
+ styleActionCount: number;
374
+ manualReviewCount: number;
375
+ unsupportedCount: number;
376
+ }
377
+ export interface MigrationManifestTargetResource {
378
+ sourceResourceId: string;
379
+ sourceKind: string;
380
+ action: string;
381
+ targetServiceName: string;
382
+ targetResourceName: string;
383
+ geometryType?: string;
384
+ fields: MigrationInventoryField[];
385
+ capabilities: string[];
386
+ spatialReferences: MigrationSpatialReferenceInfo[];
387
+ styleIds: string[];
388
+ externalDependencyIds: string[];
389
+ compatibility: MigrationCompatibilityAssessment;
390
+ }
391
+ export interface MigrationManifestStyleAction {
392
+ sourceStyleId: string;
393
+ action: string;
394
+ format?: string;
395
+ resourceIds: string[];
396
+ externalDependencyIds: string[];
397
+ compatibility: MigrationCompatibilityAssessment;
398
+ }
399
+ export interface MigrationManifestReviewItem {
400
+ sourceId: string;
401
+ kind: string;
402
+ code: string;
403
+ severity: string;
404
+ reason: string;
405
+ manualSteps: string[];
406
+ warnings: string[];
407
+ }
408
+ export interface MigrationParityEvidenceArtifact {
409
+ artifactKind: typeof MIGRATION_PARITY_EVIDENCE_ARTIFACT_KIND;
410
+ artifactVersion: typeof MIGRATION_PARITY_EVIDENCE_ARTIFACT_VERSION;
411
+ sourceKind: string;
412
+ source: MigrationSourceIdentity;
413
+ overallState: MigrationEvidenceState;
414
+ summary: string;
415
+ manifestAvailable: boolean;
416
+ sections: MigrationParityEvidenceSection[];
417
+ cutoverReadiness: MigrationCutoverReadinessSummary;
418
+ }
419
+ export interface MigrationParityEvidenceSection {
420
+ id: string;
421
+ title: string;
422
+ state: MigrationEvidenceState;
423
+ items: MigrationParityEvidenceItem[];
424
+ }
425
+ export interface MigrationParityEvidenceItem {
426
+ id: string;
427
+ state: MigrationEvidenceState;
428
+ summary: string;
429
+ evidence: string[];
430
+ remediation: string[];
431
+ relatedIds: string[];
432
+ }
433
+ export interface MigrationCutoverReadinessSummary {
434
+ state: MigrationEvidenceState;
435
+ items: MigrationCutoverReadinessItem[];
436
+ }
437
+ export interface MigrationCutoverReadinessItem {
438
+ id: string;
439
+ title: string;
440
+ state: MigrationEvidenceState;
441
+ evidence: string[];
442
+ remediation: string[];
443
+ owner?: string;
444
+ }
445
+ export interface MigrationReadinessAttestation {
446
+ items: MigrationReadinessAttestationItem[];
447
+ }
448
+ export interface MigrationReadinessAttestationItem {
449
+ id: string;
450
+ state: MigrationEvidenceState;
451
+ evidence: string[];
452
+ owner?: string;
453
+ }
454
+ /** Parameters for applying feature edits (add, update, delete) to a feature layer. */
455
+ export interface ApplyEditsRequest {
456
+ serviceId: string;
457
+ layerId: number;
458
+ adds?: HonuaFeature[];
459
+ updates?: HonuaFeature[];
460
+ deletes?: number[] | string;
461
+ rollbackOnFailure?: boolean;
462
+ signal?: AbortSignal;
463
+ }
464
+ export type HonuaTransport = "rest" | "grpc-web";
465
+ /**
466
+ * Configuration passed to the {@link HonuaClient} constructor.
467
+ *
468
+ * @example Minimal config
469
+ * ```ts
470
+ * new HonuaClient({ baseUrl: "https://your-honua-server.example" });
471
+ * ```
472
+ *
473
+ * @example With API key + retries
474
+ * ```ts
475
+ * new HonuaClient({
476
+ * baseUrl: "https://your-honua-server.example",
477
+ * apiKey: process.env.HONUA_API_KEY,
478
+ * retry: { maxRetries: 3, baseDelayMs: 250 },
479
+ * timeoutMs: 30_000,
480
+ * });
481
+ * ```
482
+ *
483
+ * @example With an OAuth-style credential provider
484
+ * ```ts
485
+ * new HonuaClient({
486
+ * baseUrl: "https://your-honua-server.example",
487
+ * auth: async () => {
488
+ * const token = await fetchAccessToken();
489
+ * return { bearerToken: token.access_token, expiresAt: token.expiresAt };
490
+ * },
491
+ * });
492
+ * ```
493
+ */
494
+ export interface HonuaClientOptions {
495
+ /**
496
+ * Absolute origin of the Honua server (e.g. `https://api.honua.example`).
497
+ * Trailing slashes are normalized.
498
+ */
499
+ baseUrl: string;
500
+ /** Static API key sent as `X-API-Key`. Prefer {@link auth} for refreshable credentials. */
501
+ apiKey?: string;
502
+ /** Static bearer token sent as `Authorization: Bearer <token>`. Prefer {@link auth} for refreshable credentials. */
503
+ bearerToken?: string;
504
+ /**
505
+ * Optional credential provider. The SDK calls it lazily, caches returned
506
+ * credentials until `expiresAt` nears, and never persists secrets itself.
507
+ * Returning a string is shorthand for `{ bearerToken: string }`.
508
+ */
509
+ auth?: HonuaAuthProvider | HonuaAuthCredentialsProvider;
510
+ /** Milliseconds before `expiresAt` when credentials should be refreshed. Default: 60 seconds. */
511
+ authRefreshSkewMs?: number;
512
+ /** Override the global `fetch` implementation (useful in Node before built-in fetch, or for testing). */
513
+ fetchFn?: typeof fetch;
514
+ /** Per-request `before` / `after` / `error` hooks invoked on every HTTP call. */
515
+ interceptors?: readonly HonuaRequestInterceptor[];
516
+ /** Per-request hard timeout in milliseconds. Independent of any caller-supplied `AbortSignal`. */
517
+ timeoutMs?: number;
518
+ /**
519
+ * Retry strategy for transient failures.
520
+ *
521
+ * Applies to both the REST and `"grpc-web"` transports. On gRPC-web the same
522
+ * policy is applied to replay-safe **unary** calls only: transient gRPC
523
+ * status codes (`resource_exhausted`, `unavailable`, `deadline_exceeded`,
524
+ * `aborted`) are retried with the same exponential backoff + jitter and
525
+ * `retry-after` handling as REST, and never past the abort/`timeoutMs`
526
+ * deadline. Server-streaming calls are not retried (they cannot be safely
527
+ * replayed mid-iteration).
528
+ */
529
+ retry?: HonuaRetryOptions;
530
+ /**
531
+ * When `true`, query methods use `f=pbf` for binary protobuf responses
532
+ * and decode them transparently into the same JSON-compatible shape.
533
+ * Falls back to `f=json` on decode failure. Default: `false`.
534
+ */
535
+ preferBinary?: boolean;
536
+ /**
537
+ * Transport protocol. `"rest"` uses JSON/PBF over HTTP (default).
538
+ * `"grpc-web"` uses typed RPC via Connect gRPC-Web transport.
539
+ */
540
+ transport?: HonuaTransport;
541
+ }
542
+ export interface HonuaRetryOptions {
543
+ maxRetries?: number;
544
+ baseDelayMs?: number;
545
+ maxDelayMs?: number;
546
+ retryStatuses?: readonly number[];
547
+ }
548
+ export interface HonuaCompatibilityRequest {
549
+ signal?: AbortSignal;
550
+ refresh?: boolean;
551
+ }
552
+ export interface HonuaServerCompatibilityControlPlaneApi {
553
+ major: number;
554
+ basePath: string;
555
+ deprecated: boolean;
556
+ }
557
+ export interface HonuaServerCompatibilityMetadataSchema {
558
+ version: string;
559
+ deprecated: boolean;
560
+ }
561
+ export interface HonuaServerCompatibilityFeatures {
562
+ metadataResources: boolean;
563
+ manifestExport: boolean;
564
+ manifestApply: boolean;
565
+ manifestDryRun: boolean;
566
+ manifestPrune: boolean;
567
+ }
568
+ export type HonuaServerCompatibilityFeature = keyof HonuaServerCompatibilityFeatures;
569
+ export interface HonuaServerCompatibility {
570
+ serverVersion: string;
571
+ releaseChannel: string;
572
+ controlPlaneApi: HonuaServerCompatibilityControlPlaneApi;
573
+ metadataSchemas: HonuaServerCompatibilityMetadataSchema[];
574
+ features: HonuaServerCompatibilityFeatures;
575
+ }
576
+ export interface HonuaServerCapabilitiesResponse {
577
+ metadataApiVersions?: string[];
578
+ resourceKinds?: string[];
579
+ manifestSupported?: boolean;
580
+ manifestDryRunSupported?: boolean;
581
+ manifestPruneSupported?: boolean;
582
+ compatibility: HonuaServerCompatibility;
583
+ }
584
+ export interface HonuaApiEnvelope<T> {
585
+ success: boolean;
586
+ data: T;
587
+ message?: string;
588
+ timestamp?: string;
589
+ }
590
+ export interface HonuaServerCompatibilityStatus {
591
+ supported: boolean;
592
+ minimumSupportedServerVersion: string;
593
+ compatibility?: HonuaServerCompatibility;
594
+ reasons: string[];
595
+ }
596
+ export type OgcResponseFormat = "json" | "html" | "geojson" | "gml" | "csv" | "schemajson" | "schema+json";
597
+ export interface OgcMetadataRequest extends HonuaMetadataRequestOptions {
598
+ responseFormat?: OgcResponseFormat | string;
599
+ extraParams?: Record<string, string | number | boolean>;
600
+ }
601
+ export interface OgcCollectionRequest extends OgcMetadataRequest {
602
+ collectionId: string | number;
603
+ }
604
+ export interface OgcItemsRequest extends OgcCollectionRequest {
605
+ limit?: number;
606
+ offset?: number;
607
+ bbox?: string;
608
+ datetime?: string;
609
+ filter?: string;
610
+ ids?: string | readonly (string | number)[];
611
+ properties?: string | readonly string[];
612
+ sortby?: string;
613
+ crs?: string;
614
+ signal?: AbortSignal;
615
+ }
616
+ export interface OgcItemRequest extends OgcCollectionRequest {
617
+ featureId: string | number;
618
+ crs?: string;
619
+ signal?: AbortSignal;
620
+ }
621
+ /** Query parameters for OGC API Records `/collections/{catalogId}/items`. */
622
+ export interface OgcRecordsSearchRequest extends OgcCollectionRequest {
623
+ limit?: number;
624
+ offset?: number;
625
+ bbox?: string | readonly [number, number, number, number];
626
+ datetime?: string;
627
+ /** Free-text record search terms. Arrays serialize as OGC form-style CSV. */
628
+ q?: string | readonly string[];
629
+ ids?: string | readonly (string | number)[];
630
+ /** Record resource type filter, e.g. `dataset`, `service`, `map`, `collection`. */
631
+ type?: string | readonly string[];
632
+ /** External resource identifiers associated with the record. */
633
+ externalIds?: string | readonly string[];
634
+ /** Optional CQL2 filter when the server advertises the Records filtering class. */
635
+ filter?: string;
636
+ filterLang?: "cql2-text" | "cql2-json" | (string & {});
637
+ filterCrs?: string;
638
+ properties?: string | readonly string[];
639
+ sortby?: string;
640
+ profile?: string | readonly string[];
641
+ signal?: AbortSignal;
642
+ }
643
+ /** Request envelope for one OGC API Records record. */
644
+ export interface OgcRecordItemRequest extends OgcCollectionRequest {
645
+ recordId: string | number;
646
+ profile?: string | readonly string[];
647
+ signal?: AbortSignal;
648
+ }
649
+ /** Raw response access for record searches. */
650
+ export interface OgcRecordsRawSearchRequest extends OgcRecordsSearchRequest {
651
+ accept?: string;
652
+ headers?: HeadersInit;
653
+ }
654
+ /** Raw response access for one record. */
655
+ export interface OgcRecordRawItemRequest extends OgcRecordItemRequest {
656
+ accept?: string;
657
+ headers?: HeadersInit;
658
+ }
659
+ export interface OgcCreateItemRequest extends OgcCollectionRequest {
660
+ feature: GeoJsonFeature | Record<string, unknown>;
661
+ headers?: HeadersInit;
662
+ signal?: AbortSignal;
663
+ }
664
+ export interface OgcReplaceItemRequest extends OgcItemRequest {
665
+ feature: GeoJsonFeature | Record<string, unknown>;
666
+ headers?: HeadersInit;
667
+ }
668
+ export interface OgcPatchItemRequest extends OgcItemRequest {
669
+ patch: Record<string, unknown>;
670
+ headers?: HeadersInit;
671
+ }
672
+ export interface OgcDeleteItemRequest extends OgcItemRequest {
673
+ }
674
+ /** Well-known Esri geometry type identifiers with open-ended fallback. */
675
+ export type EsriGeometryType = "esriGeometryPoint" | "esriGeometryPolyline" | "esriGeometryPolygon" | "esriGeometryEnvelope" | "esriGeometryMultipoint" | (string & {});
676
+ /** Well-known Esri spatial relationship identifiers. */
677
+ export type EsriSpatialRel = "esriSpatialRelIntersects" | "esriSpatialRelContains" | "esriSpatialRelCrosses" | "esriSpatialRelEnvelopeIntersects" | "esriSpatialRelIndexIntersects" | "esriSpatialRelOverlaps" | "esriSpatialRelTouches" | "esriSpatialRelWithin" | (string & {});
678
+ /** Well-known Esri field type identifiers. */
679
+ export type EsriFieldType = "esriFieldTypeString" | "esriFieldTypeInteger" | "esriFieldTypeSmallInteger" | "esriFieldTypeDouble" | "esriFieldTypeSingle" | "esriFieldTypeDate" | "esriFieldTypeOID" | "esriFieldTypeGeometry" | "esriFieldTypeBlob" | "esriFieldTypeRaster" | "esriFieldTypeGUID" | "esriFieldTypeGlobalID" | "esriFieldTypeXML" | (string & {});
680
+ /** An Esri point geometry. */
681
+ export interface EsriPoint {
682
+ x: number;
683
+ y: number;
684
+ z?: number;
685
+ m?: number;
686
+ spatialReference?: HonuaSpatialReference;
687
+ }
688
+ /** An Esri polyline geometry. */
689
+ export interface EsriPolyline {
690
+ paths: number[][][];
691
+ spatialReference?: HonuaSpatialReference;
692
+ }
693
+ /** An Esri polygon geometry. */
694
+ export interface EsriPolygon {
695
+ rings: number[][][];
696
+ spatialReference?: HonuaSpatialReference;
697
+ }
698
+ /** An Esri envelope (bounding box) geometry. */
699
+ export interface EsriEnvelope {
700
+ xmin: number;
701
+ ymin: number;
702
+ xmax: number;
703
+ ymax: number;
704
+ spatialReference?: HonuaSpatialReference;
705
+ }
706
+ /** An Esri multipoint geometry. */
707
+ export interface EsriMultipoint {
708
+ points: number[][];
709
+ spatialReference?: HonuaSpatialReference;
710
+ }
711
+ /** Union of all Esri geometry shapes. */
712
+ export type EsriGeometry = EsriPoint | EsriPolyline | EsriPolygon | EsriEnvelope | EsriMultipoint;
713
+ /** A GeoJSON Feature object. */
714
+ export interface GeoJsonFeature {
715
+ type: "Feature";
716
+ id?: string | number;
717
+ geometry: import("../expr/expression.js").GeoJsonGeometry | null;
718
+ properties: Record<string, unknown> | null;
719
+ }
720
+ /** A coordinate system reference, identified by WKID or WKT. */
721
+ export interface HonuaSpatialReference {
722
+ wkid?: number;
723
+ latestWkid?: number;
724
+ wkt?: string;
725
+ }
726
+ /** An axis-aligned bounding box with an optional spatial reference. */
727
+ export interface HonuaExtent {
728
+ xmin: number;
729
+ ymin: number;
730
+ xmax: number;
731
+ ymax: number;
732
+ spatialReference?: HonuaSpatialReference;
733
+ }
734
+ /** Metadata for a single attribute field in a layer. */
735
+ export interface HonuaFieldInfo {
736
+ name: string;
737
+ /** Esri field type string, e.g. `"esriFieldTypeString"`. */
738
+ type: EsriFieldType;
739
+ alias?: string;
740
+ length?: number;
741
+ nullable?: boolean;
742
+ editable?: boolean;
743
+ defaultValue?: unknown;
744
+ }
745
+ /** A single feature with attribute values and optional geometry. */
746
+ export interface HonuaFeature {
747
+ attributes: Record<string, unknown>;
748
+ geometry?: EsriGeometry | Record<string, unknown> | null;
749
+ }
750
+ /** Response from a feature or map-layer query returning features. */
751
+ export interface HonuaQueryResponse {
752
+ objectIdFieldName?: string;
753
+ geometryType?: EsriGeometryType;
754
+ spatialReference?: HonuaSpatialReference;
755
+ fields?: HonuaFieldInfo[];
756
+ features?: HonuaFeature[];
757
+ exceededTransferLimit?: boolean;
758
+ }
759
+ /** Response from a count-only query (`returnCountOnly=true`). */
760
+ export interface HonuaCountResponse {
761
+ count: number | string;
762
+ }
763
+ /** Response from an IDs-only query (`returnIdsOnly=true`). */
764
+ export interface HonuaObjectIdsResponse {
765
+ objectIdFieldName: string;
766
+ objectIds: Array<number | string>;
767
+ }
768
+ /** Response from an extent-only query (`returnExtentOnly=true`). */
769
+ export interface HonuaExtentResponse {
770
+ extent: HonuaExtent;
771
+ count?: number | string;
772
+ }
773
+ /** Result for a single add, update, or delete operation. */
774
+ export interface HonuaEditResult {
775
+ objectId: number;
776
+ success: boolean;
777
+ error?: {
778
+ code: number;
779
+ description: string;
780
+ };
781
+ }
782
+ /** Response from `applyEdits` containing results for each operation type. */
783
+ export interface HonuaApplyEditsResponse {
784
+ addResults?: HonuaEditResult[];
785
+ updateResults?: HonuaEditResult[];
786
+ deleteResults?: HonuaEditResult[];
787
+ }
788
+ /** A group of related records for a single source object ID. */
789
+ export interface HonuaRelatedRecordGroup {
790
+ objectId: number;
791
+ relatedRecords?: HonuaFeature[];
792
+ }
793
+ /** Response from `queryRelatedRecords`. */
794
+ export interface HonuaRelatedRecordsResponse {
795
+ relatedRecordGroups?: HonuaRelatedRecordGroup[];
796
+ fields?: HonuaFieldInfo[];
797
+ geometryType?: EsriGeometryType;
798
+ spatialReference?: HonuaSpatialReference;
799
+ }
800
+ /** Response from `exportMap` / `export`. */
801
+ export interface HonuaExportMapResponse {
802
+ href?: string;
803
+ width?: number;
804
+ height?: number;
805
+ extent?: HonuaExtent;
806
+ scale?: number;
807
+ }
808
+ /** A single legend entry (swatch) for a layer. */
809
+ export interface HonuaLegendEntry {
810
+ label?: string;
811
+ url?: string;
812
+ imageData?: string;
813
+ contentType?: string;
814
+ width?: number;
815
+ height?: number;
816
+ }
817
+ /** Legend information for a single layer. */
818
+ export interface HonuaLegendLayer {
819
+ layerId: number;
820
+ layerName?: string;
821
+ layerType?: string;
822
+ minScale?: number;
823
+ maxScale?: number;
824
+ legend?: HonuaLegendEntry[];
825
+ }
826
+ /** Response from `legend`. */
827
+ export interface HonuaLegendResponse {
828
+ layers?: HonuaLegendLayer[];
829
+ }
830
+ /** A single identified feature with layer info. */
831
+ export interface HonuaIdentifyResult {
832
+ layerId: number;
833
+ layerName?: string;
834
+ displayFieldName?: string;
835
+ value?: string;
836
+ attributes?: Record<string, unknown>;
837
+ geometryType?: string;
838
+ geometry?: Record<string, unknown> | null;
839
+ }
840
+ /** Response from `identify`. */
841
+ export interface HonuaIdentifyResponse {
842
+ results?: HonuaIdentifyResult[];
843
+ }
844
+ /** A single result from `find`. */
845
+ export interface HonuaFindResult {
846
+ layerId: number;
847
+ layerName?: string;
848
+ displayFieldName?: string;
849
+ foundFieldName?: string;
850
+ value?: string;
851
+ attributes?: Record<string, unknown>;
852
+ geometryType?: string;
853
+ geometry?: Record<string, unknown> | null;
854
+ }
855
+ /** Response from `find`. */
856
+ export interface HonuaFindResponse {
857
+ results?: HonuaFindResult[];
858
+ }
859
+ /** Metadata for a single attachment on a feature. */
860
+ export interface HonuaAttachmentInfo {
861
+ id: number;
862
+ name?: string;
863
+ contentType?: string;
864
+ size?: number;
865
+ parentObjectId?: number;
866
+ }
867
+ /** Response from `listAttachments`. */
868
+ export interface HonuaAttachmentListResponse {
869
+ attachmentInfos?: HonuaAttachmentInfo[];
870
+ }
871
+ /** Result of an add/update/delete attachment operation. */
872
+ export interface HonuaAttachmentEditResult {
873
+ objectId?: number;
874
+ success: boolean;
875
+ error?: {
876
+ code: number;
877
+ description: string;
878
+ };
879
+ }
880
+ /** Response from `addAttachment`. */
881
+ export interface HonuaAddAttachmentResponse {
882
+ addAttachmentResult: HonuaAttachmentEditResult;
883
+ }
884
+ /** Response from `updateAttachment`. */
885
+ export interface HonuaUpdateAttachmentResponse {
886
+ updateAttachmentResult: HonuaAttachmentEditResult;
887
+ }
888
+ /** Response from `deleteAttachments`. */
889
+ export interface HonuaDeleteAttachmentsResponse {
890
+ deleteAttachmentResults: HonuaAttachmentEditResult[];
891
+ }
892
+ /** Response from attachment query with grouped results. */
893
+ export interface HonuaAttachmentGroup {
894
+ parentObjectId: number;
895
+ attachmentInfos?: HonuaAttachmentInfo[];
896
+ }
897
+ /** Response from `queryAttachments`. */
898
+ export interface HonuaQueryAttachmentsResponse {
899
+ attachmentGroups?: HonuaAttachmentGroup[];
900
+ }
901
+ /** Metadata for a relationship between two layers/tables. */
902
+ export interface HonuaRelationshipInfo {
903
+ id: number;
904
+ name?: string;
905
+ relatedTableId: number;
906
+ role?: string;
907
+ cardinality?: string;
908
+ keyField?: string;
909
+ keyFieldInRelationshipTable?: string;
910
+ }
911
+ /** Full metadata for a single feature or map layer. */
912
+ export interface HonuaLayerMetadata {
913
+ id: number;
914
+ name: string;
915
+ type?: string;
916
+ geometryType?: EsriGeometryType;
917
+ description?: string;
918
+ fields?: HonuaFieldInfo[];
919
+ extent?: HonuaExtent;
920
+ spatialReference?: HonuaSpatialReference;
921
+ maxRecordCount?: number;
922
+ supportsAttachments?: boolean;
923
+ relationships?: HonuaRelationshipInfo[];
924
+ cache?: HonuaCacheState;
925
+ }
926
+ /** Top-level metadata for a FeatureServer or MapServer service. */
927
+ export interface HonuaServiceMetadata {
928
+ serviceDescription?: string;
929
+ layers?: Array<{
930
+ id: number;
931
+ name: string;
932
+ }>;
933
+ tables?: Array<{
934
+ id: number;
935
+ name: string;
936
+ }>;
937
+ spatialReference?: HonuaSpatialReference;
938
+ fullExtent?: HonuaExtent;
939
+ maxRecordCount?: number;
940
+ cache?: HonuaCacheState;
941
+ }
942
+ /** Response from `listServices()` — the REST services directory. */
943
+ export interface HonuaServicesResponse {
944
+ currentVersion?: number;
945
+ folders?: string[];
946
+ services?: Array<{
947
+ name: string;
948
+ type: string;
949
+ }>;
950
+ cache?: HonuaCacheState;
951
+ }
952
+ /** OGC API Features collection response (GeoJSON FeatureCollection). */
953
+ export interface HonuaOgcFeatureCollectionResponse {
954
+ type: "FeatureCollection";
955
+ features: HonuaOgcFeatureResponse[];
956
+ numberMatched?: number;
957
+ numberReturned?: number;
958
+ links?: HonuaOgcLink[];
959
+ }
960
+ /** A single OGC API Feature (GeoJSON Feature). */
961
+ export interface HonuaOgcFeatureResponse {
962
+ type: "Feature";
963
+ id?: string | number;
964
+ geometry: import("../expr/expression.js").GeoJsonGeometry | null;
965
+ properties: Record<string, unknown> | null;
966
+ links?: HonuaOgcLink[];
967
+ }
968
+ /** Core record metadata carried in an OGC API Records GeoJSON feature. */
969
+ export interface HonuaOgcRecordProperties extends Record<string, unknown> {
970
+ type?: string;
971
+ title?: string;
972
+ description?: string;
973
+ keywords?: readonly string[];
974
+ themes?: readonly unknown[];
975
+ language?: string;
976
+ languages?: readonly string[];
977
+ contacts?: readonly unknown[];
978
+ formats?: readonly string[];
979
+ license?: string;
980
+ created?: string;
981
+ updated?: string;
982
+ externalIds?: readonly string[];
983
+ links?: HonuaOgcLink[];
984
+ }
985
+ /** A single OGC API Records record (GeoJSON Feature with record metadata). */
986
+ export interface HonuaOgcRecordResponse extends Omit<HonuaOgcFeatureResponse, "properties"> {
987
+ properties: HonuaOgcRecordProperties | null;
988
+ }
989
+ /** Response from OGC API Records `/collections/{catalogId}/items`. */
990
+ export interface HonuaOgcRecordsResponse {
991
+ type: "FeatureCollection";
992
+ features: HonuaOgcRecordResponse[];
993
+ numberMatched?: number;
994
+ numberReturned?: number;
995
+ links?: HonuaOgcLink[];
996
+ timeStamp?: string;
997
+ }
998
+ /** A hypermedia link in an OGC API response. */
999
+ export interface HonuaOgcLink {
1000
+ href: string;
1001
+ rel?: string;
1002
+ type?: string;
1003
+ title?: string;
1004
+ }
1005
+ /** Response from the OGC API landing page (`/ogc/features`). */
1006
+ export interface HonuaOgcLandingResponse {
1007
+ title?: string;
1008
+ description?: string;
1009
+ links?: HonuaOgcLink[];
1010
+ cache?: HonuaCacheState;
1011
+ }
1012
+ /** Response from OGC API conformance (`/ogc/features/conformance`). */
1013
+ export interface HonuaOgcConformanceResponse {
1014
+ conformsTo: string[];
1015
+ cache?: HonuaCacheState;
1016
+ }
1017
+ /** A single collection summary in an OGC collections listing. */
1018
+ export interface HonuaOgcCollectionSummary {
1019
+ id: string;
1020
+ title?: string;
1021
+ description?: string;
1022
+ links?: HonuaOgcLink[];
1023
+ extent?: {
1024
+ spatial?: {
1025
+ bbox?: number[][];
1026
+ crs?: string;
1027
+ };
1028
+ temporal?: {
1029
+ interval?: (string | null)[][];
1030
+ trs?: string;
1031
+ };
1032
+ };
1033
+ itemType?: string;
1034
+ crs?: string[];
1035
+ }
1036
+ /** Response from OGC API collections listing (`/ogc/features/collections`). */
1037
+ export interface HonuaOgcCollectionsResponse {
1038
+ collections: HonuaOgcCollectionSummary[];
1039
+ links?: HonuaOgcLink[];
1040
+ cache?: HonuaCacheState;
1041
+ }
1042
+ /** Response from a single OGC API collection (`/ogc/features/collections/{id}`). */
1043
+ export interface HonuaOgcCollectionMetadata extends HonuaOgcCollectionSummary {
1044
+ cache?: HonuaCacheState;
1045
+ }
1046
+ /** A single queryable property definition. */
1047
+ export interface HonuaOgcQueryableProperty {
1048
+ title?: string;
1049
+ description?: string;
1050
+ type?: string;
1051
+ enum?: unknown[];
1052
+ }
1053
+ /** Response from OGC API queryables (`/ogc/features/collections/{id}/queryables`). */
1054
+ export interface HonuaOgcQueryablesResponse {
1055
+ type?: string;
1056
+ title?: string;
1057
+ description?: string;
1058
+ properties?: Record<string, HonuaOgcQueryableProperty>;
1059
+ cache?: HonuaCacheState;
1060
+ }
1061
+ /** Identifier of an OGC tile-matrix-set (e.g. `WebMercatorQuad`). */
1062
+ export type OgcTileMatrixSetId = string;
1063
+ /** Identifier for a tileset variant (vector or raster) within a collection. */
1064
+ export type OgcTileDataType = "vector" | "map" | "coverage" | (string & {});
1065
+ /** Metadata for one tile-matrix entry (zoom level). */
1066
+ export interface HonuaOgcTileMatrix {
1067
+ id: string;
1068
+ scaleDenominator?: number;
1069
+ cellSize?: number;
1070
+ matrixWidth?: number;
1071
+ matrixHeight?: number;
1072
+ tileWidth?: number;
1073
+ tileHeight?: number;
1074
+ pointOfOrigin?: readonly number[];
1075
+ cornerOfOrigin?: "topLeft" | "bottomLeft";
1076
+ }
1077
+ /** Metadata for one tile-matrix-set (CRS and supported tile matrices). */
1078
+ export interface HonuaOgcTileMatrixSet {
1079
+ id: string;
1080
+ uri?: string;
1081
+ title?: string;
1082
+ description?: string;
1083
+ crs?: string;
1084
+ orderedAxes?: readonly string[];
1085
+ tileMatrices?: readonly HonuaOgcTileMatrix[];
1086
+ links?: HonuaOgcLink[];
1087
+ cache?: HonuaCacheState;
1088
+ }
1089
+ /** Response from `/tileMatrixSets`. */
1090
+ export interface HonuaOgcTileMatrixSetsResponse {
1091
+ tileMatrixSets: HonuaOgcTileMatrixSet[];
1092
+ links?: HonuaOgcLink[];
1093
+ cache?: HonuaCacheState;
1094
+ }
1095
+ /** Metadata for a single tileset (a tile-matrix-set bound to a collection). */
1096
+ export interface HonuaOgcTilesetMetadata {
1097
+ tileMatrixSetURI?: string;
1098
+ tileMatrixSetId?: string;
1099
+ dataType?: OgcTileDataType;
1100
+ crs?: string;
1101
+ links?: HonuaOgcLink[];
1102
+ /** Optional explicit CRS for tile bounds, otherwise inferred from TMS. */
1103
+ boundingBox?: {
1104
+ lowerLeft?: readonly number[];
1105
+ upperRight?: readonly number[];
1106
+ crs?: string;
1107
+ };
1108
+ /** Pre-baked styles available on the tileset (for styled-tile access). */
1109
+ styles?: Array<{
1110
+ id: string;
1111
+ title?: string;
1112
+ }>;
1113
+ cache?: HonuaCacheState;
1114
+ }
1115
+ /** Response from `/collections/{id}/tiles` (list of tilesets). */
1116
+ export interface HonuaOgcTilesetsResponse {
1117
+ tilesets: HonuaOgcTilesetMetadata[];
1118
+ links?: HonuaOgcLink[];
1119
+ cache?: HonuaCacheState;
1120
+ }
1121
+ /** Request envelope for tileset-discovery operations. */
1122
+ export interface OgcTilesetsRequest extends OgcMetadataRequest {
1123
+ collectionId: string | number;
1124
+ }
1125
+ /** Request envelope for one tileset's metadata. */
1126
+ export interface OgcTilesetRequest extends OgcTilesetsRequest {
1127
+ tileMatrixSetId: OgcTileMatrixSetId;
1128
+ }
1129
+ /** Request envelope for fetching a single tile. */
1130
+ export interface OgcTileRequest {
1131
+ collectionId: string | number;
1132
+ tileMatrixSetId: OgcTileMatrixSetId;
1133
+ tileMatrix: string | number;
1134
+ tileRow: number;
1135
+ tileCol: number;
1136
+ /** `Accept` header (`application/vnd.mapbox-vector-tile`, `image/png`, …). */
1137
+ accept?: string;
1138
+ signal?: AbortSignal;
1139
+ extraParams?: Record<string, string | number | boolean>;
1140
+ }
1141
+ /** Raw bytes returned from a tile fetch, plus the negotiated content type. */
1142
+ export interface HonuaOgcTileResponse {
1143
+ bytes: Uint8Array;
1144
+ contentType: string;
1145
+ /** True when the server returned a non-error empty payload (sparse tile). */
1146
+ empty: boolean;
1147
+ }
1148
+ /**
1149
+ * Output format token for an OGC API Maps request. The OGC standard
1150
+ * defines the `f` query value as a short-name token (`png`, `jpeg`,
1151
+ * `jpg`, `tiff`, `tif`); the server validates against that set. The SDK
1152
+ * also accepts the matching media-type aliases (`image/png`, etc.) and
1153
+ * normalizes them to the short name on the wire. The Accept header is
1154
+ * media-type based regardless.
1155
+ */
1156
+ export type OgcMapFormat = "png" | "jpeg" | "jpg" | "tiff" | "tif" | "image/png" | "image/jpeg" | "image/tiff" | (string & {});
1157
+ /**
1158
+ * Request envelope for an OGC API Maps render. `collectionId` is omitted
1159
+ * for dataset-level renders. `styleId` selects a server-managed style;
1160
+ * inline style overrides are not exposed here (the server-side spec
1161
+ * does not standardize an inline-style channel).
1162
+ */
1163
+ export interface OgcMapImageRequest {
1164
+ collectionId?: string | number;
1165
+ styleId?: string;
1166
+ width?: number;
1167
+ height?: number;
1168
+ bbox?: readonly [number, number, number, number] | string;
1169
+ bboxCrs?: string;
1170
+ crs?: string;
1171
+ format?: OgcMapFormat;
1172
+ /** Optional comma-separated list of collections (dataset-level only). */
1173
+ collections?: readonly string[];
1174
+ /** Optional transparency hint. */
1175
+ transparent?: boolean;
1176
+ signal?: AbortSignal;
1177
+ extraParams?: Record<string, string | number | boolean>;
1178
+ }
1179
+ /** Raw bytes returned from a map render, plus the negotiated content type. */
1180
+ export interface HonuaOgcMapImageResponse {
1181
+ bytes: Uint8Array;
1182
+ contentType: string;
1183
+ }
1184
+ /** Process input/output literal envelope. */
1185
+ export type OgcProcessIoValue = string | number | boolean | null | Record<string, unknown> | unknown[];
1186
+ /** Process input bag — id → value (or qualified value). */
1187
+ export type OgcProcessInputs = Record<string, OgcProcessIoValue>;
1188
+ /** OGC API Processes process metadata (subset; servers may include more). */
1189
+ export interface HonuaOgcProcessSummary {
1190
+ id: string;
1191
+ title?: string;
1192
+ description?: string;
1193
+ version?: string;
1194
+ jobControlOptions?: readonly string[];
1195
+ outputTransmission?: readonly string[];
1196
+ links?: HonuaOgcLink[];
1197
+ }
1198
+ /** Detailed process description (input / output schemas). */
1199
+ export interface HonuaOgcProcessDescription extends HonuaOgcProcessSummary {
1200
+ inputs?: Record<string, Record<string, unknown>>;
1201
+ outputs?: Record<string, Record<string, unknown>>;
1202
+ cache?: HonuaCacheState;
1203
+ }
1204
+ /** Response from `/processes`. */
1205
+ export interface HonuaOgcProcessesResponse {
1206
+ processes: HonuaOgcProcessSummary[];
1207
+ links?: HonuaOgcLink[];
1208
+ cache?: HonuaCacheState;
1209
+ }
1210
+ /** OGC API Processes 1.0 status values. */
1211
+ export type OgcProcessStatus = "accepted" | "running" | "successful" | "failed" | "dismissed";
1212
+ /**
1213
+ * Job-status payload returned from `/jobs/{jobId}`. Mirrors the OGC
1214
+ * Processes 1.0 statusInfo schema.
1215
+ */
1216
+ export interface HonuaOgcProcessJobStatus {
1217
+ jobID: string;
1218
+ processID?: string;
1219
+ status: OgcProcessStatus;
1220
+ message?: string;
1221
+ progress?: number;
1222
+ created?: string;
1223
+ started?: string;
1224
+ finished?: string;
1225
+ updated?: string;
1226
+ links?: HonuaOgcLink[];
1227
+ /** Server-reported error envelope on failure. */
1228
+ exception?: {
1229
+ code: string;
1230
+ message: string;
1231
+ details?: unknown;
1232
+ };
1233
+ }
1234
+ /**
1235
+ * Process-execution request envelope. honua-server advertises
1236
+ * `jobControlOptions: ['async-execute', 'dismiss']` and rejects any
1237
+ * `response` other than `document` with HTTP 501 — the SDK type mirrors
1238
+ * that supported surface (no `sync` mode, no `raw` response). `mode: "auto"`
1239
+ * omits the `Prefer` header so the server applies its default; `"async"`
1240
+ * sends `Prefer: respond-async` explicitly.
1241
+ */
1242
+ export interface OgcProcessExecuteRequest {
1243
+ processId: string;
1244
+ inputs?: OgcProcessInputs;
1245
+ outputs?: Record<string, {
1246
+ transmissionMode?: "value" | "reference";
1247
+ format?: {
1248
+ mediaType?: string;
1249
+ };
1250
+ }>;
1251
+ /** `async-execute` returns a job; `auto` lets the server pick (always async on Honua). */
1252
+ mode?: "async" | "auto";
1253
+ headers?: HeadersInit;
1254
+ signal?: AbortSignal;
1255
+ }
1256
+ /** Job descriptor returned when the server accepted an async execution. */
1257
+ export interface HonuaOgcProcessJobAccepted {
1258
+ jobID: string;
1259
+ status: OgcProcessStatus;
1260
+ processID?: string;
1261
+ links?: HonuaOgcLink[];
1262
+ /** Initial (often `accepted` or `running`) status payload, when reported. */
1263
+ statusInfo?: HonuaOgcProcessJobStatus;
1264
+ }
1265
+ /**
1266
+ * Result document returned from `/jobs/{jobId}/results`. OGC API Processes
1267
+ * Part 1 §7.11.1 defines the document-mode body as a map keyed by output
1268
+ * identifier; the body is the map itself, not an `{ outputs: ... }`
1269
+ * envelope. honua-server returns `{}` until populated entries land via the
1270
+ * artifact store.
1271
+ */
1272
+ export type HonuaOgcProcessJobResults = Record<string, unknown>;
1273
+ /** Subset of the STAC core API search request shape. */
1274
+ export interface StacSearchRequest {
1275
+ bbox?: readonly [number, number, number, number];
1276
+ datetime?: string;
1277
+ intersects?: Record<string, unknown>;
1278
+ ids?: readonly string[];
1279
+ collections?: readonly string[];
1280
+ filter?: string;
1281
+ filterLang?: "cql2-text" | "cql2-json";
1282
+ limit?: number;
1283
+ /**
1284
+ * Numeric page offset. honua-server's `/stac/search` uses `offset` as
1285
+ * the canonical paging token (its `rel=next` link href carries
1286
+ * `?offset=N`). Prefer this over `next` for honua-server compatibility.
1287
+ */
1288
+ offset?: number;
1289
+ /**
1290
+ * Server-driven page token. Optional support for STAC servers that
1291
+ * advertise an opaque `?next=…` token instead of `offset`.
1292
+ */
1293
+ next?: string;
1294
+ /** Subset of asset / item properties to return. */
1295
+ fields?: {
1296
+ include?: readonly string[];
1297
+ exclude?: readonly string[];
1298
+ };
1299
+ sortby?: string;
1300
+ signal?: AbortSignal;
1301
+ /** When `true`, the adapter posts the body to `/search`. */
1302
+ usePost?: boolean;
1303
+ }
1304
+ /** Single STAC item (a GeoJSON feature with STAC-specific extensions). */
1305
+ export interface HonuaStacItemResponse extends HonuaOgcFeatureResponse {
1306
+ collection?: string;
1307
+ stac_version?: string;
1308
+ stac_extensions?: readonly string[];
1309
+ assets?: Record<string, {
1310
+ href: string;
1311
+ type?: string;
1312
+ title?: string;
1313
+ roles?: readonly string[];
1314
+ }>;
1315
+ }
1316
+ /** Response from STAC `/search`. */
1317
+ export interface HonuaStacItemCollectionResponse {
1318
+ type: "FeatureCollection";
1319
+ features: HonuaStacItemResponse[];
1320
+ links?: HonuaOgcLink[];
1321
+ numberMatched?: number;
1322
+ numberReturned?: number;
1323
+ context?: {
1324
+ matched?: number;
1325
+ returned?: number;
1326
+ limit?: number;
1327
+ };
1328
+ }
1329
+ /** Subset of the STAC catalog landing page. */
1330
+ export interface HonuaStacLandingResponse extends HonuaOgcLandingResponse {
1331
+ conformsTo?: readonly string[];
1332
+ /** Stac-specific catalog id. */
1333
+ id?: string;
1334
+ }
1335
+ /**
1336
+ * A feature with a typed attribute schema. Use with `HonuaFeatureLayer<T>` to
1337
+ * get autocompletion and type checking on attribute access.
1338
+ */
1339
+ export interface HonuaTypedFeature<T = Record<string, unknown>> {
1340
+ attributes: T;
1341
+ geometry?: EsriGeometry | Record<string, unknown> | null;
1342
+ }
1343
+ /**
1344
+ * A query response with typed feature attributes. The generic parameter `T`
1345
+ * flows from `HonuaFeatureLayer<T>` to provide typed attribute access.
1346
+ */
1347
+ export interface HonuaTypedQueryResponse<T = Record<string, unknown>> {
1348
+ objectIdFieldName?: string;
1349
+ geometryType?: EsriGeometryType;
1350
+ spatialReference?: HonuaSpatialReference;
1351
+ fields?: HonuaFieldInfo[];
1352
+ features?: HonuaTypedFeature<T>[];
1353
+ exceededTransferLimit?: boolean;
1354
+ }
1355
+ //# sourceMappingURL=types.d.ts.map