@tileflow/interactions 0.0.0-bootstrap.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.
- package/GENERATED_OUTPUT_LICENSE.md +21 -0
- package/LICENSE +201 -0
- package/NOTICE +9 -0
- package/README.md +95 -0
- package/TRADEMARKS.md +10 -0
- package/dist/index.d.ts +53 -0
- package/dist/index.js +639 -0
- package/dist/maplibre-entry.d.ts +298 -0
- package/dist/maplibre-entry.js +2892 -0
- package/dist/validation-Cy6Tz3lz.d.ts +506 -0
- package/package.json +65 -0
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
import { m as TileflowInteractionDiagnostic, T as TileflowInteractionState, c as TileflowAnnotation, d as TileflowAnnotationInteractionEvent, i as TileflowInteractionBinding, G as TileflowResolvedPoiFeatureTarget, r as TileflowInteractionInputModality, o as TileflowInteractionEvent, I as TileflowResolvedSemanticFeatureTarget, k as TileflowInteractionContent } from './validation-Cy6Tz3lz.js';
|
|
2
|
+
import 'zod/mini';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Framework-neutral lifecycle primitives for the MapLibre interaction adapter.
|
|
6
|
+
*
|
|
7
|
+
* This module deliberately imports neither MapLibre nor a DOM implementation. A framework
|
|
8
|
+
* adapter owns the concrete marker/view instances and supplies every lifecycle operation.
|
|
9
|
+
*/
|
|
10
|
+
type TileflowAnnotationRegistryEntry<TKey, TDefinition, TInstance> = Readonly<{
|
|
11
|
+
definition: TDefinition;
|
|
12
|
+
instance: TInstance;
|
|
13
|
+
key: TKey;
|
|
14
|
+
}>;
|
|
15
|
+
type TileflowAnnotationRegistryAdapter<TContext, TKey, TDefinition, TInstance> = Readonly<{
|
|
16
|
+
context: TContext;
|
|
17
|
+
create: (context: TContext, definition: TDefinition, key: TKey) => TInstance;
|
|
18
|
+
getKey: (definition: TDefinition) => TKey;
|
|
19
|
+
remove: (instance: TInstance, context: TContext, definition: TDefinition, key: TKey) => void;
|
|
20
|
+
reorder?: (context: TContext, entries: readonly TileflowAnnotationRegistryEntry<TKey, TDefinition, TInstance>[], previousEntries: readonly TileflowAnnotationRegistryEntry<TKey, TDefinition, TInstance>[]) => void;
|
|
21
|
+
shouldUpdate?: (previous: TDefinition, next: TDefinition, key: TKey) => boolean;
|
|
22
|
+
update: (instance: TInstance, context: TContext, next: TDefinition, previous: TDefinition, key: TKey) => (() => void) | void;
|
|
23
|
+
}>;
|
|
24
|
+
type TileflowAnnotationRegistry<TKey, TDefinition, TInstance> = Readonly<{
|
|
25
|
+
readonly size: number;
|
|
26
|
+
clear: () => void;
|
|
27
|
+
dispose: () => void;
|
|
28
|
+
entries: () => readonly TileflowAnnotationRegistryEntry<TKey, TDefinition, TInstance>[];
|
|
29
|
+
get: (key: TKey) => TileflowAnnotationRegistryEntry<TKey, TDefinition, TInstance> | undefined;
|
|
30
|
+
reconcile: (definitions: readonly TDefinition[]) => void;
|
|
31
|
+
}>;
|
|
32
|
+
/**
|
|
33
|
+
* Creates a keyed registry that preserves compatible annotation instances across reconciliations.
|
|
34
|
+
*
|
|
35
|
+
* `create` must clean up any resource it allocates before throwing. `remove` must be safe to retry:
|
|
36
|
+
* failed cleanup remains pending and is attempted again by a later reconciliation or disposal.
|
|
37
|
+
* An `update` callback may return an exact rollback closure. When it returns nothing, the registry
|
|
38
|
+
* invokes `update` with its previous and next values reversed if a later operation fails. A failed
|
|
39
|
+
* `reorder` is reversed by invoking it again with the two entry lists swapped.
|
|
40
|
+
*/
|
|
41
|
+
declare function createTileflowAnnotationRegistry<TContext, TKey, TDefinition, TInstance>(adapter: TileflowAnnotationRegistryAdapter<TContext, TKey, TDefinition, TInstance>): TileflowAnnotationRegistry<TKey, TDefinition, TInstance>;
|
|
42
|
+
type TileflowOverlayState<TTarget> = Readonly<{
|
|
43
|
+
popup: TTarget | null;
|
|
44
|
+
tooltip: TTarget | null;
|
|
45
|
+
}>;
|
|
46
|
+
type TileflowOverlayStateChangeReason = 'dispose' | 'popup:close' | 'popup:open' | 'target:remove' | 'targets:reconcile' | 'tooltip:close' | 'tooltip:open';
|
|
47
|
+
type TileflowOverlayStateListener<TTarget> = (state: TileflowOverlayState<TTarget>, previous: TileflowOverlayState<TTarget>, reason: TileflowOverlayStateChangeReason) => void;
|
|
48
|
+
type TileflowOverlayStateController<TTarget> = Readonly<{
|
|
49
|
+
clearTarget: (target: TTarget) => boolean;
|
|
50
|
+
dispose: () => void;
|
|
51
|
+
getState: () => TileflowOverlayState<TTarget>;
|
|
52
|
+
reconcileTargets: (isAvailable: (target: TTarget) => boolean) => boolean;
|
|
53
|
+
setPopup: (target: TTarget | null) => boolean;
|
|
54
|
+
setTooltip: (target: TTarget | null) => boolean;
|
|
55
|
+
subscribe: (listener: TileflowOverlayStateListener<TTarget>) => () => void;
|
|
56
|
+
}>;
|
|
57
|
+
/**
|
|
58
|
+
* Owns transient tooltip state and one active popup without knowing the target representation.
|
|
59
|
+
* Full serializable target references can be used by supplying semantic equality.
|
|
60
|
+
*/
|
|
61
|
+
declare function createTileflowOverlayStateController<TTarget>(options?: {
|
|
62
|
+
areTargetsEqual?: (left: TTarget, right: TTarget) => boolean;
|
|
63
|
+
initialPopup?: TTarget | null;
|
|
64
|
+
initialTooltip?: TTarget | null;
|
|
65
|
+
onChange?: TileflowOverlayStateListener<TTarget>;
|
|
66
|
+
}): TileflowOverlayStateController<TTarget>;
|
|
67
|
+
|
|
68
|
+
/** A minimal structural contract shared by MapLibre Marker and Popup instances. */
|
|
69
|
+
type TileflowMapLibrePositioned<TMap> = {
|
|
70
|
+
addTo: (map: TMap) => unknown;
|
|
71
|
+
remove: () => unknown;
|
|
72
|
+
setLngLat: (coordinate: [longitude: number, latitude: number]) => unknown;
|
|
73
|
+
};
|
|
74
|
+
type TileflowMapLibreDomDocument = Pick<Document, 'createElement'>;
|
|
75
|
+
type TileflowMapLibreDomOverlayKind = 'popup' | 'tooltip';
|
|
76
|
+
type TileflowMapLibreDomMarkerFactoryInput<TAnnotation extends TileflowAnnotation = TileflowAnnotation> = Readonly<{
|
|
77
|
+
annotation: TAnnotation;
|
|
78
|
+
element: HTMLElement;
|
|
79
|
+
}>;
|
|
80
|
+
type TileflowMapLibreDomOverlayFactoryInput<TAnnotation extends TileflowAnnotation = TileflowAnnotation> = Readonly<{
|
|
81
|
+
annotation: TAnnotation;
|
|
82
|
+
container: HTMLElement;
|
|
83
|
+
kind: TileflowMapLibreDomOverlayKind;
|
|
84
|
+
}>;
|
|
85
|
+
type TileflowMapLibreDomRenderTargetKind = 'marker' | 'popup' | 'tooltip';
|
|
86
|
+
/** A live DOM outlet for framework portals, teleports, and snippets. */
|
|
87
|
+
type TileflowMapLibreDomRenderTarget<TAnnotation extends TileflowAnnotation = TileflowAnnotation> = Readonly<{
|
|
88
|
+
annotation: TAnnotation;
|
|
89
|
+
close: () => void;
|
|
90
|
+
container: HTMLElement;
|
|
91
|
+
key: string;
|
|
92
|
+
kind: TileflowMapLibreDomRenderTargetKind;
|
|
93
|
+
}>;
|
|
94
|
+
type TileflowMapLibreDomRenderTargetListener<TAnnotation extends TileflowAnnotation = TileflowAnnotation> = (targets: readonly TileflowMapLibreDomRenderTarget<TAnnotation>[]) => void;
|
|
95
|
+
type TileflowMapLibreDomStateChangeReason = 'popup:close' | 'popup:open' | 'target:remove';
|
|
96
|
+
type TileflowMapLibreDomInteractionStateListener = (state: TileflowInteractionState, previous: TileflowInteractionState, reason: TileflowMapLibreDomStateChangeReason) => void;
|
|
97
|
+
type TileflowMapLibreDomDiagnosticListener = (diagnostics: readonly TileflowInteractionDiagnostic[]) => void;
|
|
98
|
+
type TileflowMapLibreDomCustomRenderers = Readonly<{
|
|
99
|
+
marker: boolean;
|
|
100
|
+
popup: boolean;
|
|
101
|
+
tooltip: boolean;
|
|
102
|
+
}>;
|
|
103
|
+
type TileflowLegacyMarker = Readonly<{
|
|
104
|
+
color?: string;
|
|
105
|
+
coordinates: readonly [longitude: number, latitude: number];
|
|
106
|
+
id: string;
|
|
107
|
+
label?: string;
|
|
108
|
+
}>;
|
|
109
|
+
type TileflowNormalizedLegacyMarkers = Readonly<{
|
|
110
|
+
annotations: readonly TileflowAnnotation[];
|
|
111
|
+
/** Exact legacy element titles, including an explicitly empty label. */
|
|
112
|
+
titles: ReadonlyMap<string, string>;
|
|
113
|
+
}>;
|
|
114
|
+
/** Normalizes the deprecated plural-coordinate marker shape once for all framework adapters. */
|
|
115
|
+
declare function normalizeTileflowLegacyMarkers(markers: readonly TileflowLegacyMarker[]): TileflowNormalizedLegacyMarkers;
|
|
116
|
+
type TileflowMapLibreDomRuntimeOptions<TMap, TMarker extends TileflowMapLibrePositioned<TMap>, TOverlay extends TileflowMapLibrePositioned<TMap>, TAnnotation extends TileflowAnnotation = TileflowAnnotation> = Readonly<{
|
|
117
|
+
createMarker: (input: TileflowMapLibreDomMarkerFactoryInput<TAnnotation>) => TMarker;
|
|
118
|
+
createOverlay: (input: TileflowMapLibreDomOverlayFactoryInput<TAnnotation>) => TOverlay;
|
|
119
|
+
customMarker?: boolean;
|
|
120
|
+
customPopup?: boolean;
|
|
121
|
+
customTooltip?: boolean;
|
|
122
|
+
defaultInteractionState?: TileflowInteractionState;
|
|
123
|
+
document: TileflowMapLibreDomDocument;
|
|
124
|
+
idPrefix?: string;
|
|
125
|
+
interactionState?: TileflowInteractionState;
|
|
126
|
+
map: TMap;
|
|
127
|
+
onDiagnostic?: (diagnostic: TileflowInteractionDiagnostic) => void;
|
|
128
|
+
onInteractionStateChange?: TileflowMapLibreDomInteractionStateListener;
|
|
129
|
+
reorderMarkers?: (markers: readonly TMarker[], annotations: readonly TAnnotation[], previousMarkers: readonly TMarker[], previousAnnotations: readonly TAnnotation[]) => void;
|
|
130
|
+
updateMarker?: (marker: TMarker, input: Readonly<{
|
|
131
|
+
annotation: TAnnotation;
|
|
132
|
+
element: HTMLElement;
|
|
133
|
+
previousAnnotation: TAnnotation;
|
|
134
|
+
}>) => void;
|
|
135
|
+
updateOverlay?: (overlay: TOverlay, input: Readonly<{
|
|
136
|
+
annotation: TAnnotation;
|
|
137
|
+
container: HTMLElement;
|
|
138
|
+
kind: TileflowMapLibreDomOverlayKind;
|
|
139
|
+
previousAnnotation: TAnnotation;
|
|
140
|
+
}>) => void;
|
|
141
|
+
}>;
|
|
142
|
+
type TileflowMapLibreDomRuntime<TAnnotation extends TileflowAnnotation = TileflowAnnotation> = Readonly<{
|
|
143
|
+
closePopup: () => boolean;
|
|
144
|
+
dispose: () => void;
|
|
145
|
+
getDiagnostics: () => readonly TileflowInteractionDiagnostic[];
|
|
146
|
+
getInteractionState: () => TileflowInteractionState;
|
|
147
|
+
getRenderTargets: () => readonly TileflowMapLibreDomRenderTarget<TAnnotation>[];
|
|
148
|
+
openPopup: (annotationId: string) => boolean;
|
|
149
|
+
reconcile: (annotations: readonly TAnnotation[]) => void;
|
|
150
|
+
setCustomRenderers: (renderers: TileflowMapLibreDomCustomRenderers) => void;
|
|
151
|
+
setInteractionState: (state: TileflowInteractionState) => void;
|
|
152
|
+
subscribeEvents: (listener: (event: TileflowAnnotationInteractionEvent<TAnnotation>) => void) => () => void;
|
|
153
|
+
subscribeDiagnostics: (listener: TileflowMapLibreDomDiagnosticListener) => () => void;
|
|
154
|
+
subscribeRenderTargets: (listener: TileflowMapLibreDomRenderTargetListener<TAnnotation>) => () => void;
|
|
155
|
+
}>;
|
|
156
|
+
/**
|
|
157
|
+
* Creates an annotation runtime without importing MapLibre or reading browser globals.
|
|
158
|
+
*
|
|
159
|
+
* The caller injects a document and factories for MapLibre-compatible positioned instances.
|
|
160
|
+
* Default content is written exclusively through `textContent`; named views are intentionally
|
|
161
|
+
* blank unless the corresponding `custom*` outlet is enabled.
|
|
162
|
+
*/
|
|
163
|
+
declare function createTileflowMapLibreDomRuntime<TMap, TMarker extends TileflowMapLibrePositioned<TMap>, TOverlay extends TileflowMapLibrePositioned<TMap>, TAnnotation extends TileflowAnnotation = TileflowAnnotation>(options: TileflowMapLibreDomRuntimeOptions<TMap, TMarker, TOverlay, TAnnotation>): TileflowMapLibreDomRuntime<TAnnotation>;
|
|
164
|
+
|
|
165
|
+
type TileflowMapLibreInteractionParticipantKind = 'annotation' | 'semantic';
|
|
166
|
+
type TileflowMapLibreInteractionParticipant = Readonly<{
|
|
167
|
+
setInteractionState: (state: TileflowInteractionState) => void;
|
|
168
|
+
}>;
|
|
169
|
+
type TileflowMapLibreInteractionCoordinatorOptions = Readonly<{
|
|
170
|
+
defaultInteractionState?: TileflowInteractionState;
|
|
171
|
+
interactionState?: TileflowInteractionState;
|
|
172
|
+
onInteractionStateChange?: (state: TileflowInteractionState, previous: TileflowInteractionState, reason: TileflowMapLibreDomStateChangeReason) => void;
|
|
173
|
+
}>;
|
|
174
|
+
type TileflowMapLibreInteractionCoordinator = Readonly<{
|
|
175
|
+
attach: (kind: TileflowMapLibreInteractionParticipantKind, participant: TileflowMapLibreInteractionParticipant) => () => void;
|
|
176
|
+
dispose: () => void;
|
|
177
|
+
getInteractionState: () => TileflowInteractionState;
|
|
178
|
+
/** Receives a controlled request from either mounted runtime. */
|
|
179
|
+
requestInteractionState: (state: TileflowInteractionState, previous: TileflowInteractionState, reason: TileflowMapLibreDomStateChangeReason) => void;
|
|
180
|
+
/** Commits a new application-controlled state to all mounted runtimes. */
|
|
181
|
+
setInteractionState: (state: TileflowInteractionState) => void;
|
|
182
|
+
}>;
|
|
183
|
+
/**
|
|
184
|
+
* Coordinates annotation and semantic runtimes around one popup state.
|
|
185
|
+
* The non-owning runtime commits first, so replacement closes the old popup before opening the new
|
|
186
|
+
* one. Framework adapters can therefore stay view bridges instead of reimplementing ordering.
|
|
187
|
+
*/
|
|
188
|
+
declare function createTileflowMapLibreInteractionCoordinator(options?: TileflowMapLibreInteractionCoordinatorOptions): TileflowMapLibreInteractionCoordinator;
|
|
189
|
+
|
|
190
|
+
type TileflowMapLibrePoiFeature = Readonly<{
|
|
191
|
+
id?: number | string;
|
|
192
|
+
layer: Readonly<{
|
|
193
|
+
id: string;
|
|
194
|
+
}>;
|
|
195
|
+
properties?: Readonly<Record<string, unknown>>;
|
|
196
|
+
source?: string;
|
|
197
|
+
sourceLayer?: string;
|
|
198
|
+
}>;
|
|
199
|
+
type TileflowMapLibrePoiPointerEvent = Readonly<{
|
|
200
|
+
lngLat: Readonly<{
|
|
201
|
+
lat: number;
|
|
202
|
+
lng: number;
|
|
203
|
+
}>;
|
|
204
|
+
originalEvent?: Readonly<{
|
|
205
|
+
pointerType?: string;
|
|
206
|
+
touches?: unknown;
|
|
207
|
+
}>;
|
|
208
|
+
point: unknown;
|
|
209
|
+
}>;
|
|
210
|
+
type TileflowMapLibrePoiMap = Readonly<{
|
|
211
|
+
getStyle: () => unknown;
|
|
212
|
+
off?: (event: string, listener: (event: unknown) => void) => unknown;
|
|
213
|
+
on: (event: string, listener: (event: unknown) => void) => Readonly<{
|
|
214
|
+
unsubscribe?: () => void;
|
|
215
|
+
}> | unknown;
|
|
216
|
+
queryRenderedFeatures: (point: unknown, options: Readonly<{
|
|
217
|
+
layers: readonly string[];
|
|
218
|
+
}>) => readonly TileflowMapLibrePoiFeature[];
|
|
219
|
+
}>;
|
|
220
|
+
type TileflowMapLibrePoiMatch = Readonly<{
|
|
221
|
+
binding: TileflowInteractionBinding;
|
|
222
|
+
target: TileflowResolvedPoiFeatureTarget;
|
|
223
|
+
}>;
|
|
224
|
+
type TileflowMapLibrePoiControllerOptions = Readonly<{
|
|
225
|
+
bindings?: readonly TileflowInteractionBinding[];
|
|
226
|
+
cancelFrame: (frame: number) => void;
|
|
227
|
+
map: TileflowMapLibrePoiMap;
|
|
228
|
+
onActivate?: (match: TileflowMapLibrePoiMatch, inputModality: TileflowInteractionInputModality) => void;
|
|
229
|
+
onDiagnostic?: (diagnostic: TileflowInteractionDiagnostic) => void;
|
|
230
|
+
onDiagnosticResolved?: (code: Extract<TileflowInteractionDiagnostic['code'], 'SEMANTIC_MANIFEST_MISMATCH'>) => void;
|
|
231
|
+
onHoverChange?: (match: TileflowMapLibrePoiMatch | null) => void;
|
|
232
|
+
onInteractionEvent?: (event: TileflowInteractionEvent) => void;
|
|
233
|
+
onManifestChange?: (available: boolean) => void;
|
|
234
|
+
requestFrame: (callback: () => void) => number;
|
|
235
|
+
}>;
|
|
236
|
+
type TileflowMapLibrePoiController = Readonly<{
|
|
237
|
+
dispose: () => void;
|
|
238
|
+
getHovered: () => TileflowMapLibrePoiMatch | null;
|
|
239
|
+
reconcile: (bindings: readonly TileflowInteractionBinding[]) => void;
|
|
240
|
+
refreshManifest: () => void;
|
|
241
|
+
}>;
|
|
242
|
+
/**
|
|
243
|
+
* Resolves semantic POIs from compiler metadata without exposing physical layers to applications.
|
|
244
|
+
* Pointer hit testing is coalesced to one query per animation frame.
|
|
245
|
+
*/
|
|
246
|
+
declare function createTileflowMapLibrePoiController(options: TileflowMapLibrePoiControllerOptions): TileflowMapLibrePoiController;
|
|
247
|
+
|
|
248
|
+
type TileflowMapLibreSemanticDomOverlayFactoryInput = Readonly<{
|
|
249
|
+
binding: TileflowInteractionBinding;
|
|
250
|
+
container: HTMLElement;
|
|
251
|
+
kind: TileflowMapLibreDomOverlayKind;
|
|
252
|
+
target: TileflowResolvedSemanticFeatureTarget;
|
|
253
|
+
}>;
|
|
254
|
+
type TileflowMapLibreSemanticDomRenderTarget = Readonly<{
|
|
255
|
+
binding: TileflowInteractionBinding;
|
|
256
|
+
close: () => void;
|
|
257
|
+
container: HTMLElement;
|
|
258
|
+
content: TileflowInteractionContent;
|
|
259
|
+
key: string;
|
|
260
|
+
kind: TileflowMapLibreDomOverlayKind;
|
|
261
|
+
target: TileflowResolvedSemanticFeatureTarget;
|
|
262
|
+
viewName?: string;
|
|
263
|
+
}>;
|
|
264
|
+
type TileflowMapLibreSemanticDomRuntimeOptions<TMap, TOverlay extends TileflowMapLibrePositioned<TMap>> = Readonly<{
|
|
265
|
+
cancelFrame: (frame: number) => void;
|
|
266
|
+
createOverlay: (input: TileflowMapLibreSemanticDomOverlayFactoryInput) => TOverlay;
|
|
267
|
+
customPopup?: boolean;
|
|
268
|
+
customTooltip?: boolean;
|
|
269
|
+
defaultInteractionState?: TileflowInteractionState;
|
|
270
|
+
document: TileflowMapLibreDomDocument;
|
|
271
|
+
idPrefix?: string;
|
|
272
|
+
interactionState?: TileflowInteractionState;
|
|
273
|
+
map: TMap;
|
|
274
|
+
onDiagnostic?: (diagnostic: TileflowInteractionDiagnostic) => void;
|
|
275
|
+
onInteractionStateChange?: (state: TileflowInteractionState, previous: TileflowInteractionState, reason: TileflowMapLibreDomStateChangeReason) => void;
|
|
276
|
+
poiMap: TileflowMapLibrePoiMap;
|
|
277
|
+
requestFrame: (callback: () => void) => number;
|
|
278
|
+
}>;
|
|
279
|
+
type TileflowMapLibreSemanticDomRuntime = Readonly<{
|
|
280
|
+
closePopup: () => boolean;
|
|
281
|
+
dispose: () => void;
|
|
282
|
+
getDiagnostics: () => readonly TileflowInteractionDiagnostic[];
|
|
283
|
+
getInteractionState: () => TileflowInteractionState;
|
|
284
|
+
getRenderTargets: () => readonly TileflowMapLibreSemanticDomRenderTarget[];
|
|
285
|
+
reconcile: (bindings: readonly TileflowInteractionBinding[]) => void;
|
|
286
|
+
setCustomRenderers: (renderers: Pick<TileflowMapLibreDomCustomRenderers, 'popup' | 'tooltip'>) => void;
|
|
287
|
+
setInteractionState: (state: TileflowInteractionState) => void;
|
|
288
|
+
subscribeDiagnostics: (listener: (diagnostics: readonly TileflowInteractionDiagnostic[]) => void) => () => void;
|
|
289
|
+
subscribeEvents: (listener: (event: TileflowInteractionEvent) => void) => () => void;
|
|
290
|
+
subscribeRenderTargets: (listener: (targets: readonly TileflowMapLibreSemanticDomRenderTarget[]) => void) => () => void;
|
|
291
|
+
}>;
|
|
292
|
+
/**
|
|
293
|
+
* Mounts semantic POI tooltip and popup shells around the manifest-scoped POI hit tester.
|
|
294
|
+
* MapLibre, the document, and the scheduler are injected so importing this module remains SSR-safe.
|
|
295
|
+
*/
|
|
296
|
+
declare function createTileflowMapLibreSemanticDomRuntime<TMap, TOverlay extends TileflowMapLibrePositioned<TMap>>(options: TileflowMapLibreSemanticDomRuntimeOptions<TMap, TOverlay>): TileflowMapLibreSemanticDomRuntime;
|
|
297
|
+
|
|
298
|
+
export { type TileflowAnnotationRegistry, type TileflowAnnotationRegistryAdapter, type TileflowAnnotationRegistryEntry, type TileflowLegacyMarker, type TileflowMapLibreDomCustomRenderers, type TileflowMapLibreDomDiagnosticListener, type TileflowMapLibreDomDocument, type TileflowMapLibreDomInteractionStateListener, type TileflowMapLibreDomMarkerFactoryInput, type TileflowMapLibreDomOverlayFactoryInput, type TileflowMapLibreDomOverlayKind, type TileflowMapLibreDomRenderTarget, type TileflowMapLibreDomRenderTargetKind, type TileflowMapLibreDomRenderTargetListener, type TileflowMapLibreDomRuntime, type TileflowMapLibreDomRuntimeOptions, type TileflowMapLibreDomStateChangeReason, type TileflowMapLibreInteractionCoordinator, type TileflowMapLibreInteractionCoordinatorOptions, type TileflowMapLibreInteractionParticipant, type TileflowMapLibreInteractionParticipantKind, type TileflowMapLibrePoiController, type TileflowMapLibrePoiControllerOptions, type TileflowMapLibrePoiFeature, type TileflowMapLibrePoiMap, type TileflowMapLibrePoiMatch, type TileflowMapLibrePoiPointerEvent, type TileflowMapLibrePositioned, type TileflowMapLibreSemanticDomOverlayFactoryInput, type TileflowMapLibreSemanticDomRenderTarget, type TileflowMapLibreSemanticDomRuntime, type TileflowMapLibreSemanticDomRuntimeOptions, type TileflowNormalizedLegacyMarkers, type TileflowOverlayState, type TileflowOverlayStateChangeReason, type TileflowOverlayStateController, type TileflowOverlayStateListener, createTileflowAnnotationRegistry, createTileflowMapLibreDomRuntime, createTileflowMapLibreInteractionCoordinator, createTileflowMapLibrePoiController, createTileflowMapLibreSemanticDomRuntime, createTileflowOverlayStateController, normalizeTileflowLegacyMarkers };
|