ts-maps 0.2.6 → 0.3.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 (225) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +202 -141
  3. package/dist/core-map/assets/embedded-icons.d.ts +8 -0
  4. package/dist/core-map/control/AttributionControl.d.ts +12 -0
  5. package/dist/core-map/control/Control.d.ts +14 -0
  6. package/dist/core-map/control/LayersControl.d.ts +38 -0
  7. package/dist/core-map/control/ScaleControl.d.ts +14 -0
  8. package/dist/core-map/control/ZoomControl.d.ts +14 -0
  9. package/dist/core-map/control/index.d.ts +5 -0
  10. package/dist/core-map/core/Browser.d.ts +24 -0
  11. package/dist/core-map/core/Class.d.ts +12 -0
  12. package/dist/core-map/core/Events.d.ts +31 -0
  13. package/dist/core-map/core/Handler.d.ts +12 -0
  14. package/dist/core-map/core/Util.d.ts +24 -0
  15. package/dist/core-map/core/index.d.ts +7 -0
  16. package/dist/core-map/dom/Animation.d.ts +50 -0
  17. package/dist/core-map/dom/DomEvent.DoubleTap.d.ts +6 -0
  18. package/dist/core-map/dom/DomEvent.PointerEvents.d.ts +4 -0
  19. package/dist/core-map/dom/DomEvent.d.ts +15 -0
  20. package/dist/core-map/dom/DomUtil.d.ts +22 -0
  21. package/dist/core-map/dom/Draggable.d.ts +26 -0
  22. package/dist/core-map/dom/PosAnimation.d.ts +19 -0
  23. package/dist/core-map/dom/easing.d.ts +41 -0
  24. package/dist/core-map/dom/index.d.ts +8 -0
  25. package/dist/core-map/geo/LatLng.d.ts +18 -0
  26. package/dist/core-map/geo/LatLngBounds.d.ts +27 -0
  27. package/dist/core-map/geo/TerrainSource.d.ts +35 -0
  28. package/dist/core-map/geo/crs/CRS.d.ts +23 -0
  29. package/dist/core-map/geo/crs/EPSG3395.d.ts +7 -0
  30. package/dist/core-map/geo/crs/EPSG3857.d.ts +10 -0
  31. package/dist/core-map/geo/crs/EPSG4326.d.ts +7 -0
  32. package/dist/core-map/geo/crs/EarthCRS.d.ts +7 -0
  33. package/dist/core-map/geo/crs/SimpleCRS.d.ts +11 -0
  34. package/dist/core-map/geo/crs/index.d.ts +6 -0
  35. package/dist/core-map/geo/elevation.d.ts +23 -0
  36. package/dist/core-map/geo/index.d.ts +13 -0
  37. package/dist/core-map/geo/index.js +1204 -0
  38. package/dist/core-map/geo/projection/Projection.Globe.d.ts +30 -0
  39. package/dist/core-map/geo/projection/Projection.LonLat.d.ts +11 -0
  40. package/dist/core-map/geo/projection/Projection.Mercator.d.ts +6 -0
  41. package/dist/core-map/geo/projection/Projection.SphericalMercator.d.ts +6 -0
  42. package/dist/core-map/geo/projection/index.d.ts +5 -0
  43. package/dist/core-map/geo/terrainMesh.d.ts +21 -0
  44. package/dist/core-map/geometry/Bounds.d.ts +23 -0
  45. package/dist/core-map/geometry/LineUtil.d.ts +13 -0
  46. package/dist/core-map/geometry/Point.d.ts +35 -0
  47. package/dist/core-map/geometry/PolyUtil.d.ts +6 -0
  48. package/dist/core-map/geometry/RTree.d.ts +35 -0
  49. package/dist/core-map/geometry/Transformation.d.ts +12 -0
  50. package/dist/core-map/geometry/earcut.d.ts +17 -0
  51. package/dist/core-map/geometry/index.d.ts +10 -0
  52. package/dist/core-map/geometry/index.js +1586 -0
  53. package/dist/core-map/index.d.ts +59 -0
  54. package/dist/core-map/layer/BlanketOverlay.d.ts +24 -0
  55. package/dist/core-map/layer/DivOverlay.d.ts +40 -0
  56. package/dist/core-map/layer/FeatureGroup.d.ts +11 -0
  57. package/dist/core-map/layer/GeoJSON.d.ts +17 -0
  58. package/dist/core-map/layer/GeoJSONClusterSource.d.ts +54 -0
  59. package/dist/core-map/layer/HeatmapLayer.d.ts +40 -0
  60. package/dist/core-map/layer/ImageOverlay.d.ts +27 -0
  61. package/dist/core-map/layer/Layer.d.ts +18 -0
  62. package/dist/core-map/layer/LayerGroup.d.ts +16 -0
  63. package/dist/core-map/layer/Popup.d.ts +18 -0
  64. package/dist/core-map/layer/SVGOverlay.d.ts +4 -0
  65. package/dist/core-map/layer/Tooltip.d.ts +15 -0
  66. package/dist/core-map/layer/VideoOverlay.d.ts +4 -0
  67. package/dist/core-map/layer/index.d.ts +18 -0
  68. package/dist/core-map/layer/marker/DefaultIcon.d.ts +7 -0
  69. package/dist/core-map/layer/marker/DivIcon.d.ts +5 -0
  70. package/dist/core-map/layer/marker/Icon.d.ts +10 -0
  71. package/dist/core-map/layer/marker/Marker.Drag.d.ts +17 -0
  72. package/dist/core-map/layer/marker/Marker.d.ts +37 -0
  73. package/dist/core-map/layer/marker/index.d.ts +5 -0
  74. package/dist/core-map/layer/tile/GridLayer.d.ts +88 -0
  75. package/dist/core-map/layer/tile/RasterDEMLayer.d.ts +46 -0
  76. package/dist/core-map/layer/tile/TileLayer.d.ts +22 -0
  77. package/dist/core-map/layer/tile/VectorTileMapLayer.d.ts +145 -0
  78. package/dist/core-map/layer/tile/WMSTileLayer.d.ts +12 -0
  79. package/dist/core-map/layer/tile/index.d.ts +15 -0
  80. package/dist/core-map/layer/tile/urlTemplate.d.ts +17 -0
  81. package/dist/core-map/layer/vector/Canvas.d.ts +52 -0
  82. package/dist/core-map/layer/vector/Circle.d.ts +7 -0
  83. package/dist/core-map/layer/vector/CircleMarker.d.ts +22 -0
  84. package/dist/core-map/layer/vector/Path.d.ts +20 -0
  85. package/dist/core-map/layer/vector/Polygon.d.ts +13 -0
  86. package/dist/core-map/layer/vector/Polyline.d.ts +30 -0
  87. package/dist/core-map/layer/vector/Rectangle.d.ts +6 -0
  88. package/dist/core-map/layer/vector/Renderer.d.ts +12 -0
  89. package/dist/core-map/layer/vector/Renderer.getRenderer.d.ts +1 -0
  90. package/dist/core-map/layer/vector/SVG.d.ts +21 -0
  91. package/dist/core-map/layer/vector/index.d.ts +10 -0
  92. package/dist/core-map/map/Map.d.ts +353 -0
  93. package/dist/core-map/map/Style.d.ts +29 -0
  94. package/dist/core-map/map/handler/BoxZoomHandler.d.ts +23 -0
  95. package/dist/core-map/map/handler/DoubleClickZoomHandler.d.ts +6 -0
  96. package/dist/core-map/map/handler/DragHandler.d.ts +27 -0
  97. package/dist/core-map/map/handler/KeyboardHandler.d.ts +18 -0
  98. package/dist/core-map/map/handler/PinchZoomHandler.d.ts +20 -0
  99. package/dist/core-map/map/handler/ScrollWheelZoomHandler.d.ts +12 -0
  100. package/dist/core-map/map/handler/TapHoldHandler.d.ts +15 -0
  101. package/dist/core-map/map/handler/TwoFingerPitchHandler.d.ts +21 -0
  102. package/dist/core-map/map/handler/TwoFingerRotateHandler.d.ts +17 -0
  103. package/dist/core-map/map/index.d.ts +11 -0
  104. package/dist/core-map/mvt/VectorTile.d.ts +9 -0
  105. package/dist/core-map/mvt/VectorTileFeature.d.ts +59 -0
  106. package/dist/core-map/mvt/VectorTileLayer.d.ts +13 -0
  107. package/dist/core-map/proto/Pbf.d.ts +84 -0
  108. package/dist/core-map/renderer/webgl/GLContext.d.ts +22 -0
  109. package/dist/core-map/renderer/webgl/WebGLTileRenderer.d.ts +86 -0
  110. package/dist/core-map/renderer/webgl/index.d.ts +9 -0
  111. package/dist/core-map/renderer/webgl/mat4.d.ts +14 -0
  112. package/dist/core-map/services/index.d.ts +26 -0
  113. package/dist/core-map/services/index.js +1230 -0
  114. package/dist/core-map/services/providers/Google.d.ts +16 -0
  115. package/dist/core-map/services/providers/Mapbox.d.ts +26 -0
  116. package/dist/core-map/services/providers/Maptiler.d.ts +11 -0
  117. package/dist/core-map/services/providers/Nominatim.d.ts +11 -0
  118. package/dist/core-map/services/providers/OSRM.d.ts +20 -0
  119. package/dist/core-map/services/providers/Photon.d.ts +10 -0
  120. package/dist/core-map/services/providers/Valhalla.d.ts +20 -0
  121. package/dist/core-map/services/types.d.ts +84 -0
  122. package/dist/core-map/storage/TileCache.d.ts +40 -0
  123. package/dist/core-map/storage/cachedFetch.d.ts +13 -0
  124. package/dist/core-map/storage/defaultCache.d.ts +3 -0
  125. package/dist/core-map/storage/index.d.ts +13 -0
  126. package/dist/core-map/storage/index.js +283 -0
  127. package/dist/core-map/storage/offlineRegion.d.ts +26 -0
  128. package/dist/core-map/style-spec/diff.d.ts +17 -0
  129. package/dist/core-map/style-spec/expressions/Color.d.ts +16 -0
  130. package/dist/core-map/style-spec/expressions/compile.d.ts +4 -0
  131. package/dist/core-map/style-spec/expressions/errors.d.ts +8 -0
  132. package/dist/core-map/style-spec/expressions/index.d.ts +16 -0
  133. package/dist/core-map/style-spec/expressions/legacyFilter.d.ts +6 -0
  134. package/dist/core-map/style-spec/expressions/operators/conversion.d.ts +1 -0
  135. package/dist/core-map/style-spec/expressions/operators/interpolate.d.ts +14 -0
  136. package/dist/core-map/style-spec/expressions/operators/logical.d.ts +1 -0
  137. package/dist/core-map/style-spec/expressions/operators/lookup.d.ts +1 -0
  138. package/dist/core-map/style-spec/expressions/operators/math.d.ts +1 -0
  139. package/dist/core-map/style-spec/expressions/operators/string.d.ts +1 -0
  140. package/dist/core-map/style-spec/expressions/registry.d.ts +29 -0
  141. package/dist/core-map/style-spec/expressions/types.d.ts +48 -0
  142. package/dist/core-map/style-spec/expressions/validate.d.ts +13 -0
  143. package/dist/core-map/style-spec/index.d.ts +68 -0
  144. package/dist/core-map/style-spec/index.js +2529 -0
  145. package/dist/core-map/style-spec/schema.d.ts +381 -0
  146. package/dist/core-map/style-spec/types.d.ts +375 -0
  147. package/dist/core-map/style-spec/validate.d.ts +14 -0
  148. package/dist/core-map/symbols/CollisionIndex.d.ts +21 -0
  149. package/dist/core-map/symbols/GlyphAtlas.d.ts +38 -0
  150. package/dist/core-map/symbols/IconAtlas.d.ts +18 -0
  151. package/dist/core-map/symbols/index.d.ts +6 -0
  152. package/dist/core-map/symbols/index.js +501 -0
  153. package/dist/index.d.ts +2 -4
  154. package/dist/index.js +18414 -1857
  155. package/package.json +50 -58
  156. package/src/core-map/ts-maps.css +725 -0
  157. package/dist/components/base.d.ts +0 -17
  158. package/dist/components/concerns/interactable.d.ts +0 -1
  159. package/dist/components/line.d.ts +0 -29
  160. package/dist/components/marker.d.ts +0 -50
  161. package/dist/components/region.d.ts +0 -46
  162. package/dist/components/tooltip.d.ts +0 -22
  163. package/dist/core/apply-transform.d.ts +0 -7
  164. package/dist/core/coords-to-point.d.ts +0 -12
  165. package/dist/core/create-lines.d.ts +0 -2
  166. package/dist/core/create-markers.d.ts +0 -2
  167. package/dist/core/create-regions.d.ts +0 -2
  168. package/dist/core/create-series.d.ts +0 -3
  169. package/dist/core/get-inset-for-point.d.ts +0 -13
  170. package/dist/core/get-marker-position.d.ts +0 -6
  171. package/dist/core/index.d.ts +0 -1
  172. package/dist/core/reposition-labels.d.ts +0 -2
  173. package/dist/core/reposition-lines.d.ts +0 -2
  174. package/dist/core/reposition-markers.d.ts +0 -2
  175. package/dist/core/resize.d.ts +0 -3
  176. package/dist/core/set-focus.d.ts +0 -2
  177. package/dist/core/set-scale.d.ts +0 -2
  178. package/dist/core/setup-container-events.d.ts +0 -2
  179. package/dist/core/setup-container-touch-events.d.ts +0 -2
  180. package/dist/core/setup-element-events.d.ts +0 -2
  181. package/dist/core/setup-zoom-buttons.d.ts +0 -2
  182. package/dist/core/update-size.d.ts +0 -2
  183. package/dist/data-visualization.d.ts +0 -17
  184. package/dist/defaults/events.d.ts +0 -1
  185. package/dist/defaults/options.d.ts +0 -1
  186. package/dist/event-handler.d.ts +0 -1
  187. package/dist/legend.d.ts +0 -17
  188. package/dist/map.d.ts +0 -81
  189. package/dist/maps/brasil.d.ts +0 -2
  190. package/dist/maps/brasil.js +0 -7
  191. package/dist/maps/canada.d.ts +0 -2
  192. package/dist/maps/canada.js +0 -7
  193. package/dist/maps/iraq.d.ts +0 -2
  194. package/dist/maps/iraq.js +0 -84
  195. package/dist/maps/italy.d.ts +0 -2
  196. package/dist/maps/italy.js +0 -7
  197. package/dist/maps/russia.d.ts +0 -2
  198. package/dist/maps/russia.js +0 -366
  199. package/dist/maps/spain.d.ts +0 -2
  200. package/dist/maps/spain.js +0 -7
  201. package/dist/maps/us-aea-en.d.ts +0 -2
  202. package/dist/maps/us-aea-en.js +0 -7
  203. package/dist/maps/us-lcc-en.d.ts +0 -2
  204. package/dist/maps/us-lcc-en.js +0 -7
  205. package/dist/maps/us-merc-en.d.ts +0 -2
  206. package/dist/maps/us-merc-en.js +0 -7
  207. package/dist/maps/us-mill-en.d.ts +0 -2
  208. package/dist/maps/us-mill-en.js +0 -7
  209. package/dist/maps/world-merc.d.ts +0 -2
  210. package/dist/maps/world-merc.js +0 -7
  211. package/dist/maps/world.d.ts +0 -2
  212. package/dist/maps/world.js +0 -7
  213. package/dist/projection.d.ts +0 -1
  214. package/dist/scales/ordinal-scale.d.ts +0 -12
  215. package/dist/series.d.ts +0 -14
  216. package/dist/svg/base-element.d.ts +0 -19
  217. package/dist/svg/canvas-element.d.ts +0 -21
  218. package/dist/svg/image-element.d.ts +0 -12
  219. package/dist/svg/shape-element.d.ts +0 -19
  220. package/dist/svg/text-element.d.ts +0 -7
  221. package/dist/types.d.ts +0 -418
  222. package/dist/util/deep-merge.d.ts +0 -2
  223. package/dist/util/index.d.ts +0 -18
  224. package/dist/utils.d.ts +0 -87
  225. package/dist/vector-map.d.ts +0 -5
@@ -0,0 +1,84 @@
1
+ // Protobuf decoder — in-house, zero-dep.
2
+ // Inspired by the wire-format descriptions in mapbox/pbf (BSD-3-Clause);
3
+ // this implementation is an independent TypeScript rewrite.
4
+ //
5
+ // Implements the subset of the protobuf wire format needed to read
6
+ // Mapbox Vector Tiles v2 (plus symmetric write support for fixtures
7
+ // and debug tooling). Groups (wire types 3 and 4) are not supported.
8
+ // See https://protobuf.dev/programming-guides/encoding/ for details.
9
+ // Wire types, per the protobuf spec.
10
+ export declare const PBF_VARINT: number;
11
+ export declare const PBF_FIXED64: number;
12
+ export declare const PBF_BYTES: number;
13
+ export declare const PBF_FIXED32: number;
14
+ // eslint-disable-next-line no-unused-vars
15
+ export type PbfReadFieldFn<T> = (tag: number, result: T, pbf: Pbf) => void;
16
+ // eslint-disable-next-line no-unused-vars
17
+ export type PbfWriteFn<V> = (value: V, pbf: Pbf) => void;
18
+ export declare class Pbf {
19
+ buf: Uint8Array;
20
+ pos: number;
21
+ type: number;
22
+ length: number;
23
+ constructor(buf?: Uint8Array | ArrayBuffer);
24
+ readFields<T>(readField: PbfReadFieldFn<T>, result: T, end?: number): T;
25
+ readMessage<T>(readField: PbfReadFieldFn<T>, result: T): T;
26
+ readFixed32(): number;
27
+ readSFixed32(): number;
28
+ readFixed64(): number;
29
+ readSFixed64(): number;
30
+ readFloat(): number;
31
+ readDouble(): number;
32
+ readVarint(isSigned?: boolean): number;
33
+ readVarint64(): number;
34
+ readSVarint(): number;
35
+ readBoolean(): boolean;
36
+ readString(): string;
37
+ readBytes(): Uint8Array;
38
+ readPackedVarint(arr?: number[], isSigned?: boolean): number[];
39
+ readPackedSVarint(arr?: number[]): number[];
40
+ readPackedBoolean(arr?: boolean[]): boolean[];
41
+ readPackedFloat(arr?: number[]): number[];
42
+ readPackedDouble(arr?: number[]): number[];
43
+ readPackedFixed32(arr?: number[]): number[];
44
+ readPackedSFixed32(arr?: number[]): number[];
45
+ readPackedFixed64(arr?: number[]): number[];
46
+ readPackedSFixed64(arr?: number[]): number[];
47
+ skip(val: number): void;
48
+ writeTag(tag: number, type: number): void;
49
+ realloc(min: number): void;
50
+ finish(): Uint8Array;
51
+ destroy(): void;
52
+ writeVarint(val: number): void;
53
+ writeSVarint(val: number): void;
54
+ writeBoolean(val: boolean): void;
55
+ writeString(str: string): void;
56
+ writeFloat(val: number): void;
57
+ writeDouble(val: number): void;
58
+ writeBytes(bytes: Uint8Array): void;
59
+ writeRawFixed32(val: number): void;
60
+ writeRawSFixed32(val: number): void;
61
+ writeRawFixed64(val: number): void;
62
+ writeRawSFixed64(val: number): void;
63
+ writeMessage<V>(tag: number, fn: PbfWriteFn<V>, value: V): void;
64
+ writePackedVarint(tag: number, arr: number[]): void;
65
+ writePackedSVarint(tag: number, arr: number[]): void;
66
+ writePackedBoolean(tag: number, arr: boolean[]): void;
67
+ writePackedFloat(tag: number, arr: number[]): void;
68
+ writePackedDouble(tag: number, arr: number[]): void;
69
+ writePackedFixed32(tag: number, arr: number[]): void;
70
+ writePackedSFixed32(tag: number, arr: number[]): void;
71
+ writePackedFixed64(tag: number, arr: number[]): void;
72
+ writePackedSFixed64(tag: number, arr: number[]): void;
73
+ writeBytesField(tag: number, buffer: Uint8Array): void;
74
+ writeFixed32(tag: number, val: number): void;
75
+ writeSFixed32(tag: number, val: number): void;
76
+ writeFixed64(tag: number, val: number): void;
77
+ writeSFixed64(tag: number, val: number): void;
78
+ writeVarintField(tag: number, val: number): void;
79
+ writeSVarintField(tag: number, val: number): void;
80
+ writeStringField(tag: number, str: string): void;
81
+ writeFloatField(tag: number, val: number): void;
82
+ writeDoubleField(tag: number, val: number): void;
83
+ writeBooleanField(tag: number, val: boolean): void;
84
+ }
@@ -0,0 +1,22 @@
1
+ export declare interface GLContextOptions {
2
+ alpha?: boolean
3
+ premultipliedAlpha?: boolean
4
+ antialias?: boolean
5
+ }
6
+ // Thin wrapper around a WebGL2 rendering context. Centralises program
7
+ // compilation + buffer creation + viewport resizing so the higher-level
8
+ // renderer stays focused on draw orchestration. When WebGL2 is unavailable,
9
+ // the constructor throws a typed error so callers can fall back cleanly.
10
+ export declare class WebGLUnsupportedError extends Error {
11
+ constructor(message?: string);
12
+ }
13
+ export declare class GLContext {
14
+ gl: WebGL2RenderingContext;
15
+ canvas: HTMLCanvasElement;
16
+ constructor(canvas: HTMLCanvasElement, opts?: GLContextOptions);
17
+ compileProgram(vertSrc: string, fragSrc: string): WebGLProgram;
18
+ _compileShader(type: GLenum, src: string): WebGLShader;
19
+ createBuffer(data: ArrayBufferView, usage?: number): WebGLBuffer;
20
+ resize(width: number, height: number): void;
21
+ clear(r: number, g: number, b: number, a: number): void;
22
+ }
@@ -0,0 +1,86 @@
1
+ import { GLContext } from './GLContext';
2
+ export declare interface LineOptions {
3
+ width: number
4
+ color: RGBA
5
+ cap?: 'butt' | 'round' | 'square'
6
+ join?: 'miter' | 'round' | 'bevel'
7
+ }
8
+ export declare interface CircleOptions {
9
+ radius: number
10
+ color: RGBA
11
+ strokeColor?: RGBA
12
+ strokeWidth?: number
13
+ }
14
+ declare interface FillProgram {
15
+ program: WebGLProgram
16
+ u_matrix: WebGLUniformLocation | null
17
+ u_color: WebGLUniformLocation | null
18
+ a_position: number
19
+ }
20
+ declare interface LineProgram {
21
+ program: WebGLProgram
22
+ u_matrix: WebGLUniformLocation | null
23
+ u_color: WebGLUniformLocation | null
24
+ u_width: WebGLUniformLocation | null
25
+ a_position: number
26
+ a_normal: number
27
+ a_progress: number
28
+ }
29
+ declare interface CircleProgram {
30
+ program: WebGLProgram
31
+ u_matrix: WebGLUniformLocation | null
32
+ u_color: WebGLUniformLocation | null
33
+ u_stroke_color: WebGLUniformLocation | null
34
+ u_stroke_width: WebGLUniformLocation | null
35
+ u_radius: WebGLUniformLocation | null
36
+ a_center: number
37
+ a_offset: number
38
+ }
39
+ declare interface FillExtrusionProgram {
40
+ program: WebGLProgram
41
+ u_matrix: WebGLUniformLocation | null
42
+ u_color: WebGLUniformLocation | null
43
+ u_opacity: WebGLUniformLocation | null
44
+ a_position: number
45
+ a_normal: number
46
+ }
47
+ declare interface SkyProgram {
48
+ program: WebGLProgram
49
+ u_sky_color: WebGLUniformLocation | null
50
+ u_horizon_color: WebGLUniformLocation | null
51
+ u_pitch_t: WebGLUniformLocation | null
52
+ u_horizon_blend: WebGLUniformLocation | null
53
+ a_position: number
54
+ }
55
+ export declare interface FillExtrusionFootprint {
56
+ rings: Array<Array<{ x: number, y: number }>>
57
+ }
58
+ declare type RGBA = [number, number, number, number];
59
+ export declare class WebGLTileRenderer {
60
+ ctx: GLContext;
61
+ _projection: Float32Array;
62
+ _fill: FillProgram;
63
+ _line: LineProgram;
64
+ _circle: CircleProgram;
65
+ _fillExtrusion: FillExtrusionProgram | null;
66
+ _sky: SkyProgram | null;
67
+ _buffers: WebGLBuffer[];
68
+ constructor(canvas: HTMLCanvasElement);
69
+ setProjectionMatrix(m: Float32Array): void;
70
+ clear(): void;
71
+ destroy(): void;
72
+ drawFill(triangles: Float32Array, color: RGBA): void;
73
+ drawLine(linestrip: Float32Array, options: LineOptions): void;
74
+ drawCircles(centers: Float32Array, options: CircleOptions): void;
75
+ drawFillExtrusion(footprints: FillExtrusionFootprint[], heights: number[], base: number[] | number, color: RGBA, opacity: number, projectionMatrix?: Float32Array): number;
76
+ drawSky(skyColor: RGBA, horizonColor: RGBA, pitchT: number, horizonBlend: number): void;
77
+ drawTerrain(positions: Float32Array, indices: Uint32Array, color: RGBA, opacity: number, projectionMatrix?: Float32Array): number;
78
+ _drawCirclesInstanced(prog: CircleProgram, centers: Float32Array): void;
79
+ _drawCirclesBatched(prog: CircleProgram, centers: Float32Array): void;
80
+ _buildFillProgram(): FillProgram;
81
+ _buildLineProgram(): LineProgram;
82
+ _buildCircleProgram(): CircleProgram;
83
+ _buildFillExtrusionProgram(): FillExtrusionProgram;
84
+ _buildSkyProgram(): SkyProgram;
85
+ _disposeBuffer(buf: WebGLBuffer): void;
86
+ }
@@ -0,0 +1,9 @@
1
+ export type { GLContextOptions } from './GLContext';
2
+ export type { CircleOptions, LineOptions } from './WebGLTileRenderer';
3
+ export type { Mat4 } from './mat4';
4
+ // Public barrel for the WebGL renderer. Exposes the tile renderer, the
5
+ // GLContext helper, the typed unsupported-error, and the 4x4 matrix utils so
6
+ // callers can construct their own projection matrices.
7
+ export { GLContext, WebGLUnsupportedError } from './GLContext';
8
+ export { WebGLTileRenderer } from './WebGLTileRenderer';
9
+ export * as mat4 from './mat4';
@@ -0,0 +1,14 @@
1
+ export declare function identity(out?: Mat4): Mat4;
2
+ // Build an orthographic projection matrix. Column-major to match WebGL.
3
+ export declare function ortho(left: number, right: number, bottom: number, top: number, near: number, far: number, out?: Mat4): Mat4;
4
+ export declare function translate(out: Mat4, a: Mat4, x: number, y: number, z: number): Mat4;
5
+ export declare function scale(out: Mat4, a: Mat4, x: number, y: number, z: number): Mat4;
6
+ export declare function rotateZ(out: Mat4, a: Mat4, rad: number): Mat4;
7
+ export declare function multiply(out: Mat4, a: Mat4, b: Mat4): Mat4;
8
+ // Minimal 4x4 matrix utilities (column-major, GLSL-compatible).
9
+ //
10
+ // Just the operations the WebGL renderer needs: identity, ortho, translate,
11
+ // scale, rotateZ, multiply. A deliberate dependency-free subset; behaviour
12
+ // mirrors the equivalent `gl-matrix` entry points so callers familiar with
13
+ // that library stay oriented.
14
+ export type Mat4 = Float32Array;
@@ -0,0 +1,26 @@
1
+ import { NominatimGeocoder } from './providers/Nominatim';
2
+ import { OSRMDirections, OSRMMatrix } from './providers/OSRM';
3
+ import { ValhallaDirections, ValhallaIsochrone, ValhallaMatrix } from './providers/Valhalla';
4
+ import type { DirectionsProvider, GeocoderProvider, IsochroneProvider, MatrixProvider } from './types';
5
+ export declare const defaultGeocoder: () => GeocoderProvider;
6
+ export declare const defaultDirections: () => DirectionsProvider;
7
+ export declare const defaultIsochrone: () => IsochroneProvider;
8
+ // Prefer OSRM's /table (keyless public demo, aligned with the default
9
+ // directions provider) and fall back to Valhalla when callers need it.
10
+ export declare const defaultMatrix: () => MatrixProvider;
11
+ export declare const valhallaMatrix: () => MatrixProvider;
12
+ // Convenience alias: Valhalla can also serve directions. Prefer OSRM by default
13
+ // (faster on its own fleet), but expose Valhalla's as a drop-in alternative.
14
+ export declare const valhallaDirections: () => DirectionsProvider;
15
+ // Services layer — pluggable providers for geocoding, reverse geocoding,
16
+ // directions, isochrones, and travel-time matrices. Defaults are keyless
17
+ // open-source endpoints (Nominatim, OSRM, Valhalla). Key-required providers
18
+ // (Mapbox, Google, MapTiler) are opt-in.
19
+ export * from './types';
20
+ export { GoogleDirections, GoogleGeocoder } from './providers/Google';
21
+ export { MapboxDirections, MapboxGeocoder, MapboxIsochrone, MapboxMatrix } from './providers/Mapbox';
22
+ export { MaptilerGeocoder } from './providers/Maptiler';
23
+ export { NominatimGeocoder } from './providers/Nominatim';
24
+ export { OSRMDirections, OSRMMatrix } from './providers/OSRM';
25
+ export { PhotonGeocoder } from './providers/Photon';
26
+ export { ValhallaDirections, ValhallaIsochrone, ValhallaMatrix } from './providers/Valhalla';