@feltmaps/js-sdk 1.5.0-next.1 → 1.5.0-next.11

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.
@@ -0,0 +1,3555 @@
1
+ import { ZodRawShape, objectOutputType, ZodTypeAny, z } from 'zod';
2
+
3
+ /**
4
+ * A selection of generic utility types
5
+ */
6
+
7
+ type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
8
+ type PromiseOrNot<T> = T | Promise<T>;
9
+ /**
10
+ * A better type inference for zod schemas that retains the TSDoc comments
11
+ * from the members in the compiled output.
12
+ */
13
+ type zInfer<T extends {
14
+ shape: ZodRawShape;
15
+ }> = objectOutputType<T["shape"], ZodTypeAny, "strip">;
16
+
17
+ declare const PlaceCreateSchema: z.ZodObject<Omit<{
18
+ symbol: z.ZodOptional<z.ZodString>;
19
+ type: z.ZodLiteral<"Place">;
20
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
21
+ id: z.ZodOptional<z.ZodString>;
22
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
23
+ color: z.ZodOptional<z.ZodString>;
24
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
25
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
26
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
27
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
28
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
29
+ frame: z.ZodOptional<z.ZodNullable<z.ZodEnum<["frame-circle", "frame-square"]>>>;
30
+ hideLabel: z.ZodOptional<z.ZodBoolean>;
31
+ }, "id">, "strip", z.ZodTypeAny, {
32
+ type: "Place";
33
+ coordinates: [number, number];
34
+ symbol?: string | undefined;
35
+ groupId?: string | null | undefined;
36
+ color?: string | undefined;
37
+ name?: string | null | undefined;
38
+ description?: string | null | undefined;
39
+ attributes?: Record<string, unknown> | undefined;
40
+ interaction?: "default" | "locked" | undefined;
41
+ imageUrl?: string | null | undefined;
42
+ frame?: "frame-circle" | "frame-square" | null | undefined;
43
+ hideLabel?: boolean | undefined;
44
+ }, {
45
+ type: "Place";
46
+ coordinates: [number, number];
47
+ symbol?: string | undefined;
48
+ groupId?: string | null | undefined;
49
+ color?: string | undefined;
50
+ name?: string | null | undefined;
51
+ description?: string | null | undefined;
52
+ attributes?: Record<string, unknown> | undefined;
53
+ interaction?: "default" | "locked" | undefined;
54
+ imageUrl?: string | null | undefined;
55
+ frame?: "frame-circle" | "frame-square" | null | undefined;
56
+ hideLabel?: boolean | undefined;
57
+ }>;
58
+ declare const PathCreateSchema: z.ZodObject<Omit<{
59
+ type: z.ZodLiteral<"Path">;
60
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
61
+ id: z.ZodOptional<z.ZodString>;
62
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
63
+ color: z.ZodOptional<z.ZodString>;
64
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
65
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
66
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
67
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
68
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
69
+ strokeOpacity: z.ZodOptional<z.ZodNumber>;
70
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
71
+ strokeStyle: z.ZodOptional<z.ZodEnum<["solid", "dashed", "dotted"]>>;
72
+ distanceMarker: z.ZodOptional<z.ZodBoolean>;
73
+ endCaps: z.ZodOptional<z.ZodBoolean>;
74
+ routingMode: z.ZodOptional<z.ZodNullable<z.ZodEnum<["driving", "cycling", "walking", "flying"]>>>;
75
+ }, "id">, "strip", z.ZodTypeAny, {
76
+ type: "Path";
77
+ coordinates: [number, number][][];
78
+ groupId?: string | null | undefined;
79
+ color?: string | undefined;
80
+ name?: string | null | undefined;
81
+ description?: string | null | undefined;
82
+ attributes?: Record<string, unknown> | undefined;
83
+ interaction?: "default" | "locked" | undefined;
84
+ imageUrl?: string | null | undefined;
85
+ strokeOpacity?: number | undefined;
86
+ strokeWidth?: number | undefined;
87
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
88
+ distanceMarker?: boolean | undefined;
89
+ endCaps?: boolean | undefined;
90
+ routingMode?: "driving" | "cycling" | "walking" | "flying" | null | undefined;
91
+ }, {
92
+ type: "Path";
93
+ coordinates: [number, number][][];
94
+ groupId?: string | null | undefined;
95
+ color?: string | undefined;
96
+ name?: string | null | undefined;
97
+ description?: string | null | undefined;
98
+ attributes?: Record<string, unknown> | undefined;
99
+ interaction?: "default" | "locked" | undefined;
100
+ imageUrl?: string | null | undefined;
101
+ strokeOpacity?: number | undefined;
102
+ strokeWidth?: number | undefined;
103
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
104
+ distanceMarker?: boolean | undefined;
105
+ endCaps?: boolean | undefined;
106
+ routingMode?: "driving" | "cycling" | "walking" | "flying" | null | undefined;
107
+ }>;
108
+ declare const PolygonCreateSchema: z.ZodObject<Omit<{
109
+ type: z.ZodLiteral<"Polygon">;
110
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
111
+ id: z.ZodOptional<z.ZodString>;
112
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
113
+ color: z.ZodOptional<z.ZodString>;
114
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
115
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
116
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
117
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
118
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
119
+ strokeOpacity: z.ZodOptional<z.ZodNumber>;
120
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
121
+ strokeStyle: z.ZodOptional<z.ZodEnum<["solid", "dashed", "dotted"]>>;
122
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
123
+ areaMarker: z.ZodOptional<z.ZodBoolean>;
124
+ }, "id">, "strip", z.ZodTypeAny, {
125
+ type: "Polygon";
126
+ coordinates: [number, number][][];
127
+ groupId?: string | null | undefined;
128
+ color?: string | undefined;
129
+ name?: string | null | undefined;
130
+ description?: string | null | undefined;
131
+ attributes?: Record<string, unknown> | undefined;
132
+ interaction?: "default" | "locked" | undefined;
133
+ imageUrl?: string | null | undefined;
134
+ strokeOpacity?: number | undefined;
135
+ strokeWidth?: number | undefined;
136
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
137
+ fillOpacity?: number | undefined;
138
+ areaMarker?: boolean | undefined;
139
+ }, {
140
+ type: "Polygon";
141
+ coordinates: [number, number][][];
142
+ groupId?: string | null | undefined;
143
+ color?: string | undefined;
144
+ name?: string | null | undefined;
145
+ description?: string | null | undefined;
146
+ attributes?: Record<string, unknown> | undefined;
147
+ interaction?: "default" | "locked" | undefined;
148
+ imageUrl?: string | null | undefined;
149
+ strokeOpacity?: number | undefined;
150
+ strokeWidth?: number | undefined;
151
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
152
+ fillOpacity?: number | undefined;
153
+ areaMarker?: boolean | undefined;
154
+ }>;
155
+ declare const CircleCreateSchema: z.ZodObject<Omit<{
156
+ type: z.ZodLiteral<"Circle">;
157
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
158
+ id: z.ZodOptional<z.ZodString>;
159
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
160
+ color: z.ZodOptional<z.ZodString>;
161
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
162
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
163
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
164
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
165
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
166
+ strokeOpacity: z.ZodOptional<z.ZodNumber>;
167
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
168
+ strokeStyle: z.ZodOptional<z.ZodEnum<["solid", "dashed", "dotted"]>>;
169
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
170
+ radius: z.ZodNumber;
171
+ radiusDisplayAngle: z.ZodOptional<z.ZodNumber>;
172
+ radiusDisplayUnit: z.ZodOptional<z.ZodNullable<z.ZodEnum<["meter", "kilometer", "foot", "mile"]>>>;
173
+ radiusMarker: z.ZodOptional<z.ZodBoolean>;
174
+ }, "id">, "strip", z.ZodTypeAny, {
175
+ type: "Circle";
176
+ coordinates: [number, number];
177
+ radius: number;
178
+ groupId?: string | null | undefined;
179
+ color?: string | undefined;
180
+ name?: string | null | undefined;
181
+ description?: string | null | undefined;
182
+ attributes?: Record<string, unknown> | undefined;
183
+ interaction?: "default" | "locked" | undefined;
184
+ imageUrl?: string | null | undefined;
185
+ strokeOpacity?: number | undefined;
186
+ strokeWidth?: number | undefined;
187
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
188
+ fillOpacity?: number | undefined;
189
+ radiusDisplayAngle?: number | undefined;
190
+ radiusDisplayUnit?: "meter" | "kilometer" | "foot" | "mile" | null | undefined;
191
+ radiusMarker?: boolean | undefined;
192
+ }, {
193
+ type: "Circle";
194
+ coordinates: [number, number];
195
+ radius: number;
196
+ groupId?: string | null | undefined;
197
+ color?: string | undefined;
198
+ name?: string | null | undefined;
199
+ description?: string | null | undefined;
200
+ attributes?: Record<string, unknown> | undefined;
201
+ interaction?: "default" | "locked" | undefined;
202
+ imageUrl?: string | null | undefined;
203
+ strokeOpacity?: number | undefined;
204
+ strokeWidth?: number | undefined;
205
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
206
+ fillOpacity?: number | undefined;
207
+ radiusDisplayAngle?: number | undefined;
208
+ radiusDisplayUnit?: "meter" | "kilometer" | "foot" | "mile" | null | undefined;
209
+ radiusMarker?: boolean | undefined;
210
+ }>;
211
+ declare const MarkerCreateSchema: z.ZodObject<Omit<{
212
+ type: z.ZodLiteral<"Marker">;
213
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
214
+ id: z.ZodOptional<z.ZodString>;
215
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
216
+ color: z.ZodOptional<z.ZodString>;
217
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
218
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
219
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
220
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
221
+ opacity: z.ZodOptional<z.ZodNumber>;
222
+ size: z.ZodOptional<z.ZodNumber>;
223
+ zoom: z.ZodOptional<z.ZodNumber>;
224
+ }, "id">, "strip", z.ZodTypeAny, {
225
+ type: "Marker";
226
+ coordinates: [number, number][][];
227
+ groupId?: string | null | undefined;
228
+ color?: string | undefined;
229
+ name?: string | null | undefined;
230
+ description?: string | null | undefined;
231
+ attributes?: Record<string, unknown> | undefined;
232
+ interaction?: "default" | "locked" | undefined;
233
+ opacity?: number | undefined;
234
+ size?: number | undefined;
235
+ zoom?: number | undefined;
236
+ }, {
237
+ type: "Marker";
238
+ coordinates: [number, number][][];
239
+ groupId?: string | null | undefined;
240
+ color?: string | undefined;
241
+ name?: string | null | undefined;
242
+ description?: string | null | undefined;
243
+ attributes?: Record<string, unknown> | undefined;
244
+ interaction?: "default" | "locked" | undefined;
245
+ opacity?: number | undefined;
246
+ size?: number | undefined;
247
+ zoom?: number | undefined;
248
+ }>;
249
+ declare const HighlighterCreateSchema: z.ZodObject<Omit<{
250
+ type: z.ZodLiteral<"Highlighter">;
251
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
252
+ id: z.ZodOptional<z.ZodString>;
253
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
254
+ color: z.ZodOptional<z.ZodString>;
255
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
256
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
257
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
258
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
259
+ opacity: z.ZodOptional<z.ZodNumber>;
260
+ }, "id">, "strip", z.ZodTypeAny, {
261
+ type: "Highlighter";
262
+ coordinates: [number, number][][];
263
+ groupId?: string | null | undefined;
264
+ color?: string | undefined;
265
+ name?: string | null | undefined;
266
+ description?: string | null | undefined;
267
+ attributes?: Record<string, unknown> | undefined;
268
+ interaction?: "default" | "locked" | undefined;
269
+ opacity?: number | undefined;
270
+ }, {
271
+ type: "Highlighter";
272
+ coordinates: [number, number][][];
273
+ groupId?: string | null | undefined;
274
+ color?: string | undefined;
275
+ name?: string | null | undefined;
276
+ description?: string | null | undefined;
277
+ attributes?: Record<string, unknown> | undefined;
278
+ interaction?: "default" | "locked" | undefined;
279
+ opacity?: number | undefined;
280
+ }>;
281
+ declare const TextCreateSchema: z.ZodObject<Omit<Omit<{
282
+ type: z.ZodLiteral<"Text">;
283
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
284
+ id: z.ZodOptional<z.ZodString>;
285
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
286
+ color: z.ZodOptional<z.ZodString>;
287
+ name: z.ZodOptional<z.ZodString>;
288
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
289
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
290
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
291
+ zoom: z.ZodOptional<z.ZodNumber>;
292
+ position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
293
+ rotation: z.ZodOptional<z.ZodNumber>;
294
+ scale: z.ZodOptional<z.ZodNumber>;
295
+ text: z.ZodString;
296
+ align: z.ZodOptional<z.ZodEnum<["left", "center", "right"]>>;
297
+ style: z.ZodOptional<z.ZodEnum<["italic", "light", "regular", "caps"]>>;
298
+ }, "id">, "coordinates" | "name">, "strip", z.ZodTypeAny, {
299
+ type: "Text";
300
+ text: string;
301
+ groupId?: string | null | undefined;
302
+ color?: string | undefined;
303
+ description?: string | null | undefined;
304
+ attributes?: Record<string, unknown> | undefined;
305
+ interaction?: "default" | "locked" | undefined;
306
+ zoom?: number | undefined;
307
+ position?: [number, number] | undefined;
308
+ rotation?: number | undefined;
309
+ scale?: number | undefined;
310
+ align?: "left" | "center" | "right" | undefined;
311
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
312
+ }, {
313
+ type: "Text";
314
+ text: string;
315
+ groupId?: string | null | undefined;
316
+ color?: string | undefined;
317
+ description?: string | null | undefined;
318
+ attributes?: Record<string, unknown> | undefined;
319
+ interaction?: "default" | "locked" | undefined;
320
+ zoom?: number | undefined;
321
+ position?: [number, number] | undefined;
322
+ rotation?: number | undefined;
323
+ scale?: number | undefined;
324
+ align?: "left" | "center" | "right" | undefined;
325
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
326
+ }>;
327
+ declare const NoteCreateSchema: z.ZodObject<Omit<Omit<{
328
+ type: z.ZodLiteral<"Note">;
329
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
330
+ id: z.ZodOptional<z.ZodString>;
331
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
332
+ color: z.ZodOptional<z.ZodString>;
333
+ name: z.ZodOptional<z.ZodString>;
334
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
335
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
336
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
337
+ zoom: z.ZodOptional<z.ZodNumber>;
338
+ position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
339
+ rotation: z.ZodOptional<z.ZodNumber>;
340
+ scale: z.ZodOptional<z.ZodNumber>;
341
+ text: z.ZodString;
342
+ align: z.ZodOptional<z.ZodEnum<["left", "center", "right"]>>;
343
+ style: z.ZodOptional<z.ZodEnum<["italic", "light", "regular", "caps"]>>;
344
+ widthScale: z.ZodOptional<z.ZodNumber>;
345
+ }, "id">, "coordinates" | "name">, "strip", z.ZodTypeAny, {
346
+ type: "Note";
347
+ text: string;
348
+ groupId?: string | null | undefined;
349
+ color?: string | undefined;
350
+ description?: string | null | undefined;
351
+ attributes?: Record<string, unknown> | undefined;
352
+ interaction?: "default" | "locked" | undefined;
353
+ zoom?: number | undefined;
354
+ position?: [number, number] | undefined;
355
+ rotation?: number | undefined;
356
+ scale?: number | undefined;
357
+ align?: "left" | "center" | "right" | undefined;
358
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
359
+ widthScale?: number | undefined;
360
+ }, {
361
+ type: "Note";
362
+ text: string;
363
+ groupId?: string | null | undefined;
364
+ color?: string | undefined;
365
+ description?: string | null | undefined;
366
+ attributes?: Record<string, unknown> | undefined;
367
+ interaction?: "default" | "locked" | undefined;
368
+ zoom?: number | undefined;
369
+ position?: [number, number] | undefined;
370
+ rotation?: number | undefined;
371
+ scale?: number | undefined;
372
+ align?: "left" | "center" | "right" | undefined;
373
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
374
+ widthScale?: number | undefined;
375
+ }>;
376
+ declare const ImageCreateSchema: z.ZodObject<Omit<{
377
+ type: z.ZodLiteral<"Image">;
378
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
379
+ id: z.ZodOptional<z.ZodString>;
380
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
381
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
382
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
383
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
384
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
385
+ imageUrl: z.ZodString;
386
+ opacity: z.ZodOptional<z.ZodNumber>;
387
+ }, "id">, "strip", z.ZodTypeAny, {
388
+ type: "Image";
389
+ coordinates: [number, number][][];
390
+ imageUrl: string;
391
+ groupId?: string | null | undefined;
392
+ name?: string | null | undefined;
393
+ description?: string | null | undefined;
394
+ attributes?: Record<string, unknown> | undefined;
395
+ interaction?: "default" | "locked" | undefined;
396
+ opacity?: number | undefined;
397
+ }, {
398
+ type: "Image";
399
+ coordinates: [number, number][][];
400
+ imageUrl: string;
401
+ groupId?: string | null | undefined;
402
+ name?: string | null | undefined;
403
+ description?: string | null | undefined;
404
+ attributes?: Record<string, unknown> | undefined;
405
+ interaction?: "default" | "locked" | undefined;
406
+ opacity?: number | undefined;
407
+ }>;
408
+ declare const PlaceReadSchema: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extendShape<{
409
+ id: z.ZodString;
410
+ groupId: z.ZodNullable<z.ZodString>;
411
+ color: z.ZodString;
412
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
413
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
414
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
415
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
416
+ }, {
417
+ imageUrl: z.ZodNullable<z.ZodString>;
418
+ }>, {
419
+ type: z.ZodLiteral<"Place">;
420
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
421
+ symbol: z.ZodString;
422
+ frame: z.ZodNullable<z.ZodEnum<["frame-circle", "frame-square"]>>;
423
+ hideLabel: z.ZodBoolean;
424
+ }>, "strip", z.ZodTypeAny, {
425
+ symbol: string;
426
+ type: "Place";
427
+ coordinates: [number, number];
428
+ id: string;
429
+ groupId: string | null;
430
+ color: string;
431
+ name: string | null;
432
+ description: string | null;
433
+ attributes: Record<string, unknown>;
434
+ imageUrl: string | null;
435
+ frame: "frame-circle" | "frame-square" | null;
436
+ hideLabel: boolean;
437
+ interaction?: "default" | "locked" | undefined;
438
+ }, {
439
+ symbol: string;
440
+ type: "Place";
441
+ coordinates: [number, number];
442
+ id: string;
443
+ groupId: string | null;
444
+ color: string;
445
+ name: string | null;
446
+ description: string | null;
447
+ attributes: Record<string, unknown>;
448
+ imageUrl: string | null;
449
+ frame: "frame-circle" | "frame-square" | null;
450
+ hideLabel: boolean;
451
+ interaction?: "default" | "locked" | undefined;
452
+ }>;
453
+ declare const PathReadSchema: z.ZodObject<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<z.objectUtil.extendShape<{
454
+ id: z.ZodString;
455
+ groupId: z.ZodNullable<z.ZodString>;
456
+ color: z.ZodString;
457
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
458
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
459
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
460
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
461
+ }, {
462
+ imageUrl: z.ZodNullable<z.ZodString>;
463
+ }>, {
464
+ strokeOpacity: z.ZodNumber;
465
+ strokeWidth: z.ZodNumber;
466
+ strokeStyle: z.ZodEnum<["solid", "dashed", "dotted"]>;
467
+ }>, {
468
+ type: z.ZodLiteral<"Path">;
469
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
470
+ distanceMarker: z.ZodBoolean;
471
+ endCaps: z.ZodBoolean;
472
+ routingMode: z.ZodNullable<z.ZodEnum<["driving", "cycling", "walking", "flying"]>>;
473
+ }>, "coordinates">, "strip", z.ZodTypeAny, {
474
+ type: "Path";
475
+ id: string;
476
+ groupId: string | null;
477
+ color: string;
478
+ name: string | null;
479
+ description: string | null;
480
+ attributes: Record<string, unknown>;
481
+ imageUrl: string | null;
482
+ strokeOpacity: number;
483
+ strokeWidth: number;
484
+ strokeStyle: "solid" | "dashed" | "dotted";
485
+ distanceMarker: boolean;
486
+ endCaps: boolean;
487
+ routingMode: "driving" | "cycling" | "walking" | "flying" | null;
488
+ interaction?: "default" | "locked" | undefined;
489
+ }, {
490
+ type: "Path";
491
+ id: string;
492
+ groupId: string | null;
493
+ color: string;
494
+ name: string | null;
495
+ description: string | null;
496
+ attributes: Record<string, unknown>;
497
+ imageUrl: string | null;
498
+ strokeOpacity: number;
499
+ strokeWidth: number;
500
+ strokeStyle: "solid" | "dashed" | "dotted";
501
+ distanceMarker: boolean;
502
+ endCaps: boolean;
503
+ routingMode: "driving" | "cycling" | "walking" | "flying" | null;
504
+ interaction?: "default" | "locked" | undefined;
505
+ }>;
506
+ declare const PolygonReadSchema: z.ZodObject<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<z.objectUtil.extendShape<{
507
+ id: z.ZodString;
508
+ groupId: z.ZodNullable<z.ZodString>;
509
+ color: z.ZodString;
510
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
511
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
512
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
513
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
514
+ }, {
515
+ imageUrl: z.ZodNullable<z.ZodString>;
516
+ }>, {
517
+ strokeOpacity: z.ZodNumber;
518
+ strokeWidth: z.ZodNumber;
519
+ strokeStyle: z.ZodEnum<["solid", "dashed", "dotted"]>;
520
+ }>, {
521
+ type: z.ZodLiteral<"Polygon">;
522
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
523
+ fillOpacity: z.ZodNumber;
524
+ areaMarker: z.ZodBoolean;
525
+ }>, "coordinates">, "strip", z.ZodTypeAny, {
526
+ type: "Polygon";
527
+ id: string;
528
+ groupId: string | null;
529
+ color: string;
530
+ name: string | null;
531
+ description: string | null;
532
+ attributes: Record<string, unknown>;
533
+ imageUrl: string | null;
534
+ strokeOpacity: number;
535
+ strokeWidth: number;
536
+ strokeStyle: "solid" | "dashed" | "dotted";
537
+ fillOpacity: number;
538
+ areaMarker: boolean;
539
+ interaction?: "default" | "locked" | undefined;
540
+ }, {
541
+ type: "Polygon";
542
+ id: string;
543
+ groupId: string | null;
544
+ color: string;
545
+ name: string | null;
546
+ description: string | null;
547
+ attributes: Record<string, unknown>;
548
+ imageUrl: string | null;
549
+ strokeOpacity: number;
550
+ strokeWidth: number;
551
+ strokeStyle: "solid" | "dashed" | "dotted";
552
+ fillOpacity: number;
553
+ areaMarker: boolean;
554
+ interaction?: "default" | "locked" | undefined;
555
+ }>;
556
+ declare const CircleReadSchema: z.ZodObject<z.objectUtil.extendShape<z.objectUtil.extendShape<z.objectUtil.extendShape<{
557
+ id: z.ZodString;
558
+ groupId: z.ZodNullable<z.ZodString>;
559
+ color: z.ZodString;
560
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
561
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
562
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
563
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
564
+ }, {
565
+ imageUrl: z.ZodNullable<z.ZodString>;
566
+ }>, {
567
+ strokeOpacity: z.ZodNumber;
568
+ strokeWidth: z.ZodNumber;
569
+ strokeStyle: z.ZodEnum<["solid", "dashed", "dotted"]>;
570
+ }>, {
571
+ type: z.ZodLiteral<"Circle">;
572
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
573
+ radius: z.ZodNumber;
574
+ radiusDisplayAngle: z.ZodNumber;
575
+ radiusDisplayUnit: z.ZodNullable<z.ZodEnum<["meter", "kilometer", "foot", "mile"]>>;
576
+ fillOpacity: z.ZodNumber;
577
+ radiusMarker: z.ZodBoolean;
578
+ }>, "strip", z.ZodTypeAny, {
579
+ type: "Circle";
580
+ coordinates: [number, number];
581
+ id: string;
582
+ groupId: string | null;
583
+ color: string;
584
+ name: string | null;
585
+ description: string | null;
586
+ attributes: Record<string, unknown>;
587
+ imageUrl: string | null;
588
+ strokeOpacity: number;
589
+ strokeWidth: number;
590
+ strokeStyle: "solid" | "dashed" | "dotted";
591
+ fillOpacity: number;
592
+ radius: number;
593
+ radiusDisplayAngle: number;
594
+ radiusDisplayUnit: "meter" | "kilometer" | "foot" | "mile" | null;
595
+ radiusMarker: boolean;
596
+ interaction?: "default" | "locked" | undefined;
597
+ }, {
598
+ type: "Circle";
599
+ coordinates: [number, number];
600
+ id: string;
601
+ groupId: string | null;
602
+ color: string;
603
+ name: string | null;
604
+ description: string | null;
605
+ attributes: Record<string, unknown>;
606
+ imageUrl: string | null;
607
+ strokeOpacity: number;
608
+ strokeWidth: number;
609
+ strokeStyle: "solid" | "dashed" | "dotted";
610
+ fillOpacity: number;
611
+ radius: number;
612
+ radiusDisplayAngle: number;
613
+ radiusDisplayUnit: "meter" | "kilometer" | "foot" | "mile" | null;
614
+ radiusMarker: boolean;
615
+ interaction?: "default" | "locked" | undefined;
616
+ }>;
617
+ declare const MarkerReadSchema: z.ZodObject<Omit<z.objectUtil.extendShape<{
618
+ id: z.ZodString;
619
+ groupId: z.ZodNullable<z.ZodString>;
620
+ color: z.ZodString;
621
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
622
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
623
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
624
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
625
+ }, {
626
+ type: z.ZodLiteral<"Marker">;
627
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
628
+ opacity: z.ZodNumber;
629
+ size: z.ZodNumber;
630
+ zoom: z.ZodNumber;
631
+ }>, "coordinates">, "strip", z.ZodTypeAny, {
632
+ type: "Marker";
633
+ id: string;
634
+ groupId: string | null;
635
+ color: string;
636
+ name: string | null;
637
+ description: string | null;
638
+ attributes: Record<string, unknown>;
639
+ opacity: number;
640
+ size: number;
641
+ zoom: number;
642
+ interaction?: "default" | "locked" | undefined;
643
+ }, {
644
+ type: "Marker";
645
+ id: string;
646
+ groupId: string | null;
647
+ color: string;
648
+ name: string | null;
649
+ description: string | null;
650
+ attributes: Record<string, unknown>;
651
+ opacity: number;
652
+ size: number;
653
+ zoom: number;
654
+ interaction?: "default" | "locked" | undefined;
655
+ }>;
656
+ declare const HighlighterReadSchema: z.ZodObject<Omit<z.objectUtil.extendShape<{
657
+ id: z.ZodString;
658
+ groupId: z.ZodNullable<z.ZodString>;
659
+ color: z.ZodString;
660
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
661
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
662
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
663
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
664
+ }, {
665
+ type: z.ZodLiteral<"Highlighter">;
666
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
667
+ opacity: z.ZodNumber;
668
+ }>, "coordinates">, "strip", z.ZodTypeAny, {
669
+ type: "Highlighter";
670
+ id: string;
671
+ groupId: string | null;
672
+ color: string;
673
+ name: string | null;
674
+ description: string | null;
675
+ attributes: Record<string, unknown>;
676
+ opacity: number;
677
+ interaction?: "default" | "locked" | undefined;
678
+ }, {
679
+ type: "Highlighter";
680
+ id: string;
681
+ groupId: string | null;
682
+ color: string;
683
+ name: string | null;
684
+ description: string | null;
685
+ attributes: Record<string, unknown>;
686
+ opacity: number;
687
+ interaction?: "default" | "locked" | undefined;
688
+ }>;
689
+ declare const TextReadSchema: z.ZodObject<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<z.objectUtil.extendShape<{
690
+ id: z.ZodString;
691
+ groupId: z.ZodNullable<z.ZodString>;
692
+ color: z.ZodString;
693
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
694
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
695
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
696
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
697
+ }, {
698
+ position: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
699
+ rotation: z.ZodNumber;
700
+ scale: z.ZodNumber;
701
+ zoom: z.ZodNumber;
702
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
703
+ }>, {
704
+ text: z.ZodString;
705
+ align: z.ZodEnum<["left", "center", "right"]>;
706
+ style: z.ZodEnum<["italic", "light", "regular", "caps"]>;
707
+ name: z.ZodString;
708
+ }>, {
709
+ type: z.ZodLiteral<"Text">;
710
+ }>, "coordinates">, "strip", z.ZodTypeAny, {
711
+ type: "Text";
712
+ id: string;
713
+ groupId: string | null;
714
+ color: string;
715
+ name: string;
716
+ description: string | null;
717
+ attributes: Record<string, unknown>;
718
+ zoom: number;
719
+ position: [number, number];
720
+ rotation: number;
721
+ scale: number;
722
+ text: string;
723
+ align: "left" | "center" | "right";
724
+ style: "italic" | "light" | "regular" | "caps";
725
+ interaction?: "default" | "locked" | undefined;
726
+ }, {
727
+ type: "Text";
728
+ id: string;
729
+ groupId: string | null;
730
+ color: string;
731
+ name: string;
732
+ description: string | null;
733
+ attributes: Record<string, unknown>;
734
+ zoom: number;
735
+ position: [number, number];
736
+ rotation: number;
737
+ scale: number;
738
+ text: string;
739
+ align: "left" | "center" | "right";
740
+ style: "italic" | "light" | "regular" | "caps";
741
+ interaction?: "default" | "locked" | undefined;
742
+ }>;
743
+ declare const NoteReadSchema: z.ZodObject<Omit<z.objectUtil.extendShape<z.objectUtil.extendShape<z.objectUtil.extendShape<{
744
+ id: z.ZodString;
745
+ groupId: z.ZodNullable<z.ZodString>;
746
+ color: z.ZodString;
747
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
748
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
749
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
750
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
751
+ }, {
752
+ position: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
753
+ rotation: z.ZodNumber;
754
+ scale: z.ZodNumber;
755
+ zoom: z.ZodNumber;
756
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
757
+ }>, {
758
+ text: z.ZodString;
759
+ align: z.ZodEnum<["left", "center", "right"]>;
760
+ style: z.ZodEnum<["italic", "light", "regular", "caps"]>;
761
+ name: z.ZodString;
762
+ }>, {
763
+ type: z.ZodLiteral<"Note">;
764
+ widthScale: z.ZodNumber;
765
+ }>, "coordinates">, "strip", z.ZodTypeAny, {
766
+ type: "Note";
767
+ id: string;
768
+ groupId: string | null;
769
+ color: string;
770
+ name: string;
771
+ description: string | null;
772
+ attributes: Record<string, unknown>;
773
+ zoom: number;
774
+ position: [number, number];
775
+ rotation: number;
776
+ scale: number;
777
+ text: string;
778
+ align: "left" | "center" | "right";
779
+ style: "italic" | "light" | "regular" | "caps";
780
+ widthScale: number;
781
+ interaction?: "default" | "locked" | undefined;
782
+ }, {
783
+ type: "Note";
784
+ id: string;
785
+ groupId: string | null;
786
+ color: string;
787
+ name: string;
788
+ description: string | null;
789
+ attributes: Record<string, unknown>;
790
+ zoom: number;
791
+ position: [number, number];
792
+ rotation: number;
793
+ scale: number;
794
+ text: string;
795
+ align: "left" | "center" | "right";
796
+ style: "italic" | "light" | "regular" | "caps";
797
+ widthScale: number;
798
+ interaction?: "default" | "locked" | undefined;
799
+ }>;
800
+ declare const ImageReadSchema: z.ZodObject<Omit<Omit<z.objectUtil.extendShape<{
801
+ id: z.ZodString;
802
+ groupId: z.ZodNullable<z.ZodString>;
803
+ color: z.ZodString;
804
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
805
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
806
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
807
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
808
+ }, {
809
+ type: z.ZodLiteral<"Image">;
810
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
811
+ imageUrl: z.ZodString;
812
+ opacity: z.ZodNumber;
813
+ }>, "color">, "coordinates">, "strip", z.ZodTypeAny, {
814
+ type: "Image";
815
+ id: string;
816
+ groupId: string | null;
817
+ name: string | null;
818
+ description: string | null;
819
+ attributes: Record<string, unknown>;
820
+ imageUrl: string;
821
+ opacity: number;
822
+ interaction?: "default" | "locked" | undefined;
823
+ }, {
824
+ type: "Image";
825
+ id: string;
826
+ groupId: string | null;
827
+ name: string | null;
828
+ description: string | null;
829
+ attributes: Record<string, unknown>;
830
+ imageUrl: string;
831
+ opacity: number;
832
+ interaction?: "default" | "locked" | undefined;
833
+ }>;
834
+ declare const LinkReadSchema: z.ZodObject<Omit<z.objectUtil.extendShape<{
835
+ id: z.ZodString;
836
+ groupId: z.ZodNullable<z.ZodString>;
837
+ color: z.ZodString;
838
+ name: z.ZodUnion<[z.ZodString, z.ZodNull]>;
839
+ description: z.ZodUnion<[z.ZodString, z.ZodNull]>;
840
+ attributes: z.ZodRecord<z.ZodString, z.ZodUnknown>;
841
+ interaction: z.ZodOptional<z.ZodEnum<["default", "locked"]>>;
842
+ }, {
843
+ type: z.ZodLiteral<"Link">;
844
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
845
+ url: z.ZodString;
846
+ }>, "coordinates">, "strip", z.ZodTypeAny, {
847
+ type: "Link";
848
+ id: string;
849
+ groupId: string | null;
850
+ color: string;
851
+ name: string | null;
852
+ description: string | null;
853
+ attributes: Record<string, unknown>;
854
+ url: string;
855
+ interaction?: "default" | "locked" | undefined;
856
+ }, {
857
+ type: "Link";
858
+ id: string;
859
+ groupId: string | null;
860
+ color: string;
861
+ name: string | null;
862
+ description: string | null;
863
+ attributes: Record<string, unknown>;
864
+ url: string;
865
+ interaction?: "default" | "locked" | undefined;
866
+ }>;
867
+ declare const PlaceUpdateSchema: z.ZodObject<{
868
+ symbol: z.ZodOptional<z.ZodString>;
869
+ type: z.ZodLiteral<"Place">;
870
+ coordinates: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
871
+ id: z.ZodString;
872
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
873
+ color: z.ZodOptional<z.ZodString>;
874
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
875
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
876
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
877
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
878
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
879
+ frame: z.ZodOptional<z.ZodNullable<z.ZodEnum<["frame-circle", "frame-square"]>>>;
880
+ hideLabel: z.ZodOptional<z.ZodBoolean>;
881
+ }, "strip", z.ZodTypeAny, {
882
+ type: "Place";
883
+ id: string;
884
+ symbol?: string | undefined;
885
+ coordinates?: [number, number] | undefined;
886
+ groupId?: string | null | undefined;
887
+ color?: string | undefined;
888
+ name?: string | null | undefined;
889
+ description?: string | null | undefined;
890
+ attributes?: Record<string, unknown> | undefined;
891
+ interaction?: "default" | "locked" | undefined;
892
+ imageUrl?: string | null | undefined;
893
+ frame?: "frame-circle" | "frame-square" | null | undefined;
894
+ hideLabel?: boolean | undefined;
895
+ }, {
896
+ type: "Place";
897
+ id: string;
898
+ symbol?: string | undefined;
899
+ coordinates?: [number, number] | undefined;
900
+ groupId?: string | null | undefined;
901
+ color?: string | undefined;
902
+ name?: string | null | undefined;
903
+ description?: string | null | undefined;
904
+ attributes?: Record<string, unknown> | undefined;
905
+ interaction?: "default" | "locked" | undefined;
906
+ imageUrl?: string | null | undefined;
907
+ frame?: "frame-circle" | "frame-square" | null | undefined;
908
+ hideLabel?: boolean | undefined;
909
+ }>;
910
+ declare const PathUpdateSchema: z.ZodObject<{
911
+ type: z.ZodLiteral<"Path">;
912
+ coordinates: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">>;
913
+ id: z.ZodString;
914
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
915
+ color: z.ZodOptional<z.ZodString>;
916
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
917
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
918
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
919
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
920
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
921
+ strokeOpacity: z.ZodOptional<z.ZodNumber>;
922
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
923
+ strokeStyle: z.ZodOptional<z.ZodEnum<["solid", "dashed", "dotted"]>>;
924
+ distanceMarker: z.ZodOptional<z.ZodBoolean>;
925
+ endCaps: z.ZodOptional<z.ZodBoolean>;
926
+ routingMode: z.ZodOptional<z.ZodNullable<z.ZodEnum<["driving", "cycling", "walking", "flying"]>>>;
927
+ }, "strip", z.ZodTypeAny, {
928
+ type: "Path";
929
+ id: string;
930
+ coordinates?: [number, number][][] | undefined;
931
+ groupId?: string | null | undefined;
932
+ color?: string | undefined;
933
+ name?: string | null | undefined;
934
+ description?: string | null | undefined;
935
+ attributes?: Record<string, unknown> | undefined;
936
+ interaction?: "default" | "locked" | undefined;
937
+ imageUrl?: string | null | undefined;
938
+ strokeOpacity?: number | undefined;
939
+ strokeWidth?: number | undefined;
940
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
941
+ distanceMarker?: boolean | undefined;
942
+ endCaps?: boolean | undefined;
943
+ routingMode?: "driving" | "cycling" | "walking" | "flying" | null | undefined;
944
+ }, {
945
+ type: "Path";
946
+ id: string;
947
+ coordinates?: [number, number][][] | undefined;
948
+ groupId?: string | null | undefined;
949
+ color?: string | undefined;
950
+ name?: string | null | undefined;
951
+ description?: string | null | undefined;
952
+ attributes?: Record<string, unknown> | undefined;
953
+ interaction?: "default" | "locked" | undefined;
954
+ imageUrl?: string | null | undefined;
955
+ strokeOpacity?: number | undefined;
956
+ strokeWidth?: number | undefined;
957
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
958
+ distanceMarker?: boolean | undefined;
959
+ endCaps?: boolean | undefined;
960
+ routingMode?: "driving" | "cycling" | "walking" | "flying" | null | undefined;
961
+ }>;
962
+ declare const PolygonUpdateSchema: z.ZodObject<{
963
+ type: z.ZodLiteral<"Polygon">;
964
+ coordinates: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">>;
965
+ id: z.ZodString;
966
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
967
+ color: z.ZodOptional<z.ZodString>;
968
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
969
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
970
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
971
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
972
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
973
+ strokeOpacity: z.ZodOptional<z.ZodNumber>;
974
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
975
+ strokeStyle: z.ZodOptional<z.ZodEnum<["solid", "dashed", "dotted"]>>;
976
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
977
+ areaMarker: z.ZodOptional<z.ZodBoolean>;
978
+ }, "strip", z.ZodTypeAny, {
979
+ type: "Polygon";
980
+ id: string;
981
+ coordinates?: [number, number][][] | undefined;
982
+ groupId?: string | null | undefined;
983
+ color?: string | undefined;
984
+ name?: string | null | undefined;
985
+ description?: string | null | undefined;
986
+ attributes?: Record<string, unknown> | undefined;
987
+ interaction?: "default" | "locked" | undefined;
988
+ imageUrl?: string | null | undefined;
989
+ strokeOpacity?: number | undefined;
990
+ strokeWidth?: number | undefined;
991
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
992
+ fillOpacity?: number | undefined;
993
+ areaMarker?: boolean | undefined;
994
+ }, {
995
+ type: "Polygon";
996
+ id: string;
997
+ coordinates?: [number, number][][] | undefined;
998
+ groupId?: string | null | undefined;
999
+ color?: string | undefined;
1000
+ name?: string | null | undefined;
1001
+ description?: string | null | undefined;
1002
+ attributes?: Record<string, unknown> | undefined;
1003
+ interaction?: "default" | "locked" | undefined;
1004
+ imageUrl?: string | null | undefined;
1005
+ strokeOpacity?: number | undefined;
1006
+ strokeWidth?: number | undefined;
1007
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
1008
+ fillOpacity?: number | undefined;
1009
+ areaMarker?: boolean | undefined;
1010
+ }>;
1011
+ declare const CircleUpdateSchema: z.ZodObject<{
1012
+ type: z.ZodLiteral<"Circle">;
1013
+ coordinates: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
1014
+ id: z.ZodString;
1015
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1016
+ color: z.ZodOptional<z.ZodString>;
1017
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1018
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1019
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1020
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
1021
+ imageUrl: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1022
+ strokeOpacity: z.ZodOptional<z.ZodNumber>;
1023
+ strokeWidth: z.ZodOptional<z.ZodNumber>;
1024
+ strokeStyle: z.ZodOptional<z.ZodEnum<["solid", "dashed", "dotted"]>>;
1025
+ fillOpacity: z.ZodOptional<z.ZodNumber>;
1026
+ radius: z.ZodOptional<z.ZodNumber>;
1027
+ radiusDisplayAngle: z.ZodOptional<z.ZodNumber>;
1028
+ radiusDisplayUnit: z.ZodOptional<z.ZodNullable<z.ZodEnum<["meter", "kilometer", "foot", "mile"]>>>;
1029
+ radiusMarker: z.ZodOptional<z.ZodBoolean>;
1030
+ }, "strip", z.ZodTypeAny, {
1031
+ type: "Circle";
1032
+ id: string;
1033
+ coordinates?: [number, number] | undefined;
1034
+ groupId?: string | null | undefined;
1035
+ color?: string | undefined;
1036
+ name?: string | null | undefined;
1037
+ description?: string | null | undefined;
1038
+ attributes?: Record<string, unknown> | undefined;
1039
+ interaction?: "default" | "locked" | undefined;
1040
+ imageUrl?: string | null | undefined;
1041
+ strokeOpacity?: number | undefined;
1042
+ strokeWidth?: number | undefined;
1043
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
1044
+ fillOpacity?: number | undefined;
1045
+ radius?: number | undefined;
1046
+ radiusDisplayAngle?: number | undefined;
1047
+ radiusDisplayUnit?: "meter" | "kilometer" | "foot" | "mile" | null | undefined;
1048
+ radiusMarker?: boolean | undefined;
1049
+ }, {
1050
+ type: "Circle";
1051
+ id: string;
1052
+ coordinates?: [number, number] | undefined;
1053
+ groupId?: string | null | undefined;
1054
+ color?: string | undefined;
1055
+ name?: string | null | undefined;
1056
+ description?: string | null | undefined;
1057
+ attributes?: Record<string, unknown> | undefined;
1058
+ interaction?: "default" | "locked" | undefined;
1059
+ imageUrl?: string | null | undefined;
1060
+ strokeOpacity?: number | undefined;
1061
+ strokeWidth?: number | undefined;
1062
+ strokeStyle?: "solid" | "dashed" | "dotted" | undefined;
1063
+ fillOpacity?: number | undefined;
1064
+ radius?: number | undefined;
1065
+ radiusDisplayAngle?: number | undefined;
1066
+ radiusDisplayUnit?: "meter" | "kilometer" | "foot" | "mile" | null | undefined;
1067
+ radiusMarker?: boolean | undefined;
1068
+ }>;
1069
+ declare const MarkerUpdateSchema: z.ZodObject<{
1070
+ type: z.ZodLiteral<"Marker">;
1071
+ coordinates: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">>;
1072
+ id: z.ZodString;
1073
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1074
+ color: z.ZodOptional<z.ZodString>;
1075
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1076
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1077
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1078
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
1079
+ opacity: z.ZodOptional<z.ZodNumber>;
1080
+ size: z.ZodOptional<z.ZodNumber>;
1081
+ zoom: z.ZodOptional<z.ZodNumber>;
1082
+ }, "strip", z.ZodTypeAny, {
1083
+ type: "Marker";
1084
+ id: string;
1085
+ coordinates?: [number, number][][] | undefined;
1086
+ groupId?: string | null | undefined;
1087
+ color?: string | undefined;
1088
+ name?: string | null | undefined;
1089
+ description?: string | null | undefined;
1090
+ attributes?: Record<string, unknown> | undefined;
1091
+ interaction?: "default" | "locked" | undefined;
1092
+ opacity?: number | undefined;
1093
+ size?: number | undefined;
1094
+ zoom?: number | undefined;
1095
+ }, {
1096
+ type: "Marker";
1097
+ id: string;
1098
+ coordinates?: [number, number][][] | undefined;
1099
+ groupId?: string | null | undefined;
1100
+ color?: string | undefined;
1101
+ name?: string | null | undefined;
1102
+ description?: string | null | undefined;
1103
+ attributes?: Record<string, unknown> | undefined;
1104
+ interaction?: "default" | "locked" | undefined;
1105
+ opacity?: number | undefined;
1106
+ size?: number | undefined;
1107
+ zoom?: number | undefined;
1108
+ }>;
1109
+ declare const HighlighterUpdateSchema: z.ZodObject<{
1110
+ type: z.ZodLiteral<"Highlighter">;
1111
+ coordinates: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">>;
1112
+ id: z.ZodString;
1113
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1114
+ color: z.ZodOptional<z.ZodString>;
1115
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1116
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1117
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1118
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
1119
+ opacity: z.ZodOptional<z.ZodNumber>;
1120
+ }, "strip", z.ZodTypeAny, {
1121
+ type: "Highlighter";
1122
+ id: string;
1123
+ coordinates?: [number, number][][] | undefined;
1124
+ groupId?: string | null | undefined;
1125
+ color?: string | undefined;
1126
+ name?: string | null | undefined;
1127
+ description?: string | null | undefined;
1128
+ attributes?: Record<string, unknown> | undefined;
1129
+ interaction?: "default" | "locked" | undefined;
1130
+ opacity?: number | undefined;
1131
+ }, {
1132
+ type: "Highlighter";
1133
+ id: string;
1134
+ coordinates?: [number, number][][] | undefined;
1135
+ groupId?: string | null | undefined;
1136
+ color?: string | undefined;
1137
+ name?: string | null | undefined;
1138
+ description?: string | null | undefined;
1139
+ attributes?: Record<string, unknown> | undefined;
1140
+ interaction?: "default" | "locked" | undefined;
1141
+ opacity?: number | undefined;
1142
+ }>;
1143
+ declare const TextUpdateSchema: z.ZodObject<Omit<{
1144
+ type: z.ZodLiteral<"Text">;
1145
+ coordinates: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">>;
1146
+ id: z.ZodString;
1147
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1148
+ color: z.ZodOptional<z.ZodString>;
1149
+ name: z.ZodOptional<z.ZodString>;
1150
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1151
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1152
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
1153
+ zoom: z.ZodOptional<z.ZodNumber>;
1154
+ position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
1155
+ rotation: z.ZodOptional<z.ZodNumber>;
1156
+ scale: z.ZodOptional<z.ZodNumber>;
1157
+ text: z.ZodOptional<z.ZodString>;
1158
+ align: z.ZodOptional<z.ZodEnum<["left", "center", "right"]>>;
1159
+ style: z.ZodOptional<z.ZodEnum<["italic", "light", "regular", "caps"]>>;
1160
+ }, "coordinates" | "name">, "strip", z.ZodTypeAny, {
1161
+ type: "Text";
1162
+ id: string;
1163
+ groupId?: string | null | undefined;
1164
+ color?: string | undefined;
1165
+ description?: string | null | undefined;
1166
+ attributes?: Record<string, unknown> | undefined;
1167
+ interaction?: "default" | "locked" | undefined;
1168
+ zoom?: number | undefined;
1169
+ position?: [number, number] | undefined;
1170
+ rotation?: number | undefined;
1171
+ scale?: number | undefined;
1172
+ text?: string | undefined;
1173
+ align?: "left" | "center" | "right" | undefined;
1174
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
1175
+ }, {
1176
+ type: "Text";
1177
+ id: string;
1178
+ groupId?: string | null | undefined;
1179
+ color?: string | undefined;
1180
+ description?: string | null | undefined;
1181
+ attributes?: Record<string, unknown> | undefined;
1182
+ interaction?: "default" | "locked" | undefined;
1183
+ zoom?: number | undefined;
1184
+ position?: [number, number] | undefined;
1185
+ rotation?: number | undefined;
1186
+ scale?: number | undefined;
1187
+ text?: string | undefined;
1188
+ align?: "left" | "center" | "right" | undefined;
1189
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
1190
+ }>;
1191
+ declare const NoteUpdateSchema: z.ZodObject<Omit<{
1192
+ type: z.ZodLiteral<"Note">;
1193
+ coordinates: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">>;
1194
+ id: z.ZodString;
1195
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1196
+ color: z.ZodOptional<z.ZodString>;
1197
+ name: z.ZodOptional<z.ZodString>;
1198
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1199
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1200
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
1201
+ zoom: z.ZodOptional<z.ZodNumber>;
1202
+ position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>>;
1203
+ rotation: z.ZodOptional<z.ZodNumber>;
1204
+ scale: z.ZodOptional<z.ZodNumber>;
1205
+ text: z.ZodOptional<z.ZodString>;
1206
+ align: z.ZodOptional<z.ZodEnum<["left", "center", "right"]>>;
1207
+ style: z.ZodOptional<z.ZodEnum<["italic", "light", "regular", "caps"]>>;
1208
+ widthScale: z.ZodOptional<z.ZodNumber>;
1209
+ }, "coordinates" | "name">, "strip", z.ZodTypeAny, {
1210
+ type: "Note";
1211
+ id: string;
1212
+ groupId?: string | null | undefined;
1213
+ color?: string | undefined;
1214
+ description?: string | null | undefined;
1215
+ attributes?: Record<string, unknown> | undefined;
1216
+ interaction?: "default" | "locked" | undefined;
1217
+ zoom?: number | undefined;
1218
+ position?: [number, number] | undefined;
1219
+ rotation?: number | undefined;
1220
+ scale?: number | undefined;
1221
+ text?: string | undefined;
1222
+ align?: "left" | "center" | "right" | undefined;
1223
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
1224
+ widthScale?: number | undefined;
1225
+ }, {
1226
+ type: "Note";
1227
+ id: string;
1228
+ groupId?: string | null | undefined;
1229
+ color?: string | undefined;
1230
+ description?: string | null | undefined;
1231
+ attributes?: Record<string, unknown> | undefined;
1232
+ interaction?: "default" | "locked" | undefined;
1233
+ zoom?: number | undefined;
1234
+ position?: [number, number] | undefined;
1235
+ rotation?: number | undefined;
1236
+ scale?: number | undefined;
1237
+ text?: string | undefined;
1238
+ align?: "left" | "center" | "right" | undefined;
1239
+ style?: "italic" | "light" | "regular" | "caps" | undefined;
1240
+ widthScale?: number | undefined;
1241
+ }>;
1242
+ declare const ImageUpdateSchema: z.ZodObject<{
1243
+ type: z.ZodLiteral<"Image">;
1244
+ coordinates: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">>;
1245
+ id: z.ZodString;
1246
+ groupId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1247
+ name: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1248
+ description: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNull]>>;
1249
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
1250
+ interaction: z.ZodOptional<z.ZodOptional<z.ZodEnum<["default", "locked"]>>>;
1251
+ imageUrl: z.ZodOptional<z.ZodString>;
1252
+ opacity: z.ZodOptional<z.ZodNumber>;
1253
+ }, "strip", z.ZodTypeAny, {
1254
+ type: "Image";
1255
+ id: string;
1256
+ coordinates?: [number, number][][] | undefined;
1257
+ groupId?: string | null | undefined;
1258
+ name?: string | null | undefined;
1259
+ description?: string | null | undefined;
1260
+ attributes?: Record<string, unknown> | undefined;
1261
+ interaction?: "default" | "locked" | undefined;
1262
+ imageUrl?: string | undefined;
1263
+ opacity?: number | undefined;
1264
+ }, {
1265
+ type: "Image";
1266
+ id: string;
1267
+ coordinates?: [number, number][][] | undefined;
1268
+ groupId?: string | null | undefined;
1269
+ name?: string | null | undefined;
1270
+ description?: string | null | undefined;
1271
+ attributes?: Record<string, unknown> | undefined;
1272
+ interaction?: "default" | "locked" | undefined;
1273
+ imageUrl?: string | undefined;
1274
+ opacity?: number | undefined;
1275
+ }>;
1276
+ interface PlaceElementCreate extends zInfer<typeof PlaceCreateSchema> {
1277
+ }
1278
+ interface PathElementCreate extends zInfer<typeof PathCreateSchema> {
1279
+ }
1280
+ interface PolygonElementCreate extends zInfer<typeof PolygonCreateSchema> {
1281
+ }
1282
+ interface CircleElementCreate extends zInfer<typeof CircleCreateSchema> {
1283
+ }
1284
+ interface MarkerElementCreate extends zInfer<typeof MarkerCreateSchema> {
1285
+ }
1286
+ interface HighlighterElementCreate extends zInfer<typeof HighlighterCreateSchema> {
1287
+ }
1288
+ interface TextElementCreate extends zInfer<typeof TextCreateSchema> {
1289
+ }
1290
+ interface NoteElementCreate extends zInfer<typeof NoteCreateSchema> {
1291
+ }
1292
+ interface ImageElementCreate extends zInfer<typeof ImageCreateSchema> {
1293
+ }
1294
+ interface PlaceElementRead extends zInfer<typeof PlaceReadSchema> {
1295
+ }
1296
+ interface PathElementRead extends zInfer<typeof PathReadSchema> {
1297
+ }
1298
+ interface PolygonElementRead extends zInfer<typeof PolygonReadSchema> {
1299
+ }
1300
+ interface CircleElementRead extends zInfer<typeof CircleReadSchema> {
1301
+ }
1302
+ interface MarkerElementRead extends zInfer<typeof MarkerReadSchema> {
1303
+ }
1304
+ interface HighlighterElementRead extends zInfer<typeof HighlighterReadSchema> {
1305
+ }
1306
+ interface TextElementRead extends zInfer<typeof TextReadSchema> {
1307
+ }
1308
+ interface NoteElementRead extends zInfer<typeof NoteReadSchema> {
1309
+ }
1310
+ interface ImageElementRead extends zInfer<typeof ImageReadSchema> {
1311
+ }
1312
+ interface LinkElementRead extends zInfer<typeof LinkReadSchema> {
1313
+ }
1314
+ interface PlaceElementUpdate extends zInfer<typeof PlaceUpdateSchema> {
1315
+ }
1316
+ interface PathElementUpdate extends zInfer<typeof PathUpdateSchema> {
1317
+ }
1318
+ interface PolygonElementUpdate extends zInfer<typeof PolygonUpdateSchema> {
1319
+ }
1320
+ interface CircleElementUpdate extends zInfer<typeof CircleUpdateSchema> {
1321
+ }
1322
+ interface MarkerElementUpdate extends zInfer<typeof MarkerUpdateSchema> {
1323
+ }
1324
+ interface HighlighterElementUpdate extends zInfer<typeof HighlighterUpdateSchema> {
1325
+ }
1326
+ interface TextElementUpdate extends zInfer<typeof TextUpdateSchema> {
1327
+ }
1328
+ interface NoteElementUpdate extends zInfer<typeof NoteUpdateSchema> {
1329
+ }
1330
+ interface ImageElementUpdate extends zInfer<typeof ImageUpdateSchema> {
1331
+ }
1332
+ type ElementCreate = PlaceElementCreate | PathElementCreate | PolygonElementCreate | CircleElementCreate | MarkerElementCreate | HighlighterElementCreate | ImageElementCreate | TextElementCreate | NoteElementCreate;
1333
+ type ElementUpdate = PlaceElementUpdate | PathElementUpdate | PolygonElementUpdate | CircleElementUpdate | MarkerElementUpdate | HighlighterElementUpdate | TextElementUpdate | NoteElementUpdate | ImageElementUpdate;
1334
+ /**
1335
+ * @group Elements
1336
+ */
1337
+ type Element = PlaceElementRead | PathElementRead | PolygonElementRead | CircleElementRead | MarkerElementRead | HighlighterElementRead | TextElementRead | NoteElementRead | ImageElementRead | LinkElementRead;
1338
+ /**
1339
+ * @group Element Groups
1340
+ */
1341
+ interface ElementGroup {
1342
+ /**
1343
+ * A string identifying the element group.
1344
+ */
1345
+ id: string;
1346
+ /**
1347
+ * The name of the element group. This is shown in the legend.
1348
+ */
1349
+ name: string;
1350
+ /**
1351
+ * The caption of the element group. This is shown in the legend.
1352
+ */
1353
+ caption: string | null;
1354
+ /**
1355
+ * The ids of the elements in the element group.
1356
+ *
1357
+ * @remarks
1358
+ * You can use these ids to get the full element objects via the `getElements` method.
1359
+ */
1360
+ elementIds: Array<string>;
1361
+ /**
1362
+ * Whether the element group is visible or not.
1363
+ */
1364
+ visible: boolean;
1365
+ /**
1366
+ * Whether the element group is shown in the legend or not.
1367
+ */
1368
+ shownInLegend: boolean;
1369
+ }
1370
+ /**
1371
+ * The constraints to apply when getting elements.
1372
+ *
1373
+ * @group Elements
1374
+ */
1375
+ interface GetElementsConstraint extends zInfer<typeof GetElementsConstraintSchema> {
1376
+ }
1377
+ declare const GetElementsConstraintSchema: z.ZodObject<{
1378
+ /**
1379
+ * The ids of the elements to get.
1380
+ */
1381
+ ids: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1382
+ }, "strip", z.ZodTypeAny, {
1383
+ ids?: string[] | undefined;
1384
+ }, {
1385
+ ids?: string[] | undefined;
1386
+ }>;
1387
+ /**
1388
+ * The constraints to apply when getting element groups.
1389
+ *
1390
+ * @group Element Groups
1391
+ */
1392
+ interface GetElementGroupsConstraint extends zInfer<typeof GetElementGroupsConstraintSchema> {
1393
+ }
1394
+ /**
1395
+ * @ignore
1396
+ */
1397
+ declare const GetElementGroupsConstraintSchema: z.ZodObject<{
1398
+ /**
1399
+ * The ids of the element groups to get.
1400
+ */
1401
+ ids: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1402
+ }, "strip", z.ZodTypeAny, {
1403
+ ids?: string[] | undefined;
1404
+ }, {
1405
+ ids?: string[] | undefined;
1406
+ }>;
1407
+ /**
1408
+ * The parameters for the `onElementChange` and the `onElementCreate` listeners.
1409
+ *
1410
+ * @group Elements
1411
+ */
1412
+ interface ElementChangeCallbackParams {
1413
+ /**
1414
+ * The new data for the element or null if the element was removed.
1415
+ */
1416
+ element: Element | null;
1417
+ /**
1418
+ * Whether or not this element is still being created by a drawing tool.
1419
+ *
1420
+ * For example, if the user begins drawing a polygon, they need to place
1421
+ * multiple points until they've ultimately completed the polygon. All
1422
+ * the time they are still placing points, this will be true.
1423
+ *
1424
+ * For elements that require text entry (such as Places, Text and Notes)
1425
+ * this will be true all the time the user is typing text until the point
1426
+ * at which the user finishes, by pressing Escape for example.
1427
+ *
1428
+ * If the user is editing an existing element, this will be false.
1429
+ *
1430
+ * For elements that are created programatically, this will be false.
1431
+ */
1432
+ isBeingCreated: boolean;
1433
+ }
1434
+ /**
1435
+ * The parameters for the `onElementGroupChange` listener.
1436
+ *
1437
+ * @group Element Groups
1438
+ */
1439
+ interface ElementGroupChangeCallbackParams {
1440
+ elementGroup: ElementGroup | null;
1441
+ }
1442
+
1443
+ /**
1444
+ * Represents a point in world coordinates.
1445
+ */
1446
+ interface LatLng {
1447
+ latitude: number;
1448
+ longitude: number;
1449
+ }
1450
+ /**
1451
+ * A tuple representing a longitude and latitude coordinate.
1452
+ *
1453
+ * This is used hen serializing geometry because that's the standard used in
1454
+ * GeoJSON.
1455
+ */
1456
+ type LngLatTuple = [longitude: number, latitude: number];
1457
+ /**
1458
+ * A GeoJSON properties object.
1459
+ */
1460
+ type GeoJsonProperties = Record<string, unknown>;
1461
+ /**
1462
+ * A GeoJSON feature object, compliant with:
1463
+ * https://datatracker.ietf.org/doc/html/rfc7946#section-3.2
1464
+ *
1465
+ * @interface
1466
+ */
1467
+ type GeoJsonFeature = {
1468
+ type: "Feature";
1469
+ /**
1470
+ * The bounding box of the feature.
1471
+ */
1472
+ bbox?: FeltBoundary;
1473
+ /**
1474
+ * The feature's geometry
1475
+ */
1476
+ geometry: GeoJsonGeometry;
1477
+ /**
1478
+ * A value that uniquely identifies this feature in a
1479
+ * https://tools.ietf.org/html/rfc7946#section-3.2.
1480
+ */
1481
+ id?: string | number | undefined;
1482
+ /**
1483
+ * Properties associated with this feature.
1484
+ */
1485
+ properties: GeoJsonProperties;
1486
+ };
1487
+ interface PointGeometry extends zInfer<typeof PointGeometrySchema> {
1488
+ }
1489
+ /**
1490
+ * A GeoJSON point geometry.
1491
+ */
1492
+ declare const PointGeometrySchema: z.ZodObject<{
1493
+ type: z.ZodLiteral<"Point">;
1494
+ coordinates: z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>;
1495
+ }, "strip", z.ZodTypeAny, {
1496
+ type: "Point";
1497
+ coordinates: [number, number];
1498
+ }, {
1499
+ type: "Point";
1500
+ coordinates: [number, number];
1501
+ }>;
1502
+ /**
1503
+ * A GeoJSON multi-point geometry.
1504
+ *
1505
+ * @remarks
1506
+ * You shouldn't expect this to come from Felt - it is here for completeness
1507
+ * of the GeoJSON spec.
1508
+ */
1509
+ interface MultiPointGeometry {
1510
+ type: "MultiPoint";
1511
+ coordinates: PointGeometry["coordinates"][];
1512
+ }
1513
+ interface PolygonGeometry extends zInfer<typeof PolygonGeometrySchema> {
1514
+ }
1515
+ /**
1516
+ * A GeoJSON polygon geometry.
1517
+ */
1518
+ declare const PolygonGeometrySchema: z.ZodObject<{
1519
+ type: z.ZodLiteral<"Polygon">;
1520
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
1521
+ }, "strip", z.ZodTypeAny, {
1522
+ type: "Polygon";
1523
+ coordinates: [number, number][][];
1524
+ }, {
1525
+ type: "Polygon";
1526
+ coordinates: [number, number][][];
1527
+ }>;
1528
+ /**
1529
+ * A GeoJSON multi-polygon geometry.
1530
+ *
1531
+ * @interface
1532
+ */
1533
+ type MultiPolygonGeometry = {
1534
+ type: "MultiPolygon";
1535
+ coordinates: PolygonGeometry["coordinates"][];
1536
+ };
1537
+ /**
1538
+ * A GeoJSON line string geometry.
1539
+ *
1540
+ * @interface
1541
+ */
1542
+ type LineStringGeometry = {
1543
+ type: "LineString";
1544
+ coordinates: LngLatTuple[];
1545
+ };
1546
+ /**
1547
+ * A GeoJSON multi-line string geometry.
1548
+ *
1549
+ * @interface
1550
+ */
1551
+ type MultiLineStringGeometry = {
1552
+ type: "MultiLineString";
1553
+ coordinates: LineStringGeometry["coordinates"][];
1554
+ };
1555
+ /**
1556
+ * A GeoJSON geometry of any type
1557
+ */
1558
+ type GeoJsonGeometry = PointGeometry | PolygonGeometry | LineStringGeometry | MultiLineStringGeometry | MultiPolygonGeometry | MultiPointGeometry;
1559
+ /**
1560
+ * @ignore
1561
+ * @internal
1562
+ */
1563
+ declare const FeltZoomSchema: z.ZodNumber;
1564
+ /**
1565
+ * The zoom level of the map.
1566
+ *
1567
+ * It is a floating-point number between 1 and 23, where 1 is the most
1568
+ * zoomed out and 23 is the most zoomed in.
1569
+ *
1570
+ * @group Types
1571
+ * @public
1572
+ */
1573
+ type FeltZoom = z.infer<typeof FeltZoomSchema>;
1574
+ /**
1575
+ * @ignore
1576
+ * @internal
1577
+ */
1578
+ declare const FeltBoundarySchema: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
1579
+ /**
1580
+ * The edges of the map in the form of a bounding box.
1581
+ *
1582
+ * The boundary is a tuple of the form `[west, south, east, north]`.
1583
+ *
1584
+ * @group Types
1585
+ * @public
1586
+ */
1587
+ type FeltBoundary = z.infer<typeof FeltBoundarySchema>;
1588
+ /**
1589
+ * The parameters for the methods that change the visibility of entities.
1590
+ *
1591
+ * @public
1592
+ * @category Visibility
1593
+ */
1594
+ interface SetVisibilityRequest extends zInfer<typeof SetVisibilityRequestSchema> {
1595
+ }
1596
+ /**
1597
+ * @internal
1598
+ */
1599
+ declare const SetVisibilityRequestSchema: z.ZodObject<{
1600
+ /**
1601
+ * The ids of the entities you want to change the visibility of.
1602
+ */
1603
+ show: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1604
+ hide: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1605
+ }, "strip", z.ZodTypeAny, {
1606
+ show?: string[] | undefined;
1607
+ hide?: string[] | undefined;
1608
+ }, {
1609
+ show?: string[] | undefined;
1610
+ hide?: string[] | undefined;
1611
+ }>;
1612
+ /**
1613
+ * Specifies the direction to sort data in
1614
+ *
1615
+ * @group Types
1616
+ */
1617
+ type SortDirection = z.infer<typeof SortDirectionSchema>;
1618
+ /** @ignore */
1619
+ declare const SortDirectionSchema: z.ZodEnum<["asc", "desc"]>;
1620
+ /**
1621
+ * Configuration for sorting data by a specific attribute
1622
+ *
1623
+ * @group Types
1624
+ */
1625
+ interface SortConfig extends zInfer<typeof SortConfigSchema> {
1626
+ }
1627
+ /** @ignore */
1628
+ declare const SortConfigSchema: z.ZodObject<{
1629
+ /**
1630
+ * The attribute to sort by. What this represents depends on the context.
1631
+ * For instance, when sorting features in a data table, the attribute is
1632
+ * the column to sort by.
1633
+ */
1634
+ attribute: z.ZodString;
1635
+ /**
1636
+ * The direction to sort in
1637
+ */
1638
+ direction: z.ZodEnum<["asc", "desc"]>;
1639
+ }, "strip", z.ZodTypeAny, {
1640
+ attribute: string;
1641
+ direction: "asc" | "desc";
1642
+ }, {
1643
+ attribute: string;
1644
+ direction: "asc" | "desc";
1645
+ }>;
1646
+
1647
+ /**
1648
+ * A LayerFeature is a single geographical item in a layer.
1649
+ *
1650
+ * It is intended to be a lightweight object that contains the properties of a
1651
+ * feature, but not the geometry. It is returned by methods like
1652
+ * {@link FeltController.getRenderedFeatures} and {@link FeltController.getFeature},
1653
+ * and as part of the methods in the {@link SelectionController}
1654
+ *
1655
+ * The geometry can be obtained via the {@link FeltController.getGeoJsonFeature}
1656
+ * method, which returns a {@link GeoJsonFeature} object.
1657
+ */
1658
+ interface LayerFeature {
1659
+ /**
1660
+ * The identifier of the feature, unique within the layer.
1661
+ */
1662
+ id: string | number;
1663
+ /**
1664
+ * The identifier of the layer that the feature belongs to.
1665
+ */
1666
+ layerId: string;
1667
+ /**
1668
+ * The type of geometry of the feature.
1669
+ *
1670
+ * @remarks Because LayerFeatures are read from tiled features, it's
1671
+ * possible that this `geometryType` won't match the `geometry.type` of the
1672
+ * {@link GeoJsonFeature} returned by {@link FeltController.getGeoJsonFeature}.
1673
+ *
1674
+ * For example, this may return `LineString` but the full feature is a `MultiLineString`,
1675
+ * or, similarly `Polygon` here may be a `MultiPolygon` in the full feature.
1676
+ *
1677
+ * As a result, you should treat this property as being indicative only.
1678
+ */
1679
+ geometryType: GeoJsonGeometry["type"] | (string & {});
1680
+ /**
1681
+ * The properties of the feature, as a bag of attributes.
1682
+ */
1683
+ properties: GeoJsonProperties;
1684
+ }
1685
+ /**
1686
+ * A raster pixel value for a specific layer.
1687
+ *
1688
+ * @interface
1689
+ */
1690
+ type RasterValue = {
1691
+ /**
1692
+ * The value of the pixel.
1693
+ */
1694
+ value: number;
1695
+ /**
1696
+ * The ID of the layer that the pixel belongs to.
1697
+ */
1698
+ layerId: string;
1699
+ /**
1700
+ * The name of the category that the pixel belongs to.
1701
+ */
1702
+ categoryName: null | string;
1703
+ /**
1704
+ * The color of the pixel. Each value is between 0 and 255.
1705
+ */
1706
+ color: null | {
1707
+ r: number;
1708
+ g: number;
1709
+ b: number;
1710
+ a: number;
1711
+ };
1712
+ };
1713
+
1714
+ /**
1715
+ * This describes the processing status of a layer.
1716
+ *
1717
+ * The various values are:
1718
+ * - `processing`: The layer has been uploaded or updated and is still processing.
1719
+ * - `completed`: The layer has been processed and can be viewed on the map.
1720
+ * - `failed`: The layer failed to process and cannot be viewed on the map.
1721
+ * - `incomplete`: The layer has not been processed.
1722
+ *
1723
+ * @group Layers
1724
+ */
1725
+ type LayerProcessingStatus = z.infer<typeof LayerProcessingStatusSchema>;
1726
+ declare const LayerProcessingStatusSchema: z.ZodEnum<["processing", "completed", "failed", "incomplete"]>;
1727
+ /**
1728
+ * @group Layers
1729
+ */
1730
+ interface Layer {
1731
+ /**
1732
+ * The string identifying the layer
1733
+ */
1734
+ id: string;
1735
+ /**
1736
+ * The ID of the layer group that the layer belongs to.
1737
+ *
1738
+ * Layers that appear at the root level in Felt will not have a group ID.
1739
+ */
1740
+ groupId: string | null;
1741
+ /**
1742
+ * The name of the layer can be displayed in the Legend, depending
1743
+ * on how the layer's legend is configured in its style.
1744
+ */
1745
+ name: string;
1746
+ /**
1747
+ * The layer's caption is shown in the legend.
1748
+ */
1749
+ caption: string | null;
1750
+ /**
1751
+ * The layer description forms part of the layer's metadata. This is visible
1752
+ * to users via the layer info button in the legend.
1753
+ */
1754
+ description: string | null;
1755
+ /**
1756
+ * Whether the layer is visible or not.
1757
+ */
1758
+ visible: boolean;
1759
+ /**
1760
+ * Whether the layer is shown in the legend or not.
1761
+ */
1762
+ shownInLegend: boolean;
1763
+ /**
1764
+ * The FSL style for the layer.
1765
+ *
1766
+ * See the [FSL documentation](https://developers.felt.com/felt-style-language) for details
1767
+ * on how to read and write styles.
1768
+ *
1769
+ * As the types of the styles are very complex, we return `object` here and advise that you
1770
+ * program defensively while reading the styles.
1771
+ */
1772
+ style: object;
1773
+ /**
1774
+ * The current processing status of the layer.
1775
+ */
1776
+ status: LayerProcessingStatus;
1777
+ /**
1778
+ * The geometry type of the layer.
1779
+ *
1780
+ * @remarks
1781
+ * This will generally be one of:
1782
+ * - `"Point"`
1783
+ * - `"Line"`
1784
+ * - `"Polygon"`
1785
+ * - `"Raster"`
1786
+ * - `null`
1787
+ *
1788
+ * When the layer is processing, or it is a data-only layer, it will be null. You should
1789
+ * expect this to be able to be any string, however, as more geometry types can be added
1790
+ * in the future.
1791
+ */
1792
+ geometryType: string | null;
1793
+ /**
1794
+ * The bounding box of the layer. If the layer is processing, or the bounds have otherwise
1795
+ * not been calculated or are not available, this will be `null`.
1796
+ *
1797
+ * {@link FeltBoundary}
1798
+ */
1799
+ bounds: FeltBoundary | null;
1800
+ }
1801
+ /**
1802
+ * @group Layer Groups
1803
+ */
1804
+ interface LayerGroup {
1805
+ /**
1806
+ * A string identifying the layer group.
1807
+ */
1808
+ id: string;
1809
+ /**
1810
+ * The name of the layer group. This is shown in the legend.
1811
+ */
1812
+ name: string;
1813
+ /**
1814
+ * The caption of the layer group. This is shown in the legend.
1815
+ */
1816
+ caption: string | null;
1817
+ /**
1818
+ * The ids of the layers in the layer group.
1819
+ *
1820
+ * @remarks
1821
+ * You can use these ids to get the full layer objects via the `getLayers` method.
1822
+ */
1823
+ layerIds: Array<string>;
1824
+ /**
1825
+ * Whether the layer group is visible or not.
1826
+ */
1827
+ visible: boolean;
1828
+ /**
1829
+ * Whether the layer group is shown in the legend or not.
1830
+ */
1831
+ shownInLegend: boolean;
1832
+ /**
1833
+ * The bounding box of the layer group.
1834
+ *
1835
+ * {@link FeltBoundary}
1836
+ */
1837
+ bounds: FeltBoundary | null;
1838
+ }
1839
+ /**
1840
+ * The constraints to apply when getting layers.
1841
+ *
1842
+ * @group Layers
1843
+ */
1844
+ interface GetLayersConstraint extends zInfer<typeof GetLayersConstraintSchema> {
1845
+ }
1846
+ /**
1847
+ * @ignore
1848
+ */
1849
+ declare const GetLayersConstraintSchema: z.ZodObject<{
1850
+ /**
1851
+ * The ids of the layers to get.
1852
+ */
1853
+ ids: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1854
+ }, "strip", z.ZodTypeAny, {
1855
+ ids?: string[] | undefined;
1856
+ }, {
1857
+ ids?: string[] | undefined;
1858
+ }>;
1859
+ /**
1860
+ * The constraints to apply when getting layer groups.
1861
+ *
1862
+ * @group Layer Groups
1863
+ */
1864
+ interface GetLayerGroupsConstraint extends zInfer<typeof GetLayerGroupsFilterSchema> {
1865
+ }
1866
+ /**
1867
+ * @ignore
1868
+ */
1869
+ declare const GetLayerGroupsFilterSchema: z.ZodObject<{
1870
+ /**
1871
+ * The ids of the layer groups to get.
1872
+ */
1873
+ ids: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1874
+ }, "strip", z.ZodTypeAny, {
1875
+ ids?: string[] | undefined;
1876
+ }, {
1877
+ ids?: string[] | undefined;
1878
+ }>;
1879
+ /**
1880
+ * The parameters for the `onLayerChange` listener.
1881
+ *
1882
+ * @group Layers
1883
+ */
1884
+ interface LayerChangeCallbackParams {
1885
+ /**
1886
+ * The new data for the layer or null if the layer was removed.
1887
+ */
1888
+ layer: Layer | null;
1889
+ }
1890
+ /**
1891
+ * The parameters for the `onLayerGroupChange` listener.
1892
+ *
1893
+ * @group Layer Groups
1894
+ */
1895
+ interface LayerGroupChangeCallbackParams {
1896
+ layerGroup: LayerGroup | null;
1897
+ }
1898
+ /**
1899
+ * A legend item, which often represents a sub-class of features in a
1900
+ * layer in the case of categorical or classed layers.
1901
+ *
1902
+ * @group Legend Items
1903
+ */
1904
+ interface LegendItem extends LegendItemIdentifier {
1905
+ /**
1906
+ * The title of the legend item.
1907
+ */
1908
+ title: string | Array<string>;
1909
+ /**
1910
+ * Whether the title depends on the zoom level or not. If it does, you
1911
+ * need to call `getLegendItem` when the zoom level changes.
1912
+ *
1913
+ * Note that as the zoom level changes, the `onLegendItemChange` handler
1914
+ * will not be called, so you need to call `getLegendItem` yourself.
1915
+ */
1916
+ titleDependsOnZoom: boolean;
1917
+ /**
1918
+ * Whether the legend item is visible or not.
1919
+ */
1920
+ visible: boolean;
1921
+ }
1922
+ /**
1923
+ * The identifier for a legend item. It is a compound key of the layer to
1924
+ * which the legend item belongs and the legend item's own id.
1925
+ *
1926
+ * @group Legend Items
1927
+ */
1928
+ interface LegendItemIdentifier extends zInfer<typeof LegendItemIdentifierSchema> {
1929
+ }
1930
+ /** @ignore */
1931
+ declare const LegendItemIdentifierSchema: z.ZodObject<{
1932
+ /**
1933
+ * The id of the legend item.
1934
+ */
1935
+ id: z.ZodString;
1936
+ /**
1937
+ * The id of the layer the legend item belongs to.
1938
+ */
1939
+ layerId: z.ZodString;
1940
+ }, "strip", z.ZodTypeAny, {
1941
+ id: string;
1942
+ layerId: string;
1943
+ }, {
1944
+ id: string;
1945
+ layerId: string;
1946
+ }>;
1947
+ /**
1948
+ * Constraints for legend items. If nothing is passed, all legend items will be returned.
1949
+ *
1950
+ * @group Legend Items
1951
+ */
1952
+ interface LegendItemsConstraint extends zInfer<typeof LegendItemsConstraintSchema> {
1953
+ }
1954
+ /** @ignore */
1955
+ declare const LegendItemsConstraintSchema: z.ZodObject<{
1956
+ /**
1957
+ * Array of legend item identifiers to constrain by.
1958
+ */
1959
+ ids: z.ZodOptional<z.ZodArray<z.ZodObject<{
1960
+ /**
1961
+ * The id of the legend item.
1962
+ */
1963
+ id: z.ZodString;
1964
+ /**
1965
+ * The id of the layer the legend item belongs to.
1966
+ */
1967
+ layerId: z.ZodString;
1968
+ }, "strip", z.ZodTypeAny, {
1969
+ id: string;
1970
+ layerId: string;
1971
+ }, {
1972
+ id: string;
1973
+ layerId: string;
1974
+ }>, "many">>;
1975
+ /**
1976
+ * Array of layer ids to constrain legend items by.
1977
+ */
1978
+ layerIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1979
+ }, "strip", z.ZodTypeAny, {
1980
+ ids?: {
1981
+ id: string;
1982
+ layerId: string;
1983
+ }[] | undefined;
1984
+ layerIds?: string[] | undefined;
1985
+ }, {
1986
+ ids?: {
1987
+ id: string;
1988
+ layerId: string;
1989
+ }[] | undefined;
1990
+ layerIds?: string[] | undefined;
1991
+ }>;
1992
+ /**
1993
+ * The parameters for the `onLegendItemChange` listener.
1994
+ *
1995
+ * @group Legend Items
1996
+ */
1997
+ interface LegendItemChangeCallbackParams {
1998
+ /**
1999
+ * The new data for the legend item or null if the legend item was removed.
2000
+ */
2001
+ legendItem: LegendItem | null;
2002
+ }
2003
+ /**
2004
+ * Constraints for the `getRenderedFeatures` method. This can include layer constriants, spatial constraints, or both. If no constraints are
2005
+ * provided, all rendered features will be returned.
2006
+ *
2007
+ * @group Layers
2008
+ */
2009
+ interface GetRenderedFeaturesConstraint extends zInfer<typeof GetRenderedFeaturesConstraintSchema> {
2010
+ /**
2011
+ * The area to query for rendered features. This can be specific coordinates or a {@link FeltBoundary}. If omitted, the entire viewport will be queried.
2012
+ */
2013
+ areaQuery?: {
2014
+ coordinates: LatLng;
2015
+ } | {
2016
+ boundary: FeltBoundary;
2017
+ };
2018
+ }
2019
+ /** @ignore */
2020
+ declare const GetRenderedFeaturesConstraintSchema: z.ZodObject<{
2021
+ /**
2022
+ * The ids of the layers to get rendered features for.
2023
+ */
2024
+ layerIds: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2025
+ areaQuery: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
2026
+ coordinates: z.ZodObject<{
2027
+ latitude: z.ZodNumber;
2028
+ longitude: z.ZodNumber;
2029
+ }, "strip", z.ZodTypeAny, {
2030
+ latitude: number;
2031
+ longitude: number;
2032
+ }, {
2033
+ latitude: number;
2034
+ longitude: number;
2035
+ }>;
2036
+ }, "strip", z.ZodTypeAny, {
2037
+ coordinates: {
2038
+ latitude: number;
2039
+ longitude: number;
2040
+ };
2041
+ }, {
2042
+ coordinates: {
2043
+ latitude: number;
2044
+ longitude: number;
2045
+ };
2046
+ }>, z.ZodObject<{
2047
+ boundary: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
2048
+ }, "strip", z.ZodTypeAny, {
2049
+ boundary: [number, number, number, number];
2050
+ }, {
2051
+ boundary: [number, number, number, number];
2052
+ }>]>>;
2053
+ }, "strip", z.ZodTypeAny, {
2054
+ layerIds?: string[] | undefined;
2055
+ areaQuery?: {
2056
+ coordinates: {
2057
+ latitude: number;
2058
+ longitude: number;
2059
+ };
2060
+ } | {
2061
+ boundary: [number, number, number, number];
2062
+ } | undefined;
2063
+ }, {
2064
+ layerIds?: string[] | undefined;
2065
+ areaQuery?: {
2066
+ coordinates: {
2067
+ latitude: number;
2068
+ longitude: number;
2069
+ };
2070
+ } | {
2071
+ boundary: [number, number, number, number];
2072
+ } | undefined;
2073
+ }>;
2074
+ /**
2075
+ * The schema that describes the structure of the features in a layer.
2076
+ *
2077
+ * @remarks This can be useful to build generic UIs that need to know the structure of the data in
2078
+ * a layer, such as a dropdown to choose an attribute.
2079
+ *
2080
+ * @group Layer Schema
2081
+ */
2082
+ interface LayerSchema {
2083
+ /**
2084
+ * The total number of features in the layer.
2085
+ */
2086
+ featureCount: number;
2087
+ /**
2088
+ * Array of attribute schemas describing the properties available on features in this layer.
2089
+ */
2090
+ attributes: Array<LayerSchemaAttribute>;
2091
+ }
2092
+ /**
2093
+ * A single attribute from the layer schema.
2094
+ *
2095
+ * @remarks Each feature in a layer has a set of attributes, and these types describe the
2096
+ * structure of a single attribute, including things like id, display name, type, and sample values.
2097
+ *
2098
+ * @group Layer Schema
2099
+ */
2100
+ type LayerSchemaAttribute = LayerSchemaNumericAttribute | LayerSchemaTextAttribute | LayerSchemaBooleanAttribute | LayerSchemaDateAttribute | LayerSchemaDateTimeAttribute;
2101
+ /**
2102
+ * The common schema for all attributes.
2103
+ *
2104
+ * @group Layer Schema
2105
+ */
2106
+ interface LayerSchemaCommmonAttribute {
2107
+ /**
2108
+ * The unique identifier for this attribute.
2109
+ *
2110
+ * This can be used to fetch statistics, categories, histograms etc. for this attribute
2111
+ * via the {@link LayersController.getCategoryData}, {@link LayersController.getHistogramData},
2112
+ * and {@link LayersController.getAggregates} methods.
2113
+ */
2114
+ id: string;
2115
+ /**
2116
+ * The human-readable name of this attribute.
2117
+ */
2118
+ displayName: string;
2119
+ /**
2120
+ * The specific data type of this attribute, providing more detail than the basic type.
2121
+ *
2122
+ * For instance, a numeric attribute might be "INTEGER", "FLOAT, etc.
2123
+ */
2124
+ detailedType: string;
2125
+ /**
2126
+ * The number of distinct values present for this attribute across all features.
2127
+ */
2128
+ distinctCount: number;
2129
+ }
2130
+ /**
2131
+ * The schema for a numeric attribute on a layer.
2132
+ *
2133
+ * @group Layer Schema
2134
+ */
2135
+ interface LayerSchemaNumericAttribute extends LayerSchemaCommmonAttribute {
2136
+ /**
2137
+ * Indicates this is a numeric attribute.
2138
+ */
2139
+ type: "numeric";
2140
+ /**
2141
+ * A small sample of values for this attribute and their frequency.
2142
+ */
2143
+ sampleValues: Array<{
2144
+ value: number;
2145
+ count: number;
2146
+ }>;
2147
+ /**
2148
+ * The minimum value present for this attribute across all features.
2149
+ */
2150
+ min: number;
2151
+ /**
2152
+ * The maximum value present for this attribute across all features.
2153
+ */
2154
+ max: number;
2155
+ }
2156
+ /**
2157
+ * The schema for a text attribute on a layer.
2158
+ *
2159
+ * @group Layer Schema
2160
+ */
2161
+ interface LayerSchemaTextAttribute extends LayerSchemaCommmonAttribute {
2162
+ /**
2163
+ * Indicates this is a text attribute.
2164
+ */
2165
+ type: "text";
2166
+ /**
2167
+ * A small sample of string values for this attribute and their frequency.
2168
+ */
2169
+ sampleValues: Array<{
2170
+ value: string;
2171
+ count: number;
2172
+ }>;
2173
+ }
2174
+ /**
2175
+ * The schema for a boolean attribute on a layer.
2176
+ *
2177
+ * @group Layer Schema
2178
+ */
2179
+ interface LayerSchemaBooleanAttribute extends LayerSchemaCommmonAttribute {
2180
+ /**
2181
+ * Indicates this is a boolean attribute.
2182
+ */
2183
+ type: "boolean";
2184
+ /**
2185
+ * A representative sample of boolean values for this attribute and their frequency.
2186
+ */
2187
+ sampleValues: Array<{
2188
+ value: boolean;
2189
+ count: number;
2190
+ }>;
2191
+ }
2192
+ /**
2193
+ * The schema for a date attribute on a layer.
2194
+ *
2195
+ * @group Layer Schema
2196
+ */
2197
+ interface LayerSchemaDateAttribute extends LayerSchemaCommmonAttribute {
2198
+ /**
2199
+ * Indicates this is a date attribute.
2200
+ */
2201
+ type: "date";
2202
+ /**
2203
+ * The earliest date present for this attribute in truncated ISO8601 format (YYYY-MM-DD).
2204
+ */
2205
+ min: string;
2206
+ /**
2207
+ * The latest date present for this attribute in truncated ISO8601 format (YYYY-MM-DD).
2208
+ */
2209
+ max: string;
2210
+ /**
2211
+ * A representative sample of date values for this attribute and their frequency.
2212
+ */
2213
+ sampleValues: Array<{
2214
+ value: string;
2215
+ count: number;
2216
+ }>;
2217
+ }
2218
+ /**
2219
+ * The schema for a datetime attribute on a layer.
2220
+ *
2221
+ * @group Layer Schema
2222
+ */
2223
+ interface LayerSchemaDateTimeAttribute extends LayerSchemaCommmonAttribute {
2224
+ /**
2225
+ * Indicates this is a datetime attribute.
2226
+ */
2227
+ type: "datetime";
2228
+ /**
2229
+ * The earliest datetime present for this attribute in ISO8601 format.
2230
+ */
2231
+ min: string;
2232
+ /**
2233
+ * The latest datetime present for this attribute in ISO8601 format.
2234
+ */
2235
+ max: string;
2236
+ /**
2237
+ * A representative sample of datetime values for this attribute and their frequency.
2238
+ */
2239
+ sampleValues: Array<{
2240
+ value: string;
2241
+ count: number;
2242
+ }>;
2243
+ }
2244
+
2245
+ /**
2246
+ * @group Filters
2247
+ */
2248
+ type FilterLogicGate = z.infer<typeof FilterLogicGateSchema>;
2249
+ declare const FilterLogicGateSchema: z.ZodEnum<["and", "or"]>;
2250
+ /**
2251
+ * @group Filters
2252
+ */
2253
+ type FilterExpression = z.infer<typeof FilterExpressionSchema>;
2254
+ declare const FilterExpressionSchema: z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>;
2255
+ /**
2256
+ * A `FilterTernary` is a tree structure for combining expressions with logical operators.
2257
+ *
2258
+ * When combining three or more conditions, you must use proper nesting rather than a flat list.
2259
+ *
2260
+ * @example
2261
+ * ```typescript
2262
+ * // A simple filter with a single condition
2263
+ * const filter = [
2264
+ * ["AREA", "gt", 30_000],
2265
+ * "and",
2266
+ * ["COLOR", "eq", "red"]
2267
+ * ]
2268
+ *
2269
+ * // A complex filter with multiple conditions
2270
+ * const filter = [
2271
+ * ["AREA", "gt", 30_000],
2272
+ * "and",
2273
+ * [
2274
+ * ["COLOR", "eq", "red"],
2275
+ * "or",
2276
+ * ["TYPE", "eq", "residential"]
2277
+ * ]
2278
+ * ]
2279
+ * ```
2280
+ *
2281
+ * @group Filters
2282
+ */
2283
+ type FilterTernary = [
2284
+ FilterTernary | FilterExpression | null | boolean,
2285
+ FilterLogicGate,
2286
+ FilterTernary | FilterExpression | null | boolean
2287
+ ];
2288
+ /**
2289
+ *
2290
+ * Filters can be used to change which features in a layer are rendered. Filters can be
2291
+ * applied to a layer by the `setLayerFilters` method on the Felt controller.
2292
+ *
2293
+ * Filters use a tree structure for combining expressions with logical operators, called a
2294
+ * {@link FilterTernary}. When combining three or more conditions, you must use proper nesting
2295
+ * rather than a flat list.
2296
+ *
2297
+ * See the examples below for the correct structure to use when building complex filters.
2298
+ *
2299
+ * @remarks
2300
+ * The possible operators are:
2301
+ * - `lt`: Less than
2302
+ * - `gt`: Greater than
2303
+ * - `le`: Less than or equal to
2304
+ * - `ge`: Greater than or equal to
2305
+ * - `eq`: Equal to
2306
+ * - `ne`: Not equal to
2307
+ * - `cn`: Contains
2308
+ * - `nc`: Does not contain
2309
+ *
2310
+ * The allowed boolean operators are:
2311
+ * - `and`: Logical AND
2312
+ * - `or`: Logical OR
2313
+ *
2314
+ * @example
2315
+ * ```typescript
2316
+ * // 1. Simple filter: single condition
2317
+ * felt.setLayerFilters({
2318
+ * layerId: "layer-1",
2319
+ * filters: ["AREA", "gt", 30_000],
2320
+ * });
2321
+ *
2322
+ * // 2. Basic compound filter: two conditions with AND
2323
+ * felt.setLayerFilters({
2324
+ * layerId: "layer-1",
2325
+ * filters: [
2326
+ * ["AREA", "gt", 30_000], // First condition
2327
+ * "and", // Logic operator
2328
+ * ["COLOR", "eq", "red"] // Second condition
2329
+ * ]
2330
+ * });
2331
+ *
2332
+ * // 3. Complex filter: three or more conditions require nesting
2333
+ * // ⚠️ IMPORTANT: Filters use a tree structure, not a flat list
2334
+ * felt.setLayerFilters({
2335
+ * layerId: "layer-1",
2336
+ * filters: [
2337
+ * ["AREA", "gt", 30_000], // First condition
2338
+ * "and", // First logic operator
2339
+ * [ // Nested group starts
2340
+ * ["COLOR", "eq", "red"], // Second condition
2341
+ * "and", // Second logic operator
2342
+ * ["TYPE", "eq", "residential"] // Third condition
2343
+ * ] // Nested group ends
2344
+ * ]
2345
+ * });
2346
+ *
2347
+ * // 4. Even more complex: four conditions with proper nesting
2348
+ * // Visual structure:
2349
+ * // AND
2350
+ * // / \
2351
+ * // condition AND
2352
+ * // / \
2353
+ * // condition AND
2354
+ * // / \
2355
+ * // condition condition
2356
+ * felt.setLayerFilters({
2357
+ * layerId: "layer-1",
2358
+ * filters: [
2359
+ * ["AREA", "gt", 30_000], // First condition
2360
+ * "and",
2361
+ * [
2362
+ * ["COLOR", "eq", "red"], // Second condition
2363
+ * "and",
2364
+ * [
2365
+ * ["TYPE", "eq", "residential"], // Third condition
2366
+ * "and",
2367
+ * ["YEAR", "gt", 2000] // Fourth condition
2368
+ * ]
2369
+ * ]
2370
+ * ]
2371
+ * });
2372
+ *
2373
+ * // 5. Mixed operators: combining AND and OR
2374
+ * // Visual structure:
2375
+ * // AND
2376
+ * // / \
2377
+ * // condition OR
2378
+ * // / \
2379
+ * // condition condition
2380
+ * felt.setLayerFilters({
2381
+ * layerId: "layer-1",
2382
+ * filters: [
2383
+ * ["AREA", "gt", 30_000], // Must have large area
2384
+ * "and",
2385
+ * [
2386
+ * ["COLOR", "eq", "red"], // Must be either red
2387
+ * "or",
2388
+ * ["TYPE", "eq", "residential"] // OR residential type
2389
+ * ]
2390
+ * ]
2391
+ * });
2392
+ * ```
2393
+ *
2394
+ * @group Filters
2395
+ */
2396
+ type Filters = FilterTernary | FilterExpression | null | boolean;
2397
+ /**
2398
+ * The filters that are currently set on a layer.
2399
+ *
2400
+ * A layer's filters are the combination of various different places
2401
+ * in which filters can be applied.
2402
+ *
2403
+ * @group Filters
2404
+ */
2405
+ interface LayerFilters {
2406
+ /**
2407
+ * Filters that are set in the layer's style. These are the lowest level
2408
+ * of filters, and can only be set by editing the map.
2409
+ */
2410
+ style: Filters;
2411
+ /**
2412
+ * Filters that are set in the layer's components, which are interactive
2413
+ * elements in the legend. These can be set by viewers for their own session,
2414
+ * but their default value can be set by the map creator.
2415
+ */
2416
+ components: Filters;
2417
+ /**
2418
+ * Filters that are set ephemerally by viewers in their own session.
2419
+ *
2420
+ * These are the filters that are set when the `setLayerFilters` method is
2421
+ * called. There is no way to set these in the Felt UI - they can only be
2422
+ * set using the SDK.
2423
+ */
2424
+ ephemeral: Filters;
2425
+ /**
2426
+ * The combined result of all the filters set on the layer.
2427
+ */
2428
+ combined: Filters;
2429
+ }
2430
+
2431
+ declare const AggregateMethodSchema: z.ZodEnum<["avg", "max", "min", "sum", "median"]>;
2432
+ declare const AggregationConfigSchema: z.ZodObject<{
2433
+ /**
2434
+ * The operation to use on the values from the features in the layer
2435
+ */
2436
+ method: z.ZodEnum<["avg", "max", "min", "sum", "median"]>;
2437
+ /**
2438
+ * The attribute to use for the aggregation. This must be a numeric attribute.
2439
+ */
2440
+ attribute: z.ZodString;
2441
+ }, "strip", z.ZodTypeAny, {
2442
+ attribute: string;
2443
+ method: "avg" | "max" | "min" | "sum" | "median";
2444
+ }, {
2445
+ attribute: string;
2446
+ method: "avg" | "max" | "min" | "sum" | "median";
2447
+ }>;
2448
+ declare const MutliAggregationConfigSchema: z.ZodObject<{
2449
+ /**
2450
+ * The operations to use on the values from the features in the layer
2451
+ */
2452
+ methods: z.ZodArray<z.ZodUnion<[z.ZodEnum<["avg", "max", "min", "sum", "median"]>, z.ZodLiteral<"count">]>, "many">;
2453
+ /**
2454
+ * The attribute to use for the aggregation. This must be a numeric attribute.
2455
+ */
2456
+ attribute: z.ZodOptional<z.ZodString>;
2457
+ }, "strip", z.ZodTypeAny, {
2458
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "count")[];
2459
+ attribute?: string | undefined;
2460
+ }, {
2461
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "count")[];
2462
+ attribute?: string | undefined;
2463
+ }>;
2464
+ /**
2465
+ * Defines how to aggregate a value across features in a layer.
2466
+ */
2467
+ interface AggregationConfig extends zInfer<typeof AggregationConfigSchema> {
2468
+ /**
2469
+ * The method to use for the aggregation.
2470
+ */
2471
+ method: AggregationMethod;
2472
+ }
2473
+ /**
2474
+ * The method to use for the aggregation.
2475
+ */
2476
+ type AggregationMethod = z.infer<typeof AggregateMethodSchema>;
2477
+ /**
2478
+ * Defines how to aggregate a value across features in a layer with multiple aggregations
2479
+ * returned at once.
2480
+ */
2481
+ interface MultiAggregationConfig<T extends AggregationMethod | "count"> extends zInfer<typeof MutliAggregationConfigSchema> {
2482
+ methods: T[];
2483
+ /**
2484
+ * The attribute to use for the aggregation when aggregations other than "count" are used.
2485
+ *
2486
+ * This can be omitted if the only aggregation is "count", but must be a numeric attribute
2487
+ * otherwise.
2488
+ */
2489
+ attribute?: string;
2490
+ }
2491
+ declare const ValueConfigurationSchema: z.ZodObject<{
2492
+ boundary: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
2493
+ type: z.ZodLiteral<"Polygon">;
2494
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
2495
+ }, "strip", z.ZodTypeAny, {
2496
+ type: "Polygon";
2497
+ coordinates: [number, number][][];
2498
+ }, {
2499
+ type: "Polygon";
2500
+ coordinates: [number, number][][];
2501
+ }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
2502
+ filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
2503
+ aggregation: z.ZodOptional<z.ZodObject<{
2504
+ /**
2505
+ * The operation to use on the values from the features in the layer
2506
+ */
2507
+ method: z.ZodEnum<["avg", "max", "min", "sum", "median"]>;
2508
+ /**
2509
+ * The attribute to use for the aggregation. This must be a numeric attribute.
2510
+ */
2511
+ attribute: z.ZodString;
2512
+ }, "strip", z.ZodTypeAny, {
2513
+ attribute: string;
2514
+ method: "avg" | "max" | "min" | "sum" | "median";
2515
+ }, {
2516
+ attribute: string;
2517
+ method: "avg" | "max" | "min" | "sum" | "median";
2518
+ }>>;
2519
+ }, "strip", z.ZodTypeAny, {
2520
+ boundary?: [number, number, number, number] | [number, number][] | {
2521
+ type: "Polygon";
2522
+ coordinates: [number, number][][];
2523
+ } | undefined;
2524
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2525
+ aggregation?: {
2526
+ attribute: string;
2527
+ method: "avg" | "max" | "min" | "sum" | "median";
2528
+ } | undefined;
2529
+ }, {
2530
+ boundary?: [number, number, number, number] | [number, number][] | {
2531
+ type: "Polygon";
2532
+ coordinates: [number, number][][];
2533
+ } | undefined;
2534
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2535
+ aggregation?: {
2536
+ attribute: string;
2537
+ method: "avg" | "max" | "min" | "sum" | "median";
2538
+ } | undefined;
2539
+ }>;
2540
+ /**
2541
+ * Configuration for filtering and aggregating values across features.
2542
+ *
2543
+ * This can be used to restrict the features considered for aggregation via the `boundary`
2544
+ * and `filters` properties.
2545
+ *
2546
+ * It can also be used to specify how to aggregate the values via the `aggregation` property.
2547
+ */
2548
+ interface ValueConfiguration extends zInfer<typeof ValueConfigurationSchema> {
2549
+ /**
2550
+ * A spatial boundary to filter what gets counted or aggregated, while still including
2551
+ * all possible categories or bin ranges in the results.
2552
+ */
2553
+ boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
2554
+ /**
2555
+ * Attribute filters to determine what gets counted or aggregated, while still including
2556
+ * all possible categories or bin ranges in the results.
2557
+ */
2558
+ filters?: Filters;
2559
+ /**
2560
+ * Specifies how to aggregate values within each category or bin. When omitted,
2561
+ * features are counted. When specified, the chosen calculation (avg, sum, etc.)
2562
+ * is performed on the specified attribute.
2563
+ *
2564
+ * For example, instead of counting buildings in each category, you might want
2565
+ * to sum their square footage or average their assessed values.
2566
+ */
2567
+ aggregation?: AggregationConfig;
2568
+ }
2569
+ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
2570
+ /**
2571
+ * The ID of the layer to get categories from.
2572
+ */
2573
+ layerId: z.ZodString;
2574
+ /**
2575
+ * The attribute to use for categorization.
2576
+ */
2577
+ attribute: z.ZodString;
2578
+ /**
2579
+ * The maximum number of categories to return.
2580
+ */
2581
+ limit: z.ZodOptional<z.ZodNumber>;
2582
+ boundary: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
2583
+ type: z.ZodLiteral<"Polygon">;
2584
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
2585
+ }, "strip", z.ZodTypeAny, {
2586
+ type: "Polygon";
2587
+ coordinates: [number, number][][];
2588
+ }, {
2589
+ type: "Polygon";
2590
+ coordinates: [number, number][][];
2591
+ }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
2592
+ filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
2593
+ values: z.ZodOptional<z.ZodObject<{
2594
+ boundary: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
2595
+ type: z.ZodLiteral<"Polygon">;
2596
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
2597
+ }, "strip", z.ZodTypeAny, {
2598
+ type: "Polygon";
2599
+ coordinates: [number, number][][];
2600
+ }, {
2601
+ type: "Polygon";
2602
+ coordinates: [number, number][][];
2603
+ }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
2604
+ filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
2605
+ aggregation: z.ZodOptional<z.ZodObject<{
2606
+ /**
2607
+ * The operation to use on the values from the features in the layer
2608
+ */
2609
+ method: z.ZodEnum<["avg", "max", "min", "sum", "median"]>;
2610
+ /**
2611
+ * The attribute to use for the aggregation. This must be a numeric attribute.
2612
+ */
2613
+ attribute: z.ZodString;
2614
+ }, "strip", z.ZodTypeAny, {
2615
+ attribute: string;
2616
+ method: "avg" | "max" | "min" | "sum" | "median";
2617
+ }, {
2618
+ attribute: string;
2619
+ method: "avg" | "max" | "min" | "sum" | "median";
2620
+ }>>;
2621
+ }, "strip", z.ZodTypeAny, {
2622
+ boundary?: [number, number, number, number] | [number, number][] | {
2623
+ type: "Polygon";
2624
+ coordinates: [number, number][][];
2625
+ } | undefined;
2626
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2627
+ aggregation?: {
2628
+ attribute: string;
2629
+ method: "avg" | "max" | "min" | "sum" | "median";
2630
+ } | undefined;
2631
+ }, {
2632
+ boundary?: [number, number, number, number] | [number, number][] | {
2633
+ type: "Polygon";
2634
+ coordinates: [number, number][][];
2635
+ } | undefined;
2636
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2637
+ aggregation?: {
2638
+ attribute: string;
2639
+ method: "avg" | "max" | "min" | "sum" | "median";
2640
+ } | undefined;
2641
+ }>>;
2642
+ }, "strip", z.ZodTypeAny, {
2643
+ attribute: string;
2644
+ layerId: string;
2645
+ values?: {
2646
+ boundary?: [number, number, number, number] | [number, number][] | {
2647
+ type: "Polygon";
2648
+ coordinates: [number, number][][];
2649
+ } | undefined;
2650
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2651
+ aggregation?: {
2652
+ attribute: string;
2653
+ method: "avg" | "max" | "min" | "sum" | "median";
2654
+ } | undefined;
2655
+ } | undefined;
2656
+ boundary?: [number, number, number, number] | [number, number][] | {
2657
+ type: "Polygon";
2658
+ coordinates: [number, number][][];
2659
+ } | undefined;
2660
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2661
+ limit?: number | undefined;
2662
+ }, {
2663
+ attribute: string;
2664
+ layerId: string;
2665
+ values?: {
2666
+ boundary?: [number, number, number, number] | [number, number][] | {
2667
+ type: "Polygon";
2668
+ coordinates: [number, number][][];
2669
+ } | undefined;
2670
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2671
+ aggregation?: {
2672
+ attribute: string;
2673
+ method: "avg" | "max" | "min" | "sum" | "median";
2674
+ } | undefined;
2675
+ } | undefined;
2676
+ boundary?: [number, number, number, number] | [number, number][] | {
2677
+ type: "Polygon";
2678
+ coordinates: [number, number][][];
2679
+ } | undefined;
2680
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2681
+ limit?: number | undefined;
2682
+ }>;
2683
+ /**
2684
+ * The parameters for getting categories from a layer, passed to
2685
+ * the {@link LayersController.getCategoryData} method.
2686
+ */
2687
+ interface GetLayerCategoriesParams extends zInfer<typeof GetLayerCategoriesParamsSchema> {
2688
+ /**
2689
+ * Attribute filters to determine what gets counted or aggregated.
2690
+ */
2691
+ filters?: Filters;
2692
+ /**
2693
+ * A spatial boundary to filter what gets counted or aggregated. This can be either
2694
+ * a [w, s, e, n] bounding box, a GeoJSON Polygon geometry, or a list of coordinates
2695
+ * that form a polyline.
2696
+ */
2697
+ boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
2698
+ /**
2699
+ * Configuration for filtering and aggregating values while preserving the full set of
2700
+ * categories in the results.
2701
+ *
2702
+ * This is particularly useful when you want to compare different subsets of data while
2703
+ * maintaining consistent categories. For example:
2704
+ *
2705
+ * - Show all building types in a city, but only count recent buildings in each type
2706
+ * - Keep all neighborhood categories but only sum up residential square footage
2707
+ *
2708
+ * Unlike top-level filters which affect both what categories appear AND their values,
2709
+ * filters in this configuration only affect the values while keeping all possible
2710
+ * categories in the results.
2711
+ */
2712
+ values?: ValueConfiguration;
2713
+ }
2714
+ declare const GetLayerCategoriesGroupSchema: z.ZodObject<{
2715
+ /**
2716
+ * The category for which the value was calculated.
2717
+ */
2718
+ key: z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean]>;
2719
+ /**
2720
+ * The value calculated for the category, whether a count, sum, average, etc.
2721
+ *
2722
+ * `null` is returned if there are no features in the category as opposed to zero,
2723
+ * so as not to confuse with a real zero value from some aggregation.
2724
+ */
2725
+ value: z.ZodNullable<z.ZodNumber>;
2726
+ }, "strip", z.ZodTypeAny, {
2727
+ value: number | null;
2728
+ key: string | number | boolean;
2729
+ }, {
2730
+ value: number | null;
2731
+ key: string | number | boolean;
2732
+ }>;
2733
+ /**
2734
+ * A single category from the response from the {@link LayersController.getCategoryData} method.
2735
+ */
2736
+ interface GetLayerCategoriesGroup extends zInfer<typeof GetLayerCategoriesGroupSchema> {
2737
+ }
2738
+ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
2739
+ layerId: z.ZodString;
2740
+ attribute: z.ZodString;
2741
+ steps: z.ZodUnion<[z.ZodObject<{
2742
+ type: z.ZodLiteral<"equal-intervals">;
2743
+ count: z.ZodNumber;
2744
+ }, "strip", z.ZodTypeAny, {
2745
+ type: "equal-intervals";
2746
+ count: number;
2747
+ }, {
2748
+ type: "equal-intervals";
2749
+ count: number;
2750
+ }>, z.ZodObject<{
2751
+ type: z.ZodLiteral<"time-interval">;
2752
+ interval: z.ZodEnum<["hour", "day", "week", "month", "year"]>;
2753
+ }, "strip", z.ZodTypeAny, {
2754
+ type: "time-interval";
2755
+ interval: "hour" | "day" | "week" | "month" | "year";
2756
+ }, {
2757
+ type: "time-interval";
2758
+ interval: "hour" | "day" | "week" | "month" | "year";
2759
+ }>, z.ZodArray<z.ZodNumber, "many">]>;
2760
+ boundary: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
2761
+ type: z.ZodLiteral<"Polygon">;
2762
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
2763
+ }, "strip", z.ZodTypeAny, {
2764
+ type: "Polygon";
2765
+ coordinates: [number, number][][];
2766
+ }, {
2767
+ type: "Polygon";
2768
+ coordinates: [number, number][][];
2769
+ }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
2770
+ filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
2771
+ /**
2772
+ * Configuration for filtering and aggregating values while preserving the full set of
2773
+ * bin ranges in the results.
2774
+ *
2775
+ * This is particularly useful when you want to compare different subsets of data while
2776
+ * maintaining consistent ranges. For example:
2777
+ *
2778
+ * - Use the same height ranges for comparing old vs new buildings
2779
+ *
2780
+ * Unlike top-level filters which affect both what ranges appear AND their values,
2781
+ * filters in this configuration only affect the values while keeping all possible
2782
+ * ranges in the results.
2783
+ */
2784
+ values: z.ZodOptional<z.ZodObject<{
2785
+ boundary: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
2786
+ type: z.ZodLiteral<"Polygon">;
2787
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
2788
+ }, "strip", z.ZodTypeAny, {
2789
+ type: "Polygon";
2790
+ coordinates: [number, number][][];
2791
+ }, {
2792
+ type: "Polygon";
2793
+ coordinates: [number, number][][];
2794
+ }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
2795
+ filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
2796
+ aggregation: z.ZodOptional<z.ZodObject<{
2797
+ /**
2798
+ * The operation to use on the values from the features in the layer
2799
+ */
2800
+ method: z.ZodEnum<["avg", "max", "min", "sum", "median"]>;
2801
+ /**
2802
+ * The attribute to use for the aggregation. This must be a numeric attribute.
2803
+ */
2804
+ attribute: z.ZodString;
2805
+ }, "strip", z.ZodTypeAny, {
2806
+ attribute: string;
2807
+ method: "avg" | "max" | "min" | "sum" | "median";
2808
+ }, {
2809
+ attribute: string;
2810
+ method: "avg" | "max" | "min" | "sum" | "median";
2811
+ }>>;
2812
+ }, "strip", z.ZodTypeAny, {
2813
+ boundary?: [number, number, number, number] | [number, number][] | {
2814
+ type: "Polygon";
2815
+ coordinates: [number, number][][];
2816
+ } | undefined;
2817
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2818
+ aggregation?: {
2819
+ attribute: string;
2820
+ method: "avg" | "max" | "min" | "sum" | "median";
2821
+ } | undefined;
2822
+ }, {
2823
+ boundary?: [number, number, number, number] | [number, number][] | {
2824
+ type: "Polygon";
2825
+ coordinates: [number, number][][];
2826
+ } | undefined;
2827
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2828
+ aggregation?: {
2829
+ attribute: string;
2830
+ method: "avg" | "max" | "min" | "sum" | "median";
2831
+ } | undefined;
2832
+ }>>;
2833
+ }, "strip", z.ZodTypeAny, {
2834
+ attribute: string;
2835
+ layerId: string;
2836
+ steps: number[] | {
2837
+ type: "equal-intervals";
2838
+ count: number;
2839
+ } | {
2840
+ type: "time-interval";
2841
+ interval: "hour" | "day" | "week" | "month" | "year";
2842
+ };
2843
+ values?: {
2844
+ boundary?: [number, number, number, number] | [number, number][] | {
2845
+ type: "Polygon";
2846
+ coordinates: [number, number][][];
2847
+ } | undefined;
2848
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2849
+ aggregation?: {
2850
+ attribute: string;
2851
+ method: "avg" | "max" | "min" | "sum" | "median";
2852
+ } | undefined;
2853
+ } | undefined;
2854
+ boundary?: [number, number, number, number] | [number, number][] | {
2855
+ type: "Polygon";
2856
+ coordinates: [number, number][][];
2857
+ } | undefined;
2858
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2859
+ }, {
2860
+ attribute: string;
2861
+ layerId: string;
2862
+ steps: number[] | {
2863
+ type: "equal-intervals";
2864
+ count: number;
2865
+ } | {
2866
+ type: "time-interval";
2867
+ interval: "hour" | "day" | "week" | "month" | "year";
2868
+ };
2869
+ values?: {
2870
+ boundary?: [number, number, number, number] | [number, number][] | {
2871
+ type: "Polygon";
2872
+ coordinates: [number, number][][];
2873
+ } | undefined;
2874
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2875
+ aggregation?: {
2876
+ attribute: string;
2877
+ method: "avg" | "max" | "min" | "sum" | "median";
2878
+ } | undefined;
2879
+ } | undefined;
2880
+ boundary?: [number, number, number, number] | [number, number][] | {
2881
+ type: "Polygon";
2882
+ coordinates: [number, number][][];
2883
+ } | undefined;
2884
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2885
+ }>;
2886
+ /**
2887
+ * The params used to request a histogram of values from a layer, passed to
2888
+ * the {@link LayersController.getHistogramData} method.
2889
+ */
2890
+ interface GetLayerHistogramParams extends zInfer<typeof GetLayerHistogramParamsSchema> {
2891
+ /**
2892
+ * Attribute filters to determine what gets counted or aggregated.
2893
+ */
2894
+ filters?: Filters;
2895
+ /**
2896
+ * A spatial boundary to filter what gets counted or aggregated. This can be either
2897
+ * a [w, s, e, n] bounding box, a GeoJSON Polygon geometry, or a list of coordinates
2898
+ * that form a polyline.
2899
+ */
2900
+ boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
2901
+ }
2902
+ declare const GetLayerHistogramBinSchema: z.ZodObject<{
2903
+ /**
2904
+ * The left edge of the bin.
2905
+ */
2906
+ min: z.ZodNumber;
2907
+ /**
2908
+ * The right edge of the bin.
2909
+ */
2910
+ max: z.ZodNumber;
2911
+ /**
2912
+ * The number of features in the bin.
2913
+ */
2914
+ value: z.ZodNumber;
2915
+ }, "strip", z.ZodTypeAny, {
2916
+ value: number;
2917
+ max: number;
2918
+ min: number;
2919
+ }, {
2920
+ value: number;
2921
+ max: number;
2922
+ min: number;
2923
+ }>;
2924
+ /**
2925
+ * One bin from the response from the {@link LayersController.getHistogramData} method.
2926
+ */
2927
+ interface GetLayerHistogramBin extends zInfer<typeof GetLayerHistogramBinSchema> {
2928
+ }
2929
+ declare const GetLayerCalculationParamsSchema: z.ZodObject<{
2930
+ /**
2931
+ * The ID of the layer to calculate an aggregate value for.
2932
+ */
2933
+ layerId: z.ZodString;
2934
+ boundary: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
2935
+ type: z.ZodLiteral<"Polygon">;
2936
+ coordinates: z.ZodArray<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, "many">;
2937
+ }, "strip", z.ZodTypeAny, {
2938
+ type: "Polygon";
2939
+ coordinates: [number, number][][];
2940
+ }, {
2941
+ type: "Polygon";
2942
+ coordinates: [number, number][][];
2943
+ }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
2944
+ filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
2945
+ aggregation: z.ZodObject<{
2946
+ /**
2947
+ * The operations to use on the values from the features in the layer
2948
+ */
2949
+ methods: z.ZodArray<z.ZodUnion<[z.ZodEnum<["avg", "max", "min", "sum", "median"]>, z.ZodLiteral<"count">]>, "many">;
2950
+ /**
2951
+ * The attribute to use for the aggregation. This must be a numeric attribute.
2952
+ */
2953
+ attribute: z.ZodOptional<z.ZodString>;
2954
+ }, "strip", z.ZodTypeAny, {
2955
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "count")[];
2956
+ attribute?: string | undefined;
2957
+ }, {
2958
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "count")[];
2959
+ attribute?: string | undefined;
2960
+ }>;
2961
+ }, "strip", z.ZodTypeAny, {
2962
+ aggregation: {
2963
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "count")[];
2964
+ attribute?: string | undefined;
2965
+ };
2966
+ layerId: string;
2967
+ boundary?: [number, number, number, number] | [number, number][] | {
2968
+ type: "Polygon";
2969
+ coordinates: [number, number][][];
2970
+ } | undefined;
2971
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2972
+ }, {
2973
+ aggregation: {
2974
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "count")[];
2975
+ attribute?: string | undefined;
2976
+ };
2977
+ layerId: string;
2978
+ boundary?: [number, number, number, number] | [number, number][] | {
2979
+ type: "Polygon";
2980
+ coordinates: [number, number][][];
2981
+ } | undefined;
2982
+ filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
2983
+ }>;
2984
+ /**
2985
+ * The parameters for calculating a single aggregate value for a layer, passed to
2986
+ * the {@link LayersController.getAggregates} method.
2987
+ */
2988
+ interface GetLayerCalculationParams<T extends AggregationMethod | "count"> extends z.infer<typeof GetLayerCalculationParamsSchema> {
2989
+ /**
2990
+ * Attribute filters to determine what gets counted or aggregated.
2991
+ */
2992
+ filters?: Filters;
2993
+ /**
2994
+ * A spatial boundary to filter what gets counted or aggregated. This can be either
2995
+ * a [w, s, e, n] bounding box, a GeoJSON Polygon geometry, or a list of coordinates
2996
+ * that form a polyline.
2997
+ */
2998
+ boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
2999
+ /**
3000
+ * Specifies how to aggregate values within each category or bin. When omitted,
3001
+ * features are counted. When specified, the chosen calculation (avg, sum, etc.)
3002
+ * is performed on the specified attribute.
3003
+ */
3004
+ aggregation: MultiAggregationConfig<T>;
3005
+ }
3006
+
3007
+ /**
3008
+ * The event object passed to the interaction listeners.
3009
+ */
3010
+ interface MapInteractionEvent {
3011
+ /**
3012
+ * The cursor position in world coordinates.
3013
+ */
3014
+ coordinate: LatLng;
3015
+ /**
3016
+ * The vector features that are under the cursor.
3017
+ */
3018
+ features: Array<LayerFeature>;
3019
+ /**
3020
+ * The raster pixel values that are under the cursor.
3021
+ */
3022
+ rasterValues: Array<RasterValue>;
3023
+ }
3024
+
3025
+ /**
3026
+ * The details of a map.
3027
+ *
3028
+ * @group Types
3029
+ */
3030
+ type MapDetails = {
3031
+ /**
3032
+ * The id of the map.
3033
+ */
3034
+ id: string;
3035
+ /**
3036
+ * The title of the map.
3037
+ */
3038
+ title: string;
3039
+ /**
3040
+ * The description of the map.
3041
+ */
3042
+ description: string | null;
3043
+ };
3044
+
3045
+ /**
3046
+ * A reference to any kind of entity in the map.
3047
+ *
3048
+ * @remarks
3049
+ * EntityNodes are used when you have some collection of entities and you need to
3050
+ *
3051
+ * @group Entity Node
3052
+ */
3053
+ type EntityNode = ElementNode | ElementGroupNode | LayerNode | LayerGroupNode | FeatureNode;
3054
+ /**
3055
+ * References an element on the map.
3056
+ *
3057
+ * @interface
3058
+ * @group Entity Nodes
3059
+ */
3060
+ type ElementNode = {
3061
+ type: "element";
3062
+ entity: Element;
3063
+ };
3064
+ /**
3065
+ * References an element group.
3066
+ *
3067
+ * @interface
3068
+ * @group Entity Nodes
3069
+ */
3070
+ type ElementGroupNode = {
3071
+ type: "elementGroup";
3072
+ entity: ElementGroup;
3073
+ };
3074
+ /**
3075
+ * References a layer on the map.
3076
+ *
3077
+ * @interface
3078
+ * @group Entity Nodes
3079
+ */
3080
+ type LayerNode = {
3081
+ type: "layer";
3082
+ entity: Layer;
3083
+ };
3084
+ /**
3085
+ * References a layer group on the map.
3086
+ *
3087
+ * @interface
3088
+ * @group Entity Nodes
3089
+ */
3090
+ type LayerGroupNode = {
3091
+ type: "layerGroup";
3092
+ entity: LayerGroup;
3093
+ };
3094
+ /**
3095
+ * References a feature on the map.
3096
+ *
3097
+ * @interface
3098
+ * @group Entity Nodes
3099
+ */
3100
+ type FeatureNode = {
3101
+ type: "feature";
3102
+ entity: LayerFeature;
3103
+ };
3104
+ /**
3105
+ * The options for selecting a feature in a layer.
3106
+ */
3107
+ interface FeatureSelection extends zInfer<typeof FeatureSelectionSchema> {
3108
+ }
3109
+ /**
3110
+ * @ignore
3111
+ */
3112
+ declare const FeatureSelectionSchema: z.ZodObject<{
3113
+ /**
3114
+ * The id of the feature to select.
3115
+ */
3116
+ id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
3117
+ /**
3118
+ * The id of the layer that the feature belongs to.
3119
+ */
3120
+ layerId: z.ZodString;
3121
+ /**
3122
+ * Whether to show the feature's popup, if it is configured in the layer's style.
3123
+ *
3124
+ * @default true
3125
+ */
3126
+ showPopup: z.ZodOptional<z.ZodBoolean>;
3127
+ /**
3128
+ * Whether to center the view on the feature after selecting it.
3129
+ *
3130
+ * When true, the viewport will be centered on the feature and zoomed to fit the feature
3131
+ * in the viewport. If you need to control the zoom level to prevent it zooming in too
3132
+ * far, you can pass an object with a `maxZoom` property.
3133
+ *
3134
+ * This is useful for avoiding zooming in too far on point features, or if you want
3135
+ * to maintain the current zoom level.
3136
+ *
3137
+ * @default true
3138
+ */
3139
+ fitViewport: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodObject<{
3140
+ maxZoom: z.ZodNumber;
3141
+ }, "strip", z.ZodTypeAny, {
3142
+ maxZoom: number;
3143
+ }, {
3144
+ maxZoom: number;
3145
+ }>]>>;
3146
+ }, "strip", z.ZodTypeAny, {
3147
+ id: string | number;
3148
+ layerId: string;
3149
+ showPopup?: boolean | undefined;
3150
+ fitViewport?: boolean | {
3151
+ maxZoom: number;
3152
+ } | undefined;
3153
+ }, {
3154
+ id: string | number;
3155
+ layerId: string;
3156
+ showPopup?: boolean | undefined;
3157
+ fitViewport?: boolean | {
3158
+ maxZoom: number;
3159
+ } | undefined;
3160
+ }>;
3161
+
3162
+ declare const ToolSchema: z.ZodEnum<["pin", "line", "route", "polygon", "circle", "marker", "highlighter", "text", "note", "link"]>;
3163
+ type ToolType = z.infer<typeof ToolSchema>;
3164
+ type ConfigurableToolType = keyof ToolSettingsMap;
3165
+ declare const PinToolSettingsSchema: z.ZodObject<{
3166
+ symbol: z.ZodString;
3167
+ color: z.ZodString;
3168
+ frame: z.ZodNullable<z.ZodEnum<["frame-circle", "frame-square"]>>;
3169
+ afterCreation: z.ZodEnum<["enter name", "add another", "select"]>;
3170
+ }, "strip", z.ZodTypeAny, {
3171
+ symbol: string;
3172
+ color: string;
3173
+ frame: "frame-circle" | "frame-square" | null;
3174
+ afterCreation: "enter name" | "add another" | "select";
3175
+ }, {
3176
+ symbol: string;
3177
+ color: string;
3178
+ frame: "frame-circle" | "frame-square" | null;
3179
+ afterCreation: "enter name" | "add another" | "select";
3180
+ }>;
3181
+ interface PinToolSettings extends zInfer<typeof PinToolSettingsSchema> {
3182
+ symbol: PlaceSymbol;
3183
+ /**
3184
+ * What to do after creating the Place element.
3185
+ *
3186
+ * - `"enter name"`: Enter a name for the Place, focusing the name input.
3187
+ * - `"add another"`: Add another Place, leaving the tool still selected.
3188
+ * - `"none"`: Puts the tool down and selects the new Place element.
3189
+ *
3190
+ * @defaultValue `"enter name"`
3191
+ */
3192
+ afterCreation: "enter name" | "add another" | "select";
3193
+ }
3194
+ declare const LineToolSettingsSchema: z.ZodObject<{
3195
+ color: z.ZodString;
3196
+ strokeOpacity: z.ZodNumber;
3197
+ strokeWidth: z.ZodNumber;
3198
+ strokeStyle: z.ZodEnum<["solid", "dashed", "dotted"]>;
3199
+ distanceMarker: z.ZodBoolean;
3200
+ }, "strip", z.ZodTypeAny, {
3201
+ color: string;
3202
+ strokeOpacity: number;
3203
+ strokeWidth: number;
3204
+ strokeStyle: "solid" | "dashed" | "dotted";
3205
+ distanceMarker: boolean;
3206
+ }, {
3207
+ color: string;
3208
+ strokeOpacity: number;
3209
+ strokeWidth: number;
3210
+ strokeStyle: "solid" | "dashed" | "dotted";
3211
+ distanceMarker: boolean;
3212
+ }>;
3213
+ interface LineToolSettings extends zInfer<typeof LineToolSettingsSchema> {
3214
+ }
3215
+ declare const RouteToolSettingsSchema: z.ZodObject<{
3216
+ color: z.ZodString;
3217
+ strokeOpacity: z.ZodNumber;
3218
+ strokeWidth: z.ZodNumber;
3219
+ strokeStyle: z.ZodEnum<["solid", "dashed", "dotted"]>;
3220
+ distanceMarker: z.ZodBoolean;
3221
+ endCaps: z.ZodBoolean;
3222
+ routingMode: z.ZodNullable<z.ZodEnum<["driving", "cycling", "walking", "flying"]>>;
3223
+ }, "strip", z.ZodTypeAny, {
3224
+ color: string;
3225
+ strokeOpacity: number;
3226
+ strokeWidth: number;
3227
+ strokeStyle: "solid" | "dashed" | "dotted";
3228
+ distanceMarker: boolean;
3229
+ endCaps: boolean;
3230
+ routingMode: "driving" | "cycling" | "walking" | "flying" | null;
3231
+ }, {
3232
+ color: string;
3233
+ strokeOpacity: number;
3234
+ strokeWidth: number;
3235
+ strokeStyle: "solid" | "dashed" | "dotted";
3236
+ distanceMarker: boolean;
3237
+ endCaps: boolean;
3238
+ routingMode: "driving" | "cycling" | "walking" | "flying" | null;
3239
+ }>;
3240
+ interface RouteToolSettings extends zInfer<typeof RouteToolSettingsSchema> {
3241
+ }
3242
+ declare const PolygonToolSettingsSchema: z.ZodObject<{
3243
+ color: z.ZodString;
3244
+ strokeOpacity: z.ZodNumber;
3245
+ strokeWidth: z.ZodNumber;
3246
+ strokeStyle: z.ZodEnum<["solid", "dashed", "dotted"]>;
3247
+ fillOpacity: z.ZodNumber;
3248
+ areaMarker: z.ZodBoolean;
3249
+ }, "strip", z.ZodTypeAny, {
3250
+ color: string;
3251
+ strokeOpacity: number;
3252
+ strokeWidth: number;
3253
+ strokeStyle: "solid" | "dashed" | "dotted";
3254
+ fillOpacity: number;
3255
+ areaMarker: boolean;
3256
+ }, {
3257
+ color: string;
3258
+ strokeOpacity: number;
3259
+ strokeWidth: number;
3260
+ strokeStyle: "solid" | "dashed" | "dotted";
3261
+ fillOpacity: number;
3262
+ areaMarker: boolean;
3263
+ }>;
3264
+ interface PolygonToolSettings extends zInfer<typeof PolygonToolSettingsSchema> {
3265
+ }
3266
+ declare const CircleToolSettingsSchema: z.ZodObject<{
3267
+ color: z.ZodString;
3268
+ strokeOpacity: z.ZodNumber;
3269
+ strokeWidth: z.ZodNumber;
3270
+ strokeStyle: z.ZodEnum<["solid", "dashed", "dotted"]>;
3271
+ fillOpacity: z.ZodNumber;
3272
+ radiusMarker: z.ZodBoolean;
3273
+ }, "strip", z.ZodTypeAny, {
3274
+ color: string;
3275
+ strokeOpacity: number;
3276
+ strokeWidth: number;
3277
+ strokeStyle: "solid" | "dashed" | "dotted";
3278
+ fillOpacity: number;
3279
+ radiusMarker: boolean;
3280
+ }, {
3281
+ color: string;
3282
+ strokeOpacity: number;
3283
+ strokeWidth: number;
3284
+ strokeStyle: "solid" | "dashed" | "dotted";
3285
+ fillOpacity: number;
3286
+ radiusMarker: boolean;
3287
+ }>;
3288
+ interface CircleToolSettings extends zInfer<typeof CircleToolSettingsSchema> {
3289
+ }
3290
+ declare const MarkerToolSettingsSchema: z.ZodObject<{
3291
+ color: z.ZodString;
3292
+ opacity: z.ZodNumber;
3293
+ size: z.ZodNumber;
3294
+ }, "strip", z.ZodTypeAny, {
3295
+ color: string;
3296
+ opacity: number;
3297
+ size: number;
3298
+ }, {
3299
+ color: string;
3300
+ opacity: number;
3301
+ size: number;
3302
+ }>;
3303
+ interface MarkerToolSettings extends zInfer<typeof MarkerToolSettingsSchema> {
3304
+ }
3305
+ declare const HighlighterToolSettingsSchema: z.ZodObject<{
3306
+ color: z.ZodString;
3307
+ opacity: z.ZodNumber;
3308
+ size: z.ZodNumber;
3309
+ }, "strip", z.ZodTypeAny, {
3310
+ color: string;
3311
+ opacity: number;
3312
+ size: number;
3313
+ }, {
3314
+ color: string;
3315
+ opacity: number;
3316
+ size: number;
3317
+ }>;
3318
+ interface HighlighterToolSettings extends zInfer<typeof HighlighterToolSettingsSchema> {
3319
+ }
3320
+ declare const TextToolSettingsSchema: z.ZodObject<{
3321
+ color: z.ZodString;
3322
+ align: z.ZodEnum<["left", "center", "right"]>;
3323
+ style: z.ZodEnum<["italic", "light", "regular", "caps"]>;
3324
+ }, "strip", z.ZodTypeAny, {
3325
+ color: string;
3326
+ align: "left" | "center" | "right";
3327
+ style: "italic" | "light" | "regular" | "caps";
3328
+ }, {
3329
+ color: string;
3330
+ align: "left" | "center" | "right";
3331
+ style: "italic" | "light" | "regular" | "caps";
3332
+ }>;
3333
+ interface TextToolSettings extends zInfer<typeof TextToolSettingsSchema> {
3334
+ }
3335
+ declare const NoteToolSettingsSchema: z.ZodObject<{
3336
+ color: z.ZodString;
3337
+ align: z.ZodEnum<["left", "center", "right"]>;
3338
+ style: z.ZodEnum<["italic", "light", "regular", "caps"]>;
3339
+ }, "strip", z.ZodTypeAny, {
3340
+ color: string;
3341
+ align: "left" | "center" | "right";
3342
+ style: "italic" | "light" | "regular" | "caps";
3343
+ }, {
3344
+ color: string;
3345
+ align: "left" | "center" | "right";
3346
+ style: "italic" | "light" | "regular" | "caps";
3347
+ }>;
3348
+ interface NoteToolSettings extends zInfer<typeof NoteToolSettingsSchema> {
3349
+ }
3350
+ /**
3351
+ * The parameters for changing the settings of each tool.
3352
+ */
3353
+ type InputToolSettings = ({
3354
+ tool: "pin";
3355
+ } & Partial<PinToolSettings>) | ({
3356
+ tool: "line";
3357
+ } & Partial<LineToolSettings>) | ({
3358
+ tool: "route";
3359
+ } & Partial<RouteToolSettings>) | ({
3360
+ tool: "polygon";
3361
+ } & Partial<PolygonToolSettings>) | ({
3362
+ tool: "circle";
3363
+ } & Partial<CircleToolSettings>) | ({
3364
+ tool: "marker";
3365
+ } & Partial<MarkerToolSettings>) | ({
3366
+ tool: "highlighter";
3367
+ } & Partial<HighlighterToolSettings>) | ({
3368
+ tool: "text";
3369
+ } & Partial<TextToolSettings>) | ({
3370
+ tool: "note";
3371
+ } & Partial<NoteToolSettings>);
3372
+ /**
3373
+ * The result of listening for changes to the settings of each tool.
3374
+ */
3375
+ type ToolSettingsChangeEvent = ({
3376
+ tool: "pin";
3377
+ } & PinToolSettings) | ({
3378
+ tool: "line";
3379
+ } & LineToolSettings) | ({
3380
+ tool: "route";
3381
+ } & RouteToolSettings) | ({
3382
+ tool: "polygon";
3383
+ } & PolygonToolSettings) | ({
3384
+ tool: "circle";
3385
+ } & CircleToolSettings) | ({
3386
+ tool: "marker";
3387
+ } & MarkerToolSettings) | ({
3388
+ tool: "highlighter";
3389
+ } & HighlighterToolSettings) | ({
3390
+ tool: "text";
3391
+ } & TextToolSettings) | ({
3392
+ tool: "note";
3393
+ } & NoteToolSettings);
3394
+ type ToolSettingsMap = {
3395
+ pin: PinToolSettings;
3396
+ line: LineToolSettings;
3397
+ route: RouteToolSettings;
3398
+ polygon: PolygonToolSettings;
3399
+ circle: CircleToolSettings;
3400
+ marker: MarkerToolSettings;
3401
+ highlighter: HighlighterToolSettings;
3402
+ text: TextToolSettings;
3403
+ note: NoteToolSettings;
3404
+ };
3405
+ type PlaceFrame = "frame-circle" | "frame-square" | null;
3406
+ type PlaceSymbol = "dot" | "square" | "diamond" | "triangle" | "x" | "plus" | "circle-line" | "circle-slash" | "star" | "heart" | "hexagon" | "octagon" | "pedestrian" | "bicycle" | "wheelchair" | "airport" | "car" | "bus" | "train" | "truck" | "ferry" | "sailboat" | "electric-service" | "gas-service" | "blood-clinic" | "badge" | "traffic-light" | "traffic-cone" | "road-sign-caution" | "person" | "restroom" | "house" | "work" | "letter" | "hotel" | "factory" | "hospital" | "religious-facility" | "school" | "government" | "university" | "bank" | "landmark" | "museum" | "clothing" | "shopping" | "store" | "bar" | "pub" | "cafe" | "food" | "park" | "amusement-park" | "camping-tent" | "cabin" | "picnic" | "water-refill" | "trailhead" | "guidepost" | "viewpoint" | "camera" | "us-football" | "football" | "tennis" | "binoculars" | "swimming" | "zap" | "battery-full" | "battery-half" | "battery-low" | "boom" | "radar" | "wind-turbine" | "solar-panel" | "antenna" | "telephone-pole" | "oil-well" | "oil-barrel" | "railroad-track" | "bridge" | "lighthouse" | "lock-closed" | "lock-open" | "wifi" | "trash" | "recycle" | "tree" | "flower" | "leaf" | "fire" | "mountain" | "snowy-mountain" | "volcano" | "island" | "wave" | "hot-springs" | "water" | "lake" | "ocean" | "animal" | "bird" | "duck" | "dog" | "fish" | "beach" | "wetland" | "sun" | "moon" | "cloud" | "partial-sun" | "rain" | "lightning" | "snowflake" | "wind" | "snow" | "fog" | "sleet" | "hurricane" | "warning" | "parking" | "info" | "circle-exclamation" | "circle-triangle" | "circle-x" | "circle-plus" | (`:${string}:` & {});
3407
+
3408
+ /**
3409
+ * The input type for setting the viewport to a particular center and zoom.
3410
+ *
3411
+ * @group Types
3412
+ */
3413
+ interface ViewportCenterZoom extends zInfer<typeof ViewportCenterZoomSchema> {
3414
+ /**
3415
+ * The center of the viewport in latitude and longitude.
3416
+ */
3417
+ center: LatLng;
3418
+ /**
3419
+ * The zoom level of the viewport.
3420
+ */
3421
+ zoom: FeltZoom;
3422
+ }
3423
+ declare const ViewportCenterZoomSchema: z.ZodObject<{
3424
+ center: z.ZodObject<{
3425
+ latitude: z.ZodNumber;
3426
+ longitude: z.ZodNumber;
3427
+ }, "strip", z.ZodTypeAny, {
3428
+ latitude: number;
3429
+ longitude: number;
3430
+ }, {
3431
+ latitude: number;
3432
+ longitude: number;
3433
+ }>;
3434
+ zoom: z.ZodNumber;
3435
+ }, "strip", z.ZodTypeAny, {
3436
+ zoom: number;
3437
+ center: {
3438
+ latitude: number;
3439
+ longitude: number;
3440
+ };
3441
+ }, {
3442
+ zoom: number;
3443
+ center: {
3444
+ latitude: number;
3445
+ longitude: number;
3446
+ };
3447
+ }>;
3448
+ /**
3449
+ * The current state of the viewport, including the derived bounds.
3450
+ *
3451
+ * @group Types
3452
+ */
3453
+ interface ViewportState {
3454
+ /**
3455
+ * The center of the viewport in latitude and longitude.
3456
+ *
3457
+ * {@link LatLng}
3458
+ */
3459
+ center: LatLng;
3460
+ /**
3461
+ * The zoom level of the viewport.
3462
+ *
3463
+ * {@link FeltZoom}
3464
+ */
3465
+ zoom: FeltZoom;
3466
+ /**
3467
+ * The bounding box of the viewport.
3468
+ *
3469
+ * This is derived, and depends on the center and zoom of the viewport, as
3470
+ * well as its size.
3471
+ *
3472
+ * {@link FeltBoundary}
3473
+ */
3474
+ bounds: FeltBoundary;
3475
+ }
3476
+ /**
3477
+ * The parameters for the `setViewport` method.
3478
+ *
3479
+ * @group Types
3480
+ */
3481
+ interface SetViewportCenterZoomParams extends zInfer<typeof SetViewportCenterZoomParamsSchema> {
3482
+ }
3483
+ declare const SetViewportCenterZoomParamsSchema: z.ZodObject<{
3484
+ center: z.ZodOptional<z.ZodObject<{
3485
+ latitude: z.ZodNumber;
3486
+ longitude: z.ZodNumber;
3487
+ }, "strip", z.ZodTypeAny, {
3488
+ latitude: number;
3489
+ longitude: number;
3490
+ }, {
3491
+ latitude: number;
3492
+ longitude: number;
3493
+ }>>;
3494
+ zoom: z.ZodOptional<z.ZodNumber>;
3495
+ }, "strip", z.ZodTypeAny, {
3496
+ zoom?: number | undefined;
3497
+ center?: {
3498
+ latitude: number;
3499
+ longitude: number;
3500
+ } | undefined;
3501
+ }, {
3502
+ zoom?: number | undefined;
3503
+ center?: {
3504
+ latitude: number;
3505
+ longitude: number;
3506
+ } | undefined;
3507
+ }>;
3508
+ /**
3509
+ * The constraints for the viewport. Used to ensure that the viewport stays
3510
+ * within certain bounds and zoom levels.
3511
+ *
3512
+ * @group Types
3513
+ */
3514
+ interface ViewportConstraints {
3515
+ /**
3516
+ * The minimum zoom level for the viewport.
3517
+ *
3518
+ * {@link FeltZoom}
3519
+ */
3520
+ minZoom: FeltZoom | null;
3521
+ /**
3522
+ * The maximum zoom level for the viewport.
3523
+ *
3524
+ * {@link FeltZoom}
3525
+ */
3526
+ maxZoom: FeltZoom | null;
3527
+ /**
3528
+ * The bounds for the viewport.
3529
+ *
3530
+ * {@link FeltBoundary}
3531
+ */
3532
+ bounds: FeltBoundary | null;
3533
+ }
3534
+ /**
3535
+ * The parameters for the `fitViewportToBounds` method.
3536
+ *
3537
+ * @group Types
3538
+ */
3539
+ interface ViewportFitBoundsParams extends zInfer<typeof ViewportFitBoundsParamsSchema> {
3540
+ /**
3541
+ * The bounds to fit the viewport to.
3542
+ *
3543
+ * {@link FeltBoundary}
3544
+ */
3545
+ bounds: FeltBoundary;
3546
+ }
3547
+ declare const ViewportFitBoundsParamsSchema: z.ZodObject<{
3548
+ bounds: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
3549
+ }, "strip", z.ZodTypeAny, {
3550
+ bounds: [number, number, number, number];
3551
+ }, {
3552
+ bounds: [number, number, number, number];
3553
+ }>;
3554
+
3555
+ export type { HighlighterElementUpdate as $, AggregationMethod as A, MapDetails as B, EntityNode as C, FeatureSelection as D, Element as E, Filters as F, GeoJsonGeometry as G, ConfigurableToolType as H, InputToolSettings as I, ToolSettingsMap as J, ToolSettingsChangeEvent as K, Layer as L, MapInteractionEvent as M, zInfer as N, SortConfig as O, SetViewportCenterZoomParams as P, ViewportConstraints as Q, ViewportFitBoundsParams as R, SetVisibilityRequest as S, ToolType as T, ViewportCenterZoom as U, ViewportState as V, CircleElementCreate as W, CircleElementRead as X, CircleElementUpdate as Y, HighlighterElementCreate as Z, HighlighterElementRead as _, GetElementsConstraint as a, RouteToolSettings as a$, ImageElementCreate as a0, ImageElementRead as a1, ImageElementUpdate as a2, LinkElementRead as a3, MarkerElementCreate as a4, MarkerElementRead as a5, MarkerElementUpdate as a6, NoteElementCreate as a7, NoteElementRead as a8, NoteElementUpdate as a9, ValueConfiguration as aA, ElementGroupNode as aB, ElementNode as aC, FeatureNode as aD, LayerGroupNode as aE, LayerNode as aF, FeltBoundary as aG, FeltZoom as aH, GeoJsonProperties as aI, LatLng as aJ, LineStringGeometry as aK, LngLatTuple as aL, MultiLineStringGeometry as aM, MultiPointGeometry as aN, MultiPolygonGeometry as aO, PointGeometry as aP, PolygonGeometry as aQ, SortDirection as aR, CircleToolSettings as aS, HighlighterToolSettings as aT, LineToolSettings as aU, MarkerToolSettings as aV, NoteToolSettings as aW, PinToolSettings as aX, PlaceFrame as aY, PlaceSymbol as aZ, PolygonToolSettings as a_, PathElementCreate as aa, PathElementRead as ab, PathElementUpdate as ac, PlaceElementCreate as ad, PlaceElementRead as ae, PlaceElementUpdate as af, PolygonElementCreate as ag, PolygonElementRead as ah, PolygonElementUpdate as ai, TextElementCreate as aj, TextElementRead as ak, TextElementUpdate as al, LayerProcessingStatus as am, RasterValue as an, LayerSchemaAttribute as ao, LayerSchemaBooleanAttribute as ap, LayerSchemaCommmonAttribute as aq, LayerSchemaDateAttribute as ar, LayerSchemaDateTimeAttribute as as, LayerSchemaNumericAttribute as at, LayerSchemaTextAttribute as au, FilterExpression as av, FilterLogicGate as aw, FilterTernary as ax, AggregationConfig as ay, MultiAggregationConfig as az, ElementGroup as b, TextToolSettings as b0, UnionToIntersection as b1, PromiseOrNot as b2, GetElementGroupsConstraint as c, ElementChangeCallbackParams as d, ElementGroupChangeCallbackParams as e, ElementCreate as f, ElementUpdate as g, GetLayersConstraint as h, LayerChangeCallbackParams as i, LayerGroup as j, GetLayerGroupsConstraint as k, LayerGroupChangeCallbackParams as l, LegendItemIdentifier as m, LegendItem as n, LegendItemsConstraint as o, LegendItemChangeCallbackParams as p, LayerFilters as q, GetRenderedFeaturesConstraint as r, LayerFeature as s, GeoJsonFeature as t, GetLayerCategoriesParams as u, GetLayerCategoriesGroup as v, GetLayerHistogramParams as w, GetLayerHistogramBin as x, GetLayerCalculationParams as y, LayerSchema as z };