@ogc-maps/storybook-components 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/BasemapSwitcher-BW7lyZ2Y.js +43 -0
  2. package/dist/CollapsibleControl-Dz11KBrL.js +53 -0
  3. package/dist/CoordinateDisplay-PxPmVjpm.js +47 -0
  4. package/dist/LayerPanel-K00X2QUj.js +83 -0
  5. package/dist/Legend-D4cc1JzQ.js +94 -0
  6. package/dist/SearchPanel-CFVQV6JJ.js +135 -0
  7. package/dist/components/BasemapSwitcher/index.d.ts +2 -0
  8. package/dist/components/BasemapSwitcher/index.js +4 -0
  9. package/dist/components/CollapsibleControl/index.d.ts +2 -0
  10. package/dist/components/CollapsibleControl/index.js +4 -0
  11. package/dist/components/CoordinateDisplay/index.d.ts +2 -0
  12. package/dist/components/CoordinateDisplay/index.js +6 -0
  13. package/dist/components/LayerPanel/index.d.ts +2 -0
  14. package/dist/components/LayerPanel/index.js +4 -0
  15. package/dist/components/Legend/index.d.ts +2 -0
  16. package/dist/components/Legend/index.js +4 -0
  17. package/dist/components/SearchPanel/index.d.ts +2 -0
  18. package/dist/components/SearchPanel/index.js +4 -0
  19. package/dist/hooks/index.d.ts +2 -0
  20. package/dist/hooks/index.js +12 -0
  21. package/dist/main.d.ts +2 -0
  22. package/dist/main.js +47 -0
  23. package/dist/ogcApi-BuXSs9i0.js +48 -0
  24. package/dist/schemas/index.d.ts +2 -0
  25. package/dist/schemas/index.js +2821 -0
  26. package/dist/src/components/BasemapSwitcher/BasemapSwitcher.d.ts +9 -0
  27. package/dist/src/components/BasemapSwitcher/BasemapSwitcher.d.ts.map +1 -0
  28. package/dist/src/components/BasemapSwitcher/index.d.ts +3 -0
  29. package/dist/src/components/BasemapSwitcher/index.d.ts.map +1 -0
  30. package/dist/src/components/CollapsibleControl/CollapsibleControl.d.ts +31 -0
  31. package/dist/src/components/CollapsibleControl/CollapsibleControl.d.ts.map +1 -0
  32. package/dist/src/components/CollapsibleControl/index.d.ts +3 -0
  33. package/dist/src/components/CollapsibleControl/index.d.ts.map +1 -0
  34. package/dist/src/components/CoordinateDisplay/CoordinateDisplay.d.ts +26 -0
  35. package/dist/src/components/CoordinateDisplay/CoordinateDisplay.d.ts.map +1 -0
  36. package/dist/src/components/CoordinateDisplay/index.d.ts +2 -0
  37. package/dist/src/components/CoordinateDisplay/index.d.ts.map +1 -0
  38. package/dist/src/components/LayerPanel/LayerPanel.d.ts +10 -0
  39. package/dist/src/components/LayerPanel/LayerPanel.d.ts.map +1 -0
  40. package/dist/src/components/LayerPanel/index.d.ts +3 -0
  41. package/dist/src/components/LayerPanel/index.d.ts.map +1 -0
  42. package/dist/src/components/Legend/Legend.d.ts +8 -0
  43. package/dist/src/components/Legend/Legend.d.ts.map +1 -0
  44. package/dist/src/components/Legend/index.d.ts +3 -0
  45. package/dist/src/components/Legend/index.d.ts.map +1 -0
  46. package/dist/src/components/SearchPanel/SearchPanel.d.ts +11 -0
  47. package/dist/src/components/SearchPanel/SearchPanel.d.ts.map +1 -0
  48. package/dist/src/components/SearchPanel/index.d.ts +3 -0
  49. package/dist/src/components/SearchPanel/index.d.ts.map +1 -0
  50. package/dist/src/components/index.d.ts +13 -0
  51. package/dist/src/components/index.d.ts.map +1 -0
  52. package/dist/src/hooks/index.d.ts +7 -0
  53. package/dist/src/hooks/index.d.ts.map +1 -0
  54. package/dist/src/hooks/useOgcCollections.d.ts +13 -0
  55. package/dist/src/hooks/useOgcCollections.d.ts.map +1 -0
  56. package/dist/src/hooks/useOgcFeatures.d.ts +17 -0
  57. package/dist/src/hooks/useOgcFeatures.d.ts.map +1 -0
  58. package/dist/src/main.d.ts +6 -0
  59. package/dist/src/main.d.ts.map +1 -0
  60. package/dist/src/schemas/config.d.ts +1510 -0
  61. package/dist/src/schemas/config.d.ts.map +1 -0
  62. package/dist/src/schemas/index.d.ts +2 -0
  63. package/dist/src/schemas/index.d.ts.map +1 -0
  64. package/dist/src/types/index.d.ts +23 -0
  65. package/dist/src/types/index.d.ts.map +1 -0
  66. package/dist/src/utils/index.d.ts +2 -0
  67. package/dist/src/utils/index.d.ts.map +1 -0
  68. package/dist/src/utils/ogcApi.d.ts +100 -0
  69. package/dist/src/utils/ogcApi.d.ts.map +1 -0
  70. package/dist/tsconfig.build.tsbuildinfo +1 -0
  71. package/dist/types/index.d.ts +2 -0
  72. package/dist/types/index.js +21 -0
  73. package/dist/useOgcFeatures-CmJxErv4.js +44 -0
  74. package/package.json +86 -0
@@ -0,0 +1,1510 @@
1
+ import { z } from 'zod';
2
+ export declare const ViewConfigSchema: z.ZodObject<{
3
+ latitude: z.ZodNumber;
4
+ longitude: z.ZodNumber;
5
+ zoom: z.ZodNumber;
6
+ pitch: z.ZodDefault<z.ZodNumber>;
7
+ bearing: z.ZodDefault<z.ZodNumber>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ latitude: number;
10
+ longitude: number;
11
+ zoom: number;
12
+ pitch: number;
13
+ bearing: number;
14
+ }, {
15
+ latitude: number;
16
+ longitude: number;
17
+ zoom: number;
18
+ pitch?: number | undefined;
19
+ bearing?: number | undefined;
20
+ }>;
21
+ export declare const OgcApiSourceSchema: z.ZodObject<{
22
+ id: z.ZodString;
23
+ url: z.ZodString;
24
+ label: z.ZodOptional<z.ZodString>;
25
+ tileMatrixSetId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
26
+ }, "strip", z.ZodTypeAny, {
27
+ id: string;
28
+ url: string;
29
+ tileMatrixSetId: string;
30
+ label?: string | undefined;
31
+ }, {
32
+ id: string;
33
+ url: string;
34
+ label?: string | undefined;
35
+ tileMatrixSetId?: string | undefined;
36
+ }>;
37
+ export declare const FillPaintSchema: z.ZodObject<{
38
+ 'fill-color': z.ZodDefault<z.ZodString>;
39
+ 'fill-opacity': z.ZodDefault<z.ZodNumber>;
40
+ 'fill-outline-color': z.ZodOptional<z.ZodString>;
41
+ }, "strip", z.ZodTypeAny, {
42
+ 'fill-color': string;
43
+ 'fill-opacity': number;
44
+ 'fill-outline-color'?: string | undefined;
45
+ }, {
46
+ 'fill-color'?: string | undefined;
47
+ 'fill-opacity'?: number | undefined;
48
+ 'fill-outline-color'?: string | undefined;
49
+ }>;
50
+ export declare const LinePaintSchema: z.ZodObject<{
51
+ 'line-color': z.ZodDefault<z.ZodString>;
52
+ 'line-width': z.ZodDefault<z.ZodNumber>;
53
+ 'line-opacity': z.ZodDefault<z.ZodNumber>;
54
+ 'line-dasharray': z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
55
+ }, "strip", z.ZodTypeAny, {
56
+ 'line-color': string;
57
+ 'line-width': number;
58
+ 'line-opacity': number;
59
+ 'line-dasharray'?: number[] | undefined;
60
+ }, {
61
+ 'line-color'?: string | undefined;
62
+ 'line-width'?: number | undefined;
63
+ 'line-opacity'?: number | undefined;
64
+ 'line-dasharray'?: number[] | undefined;
65
+ }>;
66
+ export declare const CirclePaintSchema: z.ZodObject<{
67
+ 'circle-color': z.ZodDefault<z.ZodString>;
68
+ 'circle-radius': z.ZodDefault<z.ZodNumber>;
69
+ 'circle-opacity': z.ZodDefault<z.ZodNumber>;
70
+ 'circle-stroke-color': z.ZodOptional<z.ZodString>;
71
+ 'circle-stroke-width': z.ZodOptional<z.ZodNumber>;
72
+ }, "strip", z.ZodTypeAny, {
73
+ 'circle-color': string;
74
+ 'circle-radius': number;
75
+ 'circle-opacity': number;
76
+ 'circle-stroke-color'?: string | undefined;
77
+ 'circle-stroke-width'?: number | undefined;
78
+ }, {
79
+ 'circle-color'?: string | undefined;
80
+ 'circle-radius'?: number | undefined;
81
+ 'circle-opacity'?: number | undefined;
82
+ 'circle-stroke-color'?: string | undefined;
83
+ 'circle-stroke-width'?: number | undefined;
84
+ }>;
85
+ export declare const FillStyleSchema: z.ZodObject<{
86
+ type: z.ZodLiteral<"fill">;
87
+ paint: z.ZodObject<{
88
+ 'fill-color': z.ZodDefault<z.ZodString>;
89
+ 'fill-opacity': z.ZodDefault<z.ZodNumber>;
90
+ 'fill-outline-color': z.ZodOptional<z.ZodString>;
91
+ }, "strip", z.ZodTypeAny, {
92
+ 'fill-color': string;
93
+ 'fill-opacity': number;
94
+ 'fill-outline-color'?: string | undefined;
95
+ }, {
96
+ 'fill-color'?: string | undefined;
97
+ 'fill-opacity'?: number | undefined;
98
+ 'fill-outline-color'?: string | undefined;
99
+ }>;
100
+ }, "strip", z.ZodTypeAny, {
101
+ type: "fill";
102
+ paint: {
103
+ 'fill-color': string;
104
+ 'fill-opacity': number;
105
+ 'fill-outline-color'?: string | undefined;
106
+ };
107
+ }, {
108
+ type: "fill";
109
+ paint: {
110
+ 'fill-color'?: string | undefined;
111
+ 'fill-opacity'?: number | undefined;
112
+ 'fill-outline-color'?: string | undefined;
113
+ };
114
+ }>;
115
+ export declare const LineStyleSchema: z.ZodObject<{
116
+ type: z.ZodLiteral<"line">;
117
+ paint: z.ZodObject<{
118
+ 'line-color': z.ZodDefault<z.ZodString>;
119
+ 'line-width': z.ZodDefault<z.ZodNumber>;
120
+ 'line-opacity': z.ZodDefault<z.ZodNumber>;
121
+ 'line-dasharray': z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
122
+ }, "strip", z.ZodTypeAny, {
123
+ 'line-color': string;
124
+ 'line-width': number;
125
+ 'line-opacity': number;
126
+ 'line-dasharray'?: number[] | undefined;
127
+ }, {
128
+ 'line-color'?: string | undefined;
129
+ 'line-width'?: number | undefined;
130
+ 'line-opacity'?: number | undefined;
131
+ 'line-dasharray'?: number[] | undefined;
132
+ }>;
133
+ }, "strip", z.ZodTypeAny, {
134
+ type: "line";
135
+ paint: {
136
+ 'line-color': string;
137
+ 'line-width': number;
138
+ 'line-opacity': number;
139
+ 'line-dasharray'?: number[] | undefined;
140
+ };
141
+ }, {
142
+ type: "line";
143
+ paint: {
144
+ 'line-color'?: string | undefined;
145
+ 'line-width'?: number | undefined;
146
+ 'line-opacity'?: number | undefined;
147
+ 'line-dasharray'?: number[] | undefined;
148
+ };
149
+ }>;
150
+ export declare const CircleStyleSchema: z.ZodObject<{
151
+ type: z.ZodLiteral<"circle">;
152
+ paint: z.ZodObject<{
153
+ 'circle-color': z.ZodDefault<z.ZodString>;
154
+ 'circle-radius': z.ZodDefault<z.ZodNumber>;
155
+ 'circle-opacity': z.ZodDefault<z.ZodNumber>;
156
+ 'circle-stroke-color': z.ZodOptional<z.ZodString>;
157
+ 'circle-stroke-width': z.ZodOptional<z.ZodNumber>;
158
+ }, "strip", z.ZodTypeAny, {
159
+ 'circle-color': string;
160
+ 'circle-radius': number;
161
+ 'circle-opacity': number;
162
+ 'circle-stroke-color'?: string | undefined;
163
+ 'circle-stroke-width'?: number | undefined;
164
+ }, {
165
+ 'circle-color'?: string | undefined;
166
+ 'circle-radius'?: number | undefined;
167
+ 'circle-opacity'?: number | undefined;
168
+ 'circle-stroke-color'?: string | undefined;
169
+ 'circle-stroke-width'?: number | undefined;
170
+ }>;
171
+ }, "strip", z.ZodTypeAny, {
172
+ type: "circle";
173
+ paint: {
174
+ 'circle-color': string;
175
+ 'circle-radius': number;
176
+ 'circle-opacity': number;
177
+ 'circle-stroke-color'?: string | undefined;
178
+ 'circle-stroke-width'?: number | undefined;
179
+ };
180
+ }, {
181
+ type: "circle";
182
+ paint: {
183
+ 'circle-color'?: string | undefined;
184
+ 'circle-radius'?: number | undefined;
185
+ 'circle-opacity'?: number | undefined;
186
+ 'circle-stroke-color'?: string | undefined;
187
+ 'circle-stroke-width'?: number | undefined;
188
+ };
189
+ }>;
190
+ export declare const StyleConfigSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
191
+ type: z.ZodLiteral<"fill">;
192
+ paint: z.ZodObject<{
193
+ 'fill-color': z.ZodDefault<z.ZodString>;
194
+ 'fill-opacity': z.ZodDefault<z.ZodNumber>;
195
+ 'fill-outline-color': z.ZodOptional<z.ZodString>;
196
+ }, "strip", z.ZodTypeAny, {
197
+ 'fill-color': string;
198
+ 'fill-opacity': number;
199
+ 'fill-outline-color'?: string | undefined;
200
+ }, {
201
+ 'fill-color'?: string | undefined;
202
+ 'fill-opacity'?: number | undefined;
203
+ 'fill-outline-color'?: string | undefined;
204
+ }>;
205
+ }, "strip", z.ZodTypeAny, {
206
+ type: "fill";
207
+ paint: {
208
+ 'fill-color': string;
209
+ 'fill-opacity': number;
210
+ 'fill-outline-color'?: string | undefined;
211
+ };
212
+ }, {
213
+ type: "fill";
214
+ paint: {
215
+ 'fill-color'?: string | undefined;
216
+ 'fill-opacity'?: number | undefined;
217
+ 'fill-outline-color'?: string | undefined;
218
+ };
219
+ }>, z.ZodObject<{
220
+ type: z.ZodLiteral<"line">;
221
+ paint: z.ZodObject<{
222
+ 'line-color': z.ZodDefault<z.ZodString>;
223
+ 'line-width': z.ZodDefault<z.ZodNumber>;
224
+ 'line-opacity': z.ZodDefault<z.ZodNumber>;
225
+ 'line-dasharray': z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
226
+ }, "strip", z.ZodTypeAny, {
227
+ 'line-color': string;
228
+ 'line-width': number;
229
+ 'line-opacity': number;
230
+ 'line-dasharray'?: number[] | undefined;
231
+ }, {
232
+ 'line-color'?: string | undefined;
233
+ 'line-width'?: number | undefined;
234
+ 'line-opacity'?: number | undefined;
235
+ 'line-dasharray'?: number[] | undefined;
236
+ }>;
237
+ }, "strip", z.ZodTypeAny, {
238
+ type: "line";
239
+ paint: {
240
+ 'line-color': string;
241
+ 'line-width': number;
242
+ 'line-opacity': number;
243
+ 'line-dasharray'?: number[] | undefined;
244
+ };
245
+ }, {
246
+ type: "line";
247
+ paint: {
248
+ 'line-color'?: string | undefined;
249
+ 'line-width'?: number | undefined;
250
+ 'line-opacity'?: number | undefined;
251
+ 'line-dasharray'?: number[] | undefined;
252
+ };
253
+ }>, z.ZodObject<{
254
+ type: z.ZodLiteral<"circle">;
255
+ paint: z.ZodObject<{
256
+ 'circle-color': z.ZodDefault<z.ZodString>;
257
+ 'circle-radius': z.ZodDefault<z.ZodNumber>;
258
+ 'circle-opacity': z.ZodDefault<z.ZodNumber>;
259
+ 'circle-stroke-color': z.ZodOptional<z.ZodString>;
260
+ 'circle-stroke-width': z.ZodOptional<z.ZodNumber>;
261
+ }, "strip", z.ZodTypeAny, {
262
+ 'circle-color': string;
263
+ 'circle-radius': number;
264
+ 'circle-opacity': number;
265
+ 'circle-stroke-color'?: string | undefined;
266
+ 'circle-stroke-width'?: number | undefined;
267
+ }, {
268
+ 'circle-color'?: string | undefined;
269
+ 'circle-radius'?: number | undefined;
270
+ 'circle-opacity'?: number | undefined;
271
+ 'circle-stroke-color'?: string | undefined;
272
+ 'circle-stroke-width'?: number | undefined;
273
+ }>;
274
+ }, "strip", z.ZodTypeAny, {
275
+ type: "circle";
276
+ paint: {
277
+ 'circle-color': string;
278
+ 'circle-radius': number;
279
+ 'circle-opacity': number;
280
+ 'circle-stroke-color'?: string | undefined;
281
+ 'circle-stroke-width'?: number | undefined;
282
+ };
283
+ }, {
284
+ type: "circle";
285
+ paint: {
286
+ 'circle-color'?: string | undefined;
287
+ 'circle-radius'?: number | undefined;
288
+ 'circle-opacity'?: number | undefined;
289
+ 'circle-stroke-color'?: string | undefined;
290
+ 'circle-stroke-width'?: number | undefined;
291
+ };
292
+ }>]>;
293
+ export declare const LegendEntrySchema: z.ZodObject<{
294
+ label: z.ZodString;
295
+ color: z.ZodString;
296
+ shape: z.ZodOptional<z.ZodEnum<["circle", "line", "square"]>>;
297
+ }, "strip", z.ZodTypeAny, {
298
+ label: string;
299
+ color: string;
300
+ shape?: "line" | "circle" | "square" | undefined;
301
+ }, {
302
+ label: string;
303
+ color: string;
304
+ shape?: "line" | "circle" | "square" | undefined;
305
+ }>;
306
+ export declare const LegendConfigSchema: z.ZodObject<{
307
+ entries: z.ZodArray<z.ZodObject<{
308
+ label: z.ZodString;
309
+ color: z.ZodString;
310
+ shape: z.ZodOptional<z.ZodEnum<["circle", "line", "square"]>>;
311
+ }, "strip", z.ZodTypeAny, {
312
+ label: string;
313
+ color: string;
314
+ shape?: "line" | "circle" | "square" | undefined;
315
+ }, {
316
+ label: string;
317
+ color: string;
318
+ shape?: "line" | "circle" | "square" | undefined;
319
+ }>, "many">;
320
+ }, "strip", z.ZodTypeAny, {
321
+ entries: {
322
+ label: string;
323
+ color: string;
324
+ shape?: "line" | "circle" | "square" | undefined;
325
+ }[];
326
+ }, {
327
+ entries: {
328
+ label: string;
329
+ color: string;
330
+ shape?: "line" | "circle" | "square" | undefined;
331
+ }[];
332
+ }>;
333
+ export declare const SearchFieldSchema: z.ZodObject<{
334
+ property: z.ZodString;
335
+ label: z.ZodString;
336
+ type: z.ZodEnum<["text", "number", "select", "datetime"]>;
337
+ options: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
338
+ placeholder: z.ZodOptional<z.ZodString>;
339
+ }, "strip", z.ZodTypeAny, {
340
+ type: "number" | "text" | "select" | "datetime";
341
+ label: string;
342
+ property: string;
343
+ options?: string[] | undefined;
344
+ placeholder?: string | undefined;
345
+ }, {
346
+ type: "number" | "text" | "select" | "datetime";
347
+ label: string;
348
+ property: string;
349
+ options?: string[] | undefined;
350
+ placeholder?: string | undefined;
351
+ }>;
352
+ export declare const SearchConfigSchema: z.ZodObject<{
353
+ fields: z.ZodArray<z.ZodObject<{
354
+ property: z.ZodString;
355
+ label: z.ZodString;
356
+ type: z.ZodEnum<["text", "number", "select", "datetime"]>;
357
+ options: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
358
+ placeholder: z.ZodOptional<z.ZodString>;
359
+ }, "strip", z.ZodTypeAny, {
360
+ type: "number" | "text" | "select" | "datetime";
361
+ label: string;
362
+ property: string;
363
+ options?: string[] | undefined;
364
+ placeholder?: string | undefined;
365
+ }, {
366
+ type: "number" | "text" | "select" | "datetime";
367
+ label: string;
368
+ property: string;
369
+ options?: string[] | undefined;
370
+ placeholder?: string | undefined;
371
+ }>, "many">;
372
+ }, "strip", z.ZodTypeAny, {
373
+ fields: {
374
+ type: "number" | "text" | "select" | "datetime";
375
+ label: string;
376
+ property: string;
377
+ options?: string[] | undefined;
378
+ placeholder?: string | undefined;
379
+ }[];
380
+ }, {
381
+ fields: {
382
+ type: "number" | "text" | "select" | "datetime";
383
+ label: string;
384
+ property: string;
385
+ options?: string[] | undefined;
386
+ placeholder?: string | undefined;
387
+ }[];
388
+ }>;
389
+ export declare const FilterConfigSchema: z.ZodObject<{
390
+ properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>>;
391
+ bbox: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
392
+ datetime: z.ZodOptional<z.ZodString>;
393
+ }, "strip", z.ZodTypeAny, {
394
+ datetime?: string | undefined;
395
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
396
+ bbox?: [number, number, number, number] | undefined;
397
+ }, {
398
+ datetime?: string | undefined;
399
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
400
+ bbox?: [number, number, number, number] | undefined;
401
+ }>;
402
+ export declare const LayerConfigSchema: z.ZodObject<{
403
+ id: z.ZodString;
404
+ sourceId: z.ZodString;
405
+ collection: z.ZodString;
406
+ label: z.ZodString;
407
+ visible: z.ZodDefault<z.ZodBoolean>;
408
+ dataMode: z.ZodEnum<["vector-tiles", "geojson"]>;
409
+ style: z.ZodOptional<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
410
+ type: z.ZodLiteral<"fill">;
411
+ paint: z.ZodObject<{
412
+ 'fill-color': z.ZodDefault<z.ZodString>;
413
+ 'fill-opacity': z.ZodDefault<z.ZodNumber>;
414
+ 'fill-outline-color': z.ZodOptional<z.ZodString>;
415
+ }, "strip", z.ZodTypeAny, {
416
+ 'fill-color': string;
417
+ 'fill-opacity': number;
418
+ 'fill-outline-color'?: string | undefined;
419
+ }, {
420
+ 'fill-color'?: string | undefined;
421
+ 'fill-opacity'?: number | undefined;
422
+ 'fill-outline-color'?: string | undefined;
423
+ }>;
424
+ }, "strip", z.ZodTypeAny, {
425
+ type: "fill";
426
+ paint: {
427
+ 'fill-color': string;
428
+ 'fill-opacity': number;
429
+ 'fill-outline-color'?: string | undefined;
430
+ };
431
+ }, {
432
+ type: "fill";
433
+ paint: {
434
+ 'fill-color'?: string | undefined;
435
+ 'fill-opacity'?: number | undefined;
436
+ 'fill-outline-color'?: string | undefined;
437
+ };
438
+ }>, z.ZodObject<{
439
+ type: z.ZodLiteral<"line">;
440
+ paint: z.ZodObject<{
441
+ 'line-color': z.ZodDefault<z.ZodString>;
442
+ 'line-width': z.ZodDefault<z.ZodNumber>;
443
+ 'line-opacity': z.ZodDefault<z.ZodNumber>;
444
+ 'line-dasharray': z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
445
+ }, "strip", z.ZodTypeAny, {
446
+ 'line-color': string;
447
+ 'line-width': number;
448
+ 'line-opacity': number;
449
+ 'line-dasharray'?: number[] | undefined;
450
+ }, {
451
+ 'line-color'?: string | undefined;
452
+ 'line-width'?: number | undefined;
453
+ 'line-opacity'?: number | undefined;
454
+ 'line-dasharray'?: number[] | undefined;
455
+ }>;
456
+ }, "strip", z.ZodTypeAny, {
457
+ type: "line";
458
+ paint: {
459
+ 'line-color': string;
460
+ 'line-width': number;
461
+ 'line-opacity': number;
462
+ 'line-dasharray'?: number[] | undefined;
463
+ };
464
+ }, {
465
+ type: "line";
466
+ paint: {
467
+ 'line-color'?: string | undefined;
468
+ 'line-width'?: number | undefined;
469
+ 'line-opacity'?: number | undefined;
470
+ 'line-dasharray'?: number[] | undefined;
471
+ };
472
+ }>, z.ZodObject<{
473
+ type: z.ZodLiteral<"circle">;
474
+ paint: z.ZodObject<{
475
+ 'circle-color': z.ZodDefault<z.ZodString>;
476
+ 'circle-radius': z.ZodDefault<z.ZodNumber>;
477
+ 'circle-opacity': z.ZodDefault<z.ZodNumber>;
478
+ 'circle-stroke-color': z.ZodOptional<z.ZodString>;
479
+ 'circle-stroke-width': z.ZodOptional<z.ZodNumber>;
480
+ }, "strip", z.ZodTypeAny, {
481
+ 'circle-color': string;
482
+ 'circle-radius': number;
483
+ 'circle-opacity': number;
484
+ 'circle-stroke-color'?: string | undefined;
485
+ 'circle-stroke-width'?: number | undefined;
486
+ }, {
487
+ 'circle-color'?: string | undefined;
488
+ 'circle-radius'?: number | undefined;
489
+ 'circle-opacity'?: number | undefined;
490
+ 'circle-stroke-color'?: string | undefined;
491
+ 'circle-stroke-width'?: number | undefined;
492
+ }>;
493
+ }, "strip", z.ZodTypeAny, {
494
+ type: "circle";
495
+ paint: {
496
+ 'circle-color': string;
497
+ 'circle-radius': number;
498
+ 'circle-opacity': number;
499
+ 'circle-stroke-color'?: string | undefined;
500
+ 'circle-stroke-width'?: number | undefined;
501
+ };
502
+ }, {
503
+ type: "circle";
504
+ paint: {
505
+ 'circle-color'?: string | undefined;
506
+ 'circle-radius'?: number | undefined;
507
+ 'circle-opacity'?: number | undefined;
508
+ 'circle-stroke-color'?: string | undefined;
509
+ 'circle-stroke-width'?: number | undefined;
510
+ };
511
+ }>]>>;
512
+ legend: z.ZodOptional<z.ZodObject<{
513
+ entries: z.ZodArray<z.ZodObject<{
514
+ label: z.ZodString;
515
+ color: z.ZodString;
516
+ shape: z.ZodOptional<z.ZodEnum<["circle", "line", "square"]>>;
517
+ }, "strip", z.ZodTypeAny, {
518
+ label: string;
519
+ color: string;
520
+ shape?: "line" | "circle" | "square" | undefined;
521
+ }, {
522
+ label: string;
523
+ color: string;
524
+ shape?: "line" | "circle" | "square" | undefined;
525
+ }>, "many">;
526
+ }, "strip", z.ZodTypeAny, {
527
+ entries: {
528
+ label: string;
529
+ color: string;
530
+ shape?: "line" | "circle" | "square" | undefined;
531
+ }[];
532
+ }, {
533
+ entries: {
534
+ label: string;
535
+ color: string;
536
+ shape?: "line" | "circle" | "square" | undefined;
537
+ }[];
538
+ }>>;
539
+ filters: z.ZodOptional<z.ZodObject<{
540
+ properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>>;
541
+ bbox: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
542
+ datetime: z.ZodOptional<z.ZodString>;
543
+ }, "strip", z.ZodTypeAny, {
544
+ datetime?: string | undefined;
545
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
546
+ bbox?: [number, number, number, number] | undefined;
547
+ }, {
548
+ datetime?: string | undefined;
549
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
550
+ bbox?: [number, number, number, number] | undefined;
551
+ }>>;
552
+ search: z.ZodOptional<z.ZodObject<{
553
+ fields: z.ZodArray<z.ZodObject<{
554
+ property: z.ZodString;
555
+ label: z.ZodString;
556
+ type: z.ZodEnum<["text", "number", "select", "datetime"]>;
557
+ options: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
558
+ placeholder: z.ZodOptional<z.ZodString>;
559
+ }, "strip", z.ZodTypeAny, {
560
+ type: "number" | "text" | "select" | "datetime";
561
+ label: string;
562
+ property: string;
563
+ options?: string[] | undefined;
564
+ placeholder?: string | undefined;
565
+ }, {
566
+ type: "number" | "text" | "select" | "datetime";
567
+ label: string;
568
+ property: string;
569
+ options?: string[] | undefined;
570
+ placeholder?: string | undefined;
571
+ }>, "many">;
572
+ }, "strip", z.ZodTypeAny, {
573
+ fields: {
574
+ type: "number" | "text" | "select" | "datetime";
575
+ label: string;
576
+ property: string;
577
+ options?: string[] | undefined;
578
+ placeholder?: string | undefined;
579
+ }[];
580
+ }, {
581
+ fields: {
582
+ type: "number" | "text" | "select" | "datetime";
583
+ label: string;
584
+ property: string;
585
+ options?: string[] | undefined;
586
+ placeholder?: string | undefined;
587
+ }[];
588
+ }>>;
589
+ }, "strip", z.ZodTypeAny, {
590
+ id: string;
591
+ label: string;
592
+ sourceId: string;
593
+ collection: string;
594
+ visible: boolean;
595
+ dataMode: "vector-tiles" | "geojson";
596
+ style?: {
597
+ type: "fill";
598
+ paint: {
599
+ 'fill-color': string;
600
+ 'fill-opacity': number;
601
+ 'fill-outline-color'?: string | undefined;
602
+ };
603
+ } | {
604
+ type: "line";
605
+ paint: {
606
+ 'line-color': string;
607
+ 'line-width': number;
608
+ 'line-opacity': number;
609
+ 'line-dasharray'?: number[] | undefined;
610
+ };
611
+ } | {
612
+ type: "circle";
613
+ paint: {
614
+ 'circle-color': string;
615
+ 'circle-radius': number;
616
+ 'circle-opacity': number;
617
+ 'circle-stroke-color'?: string | undefined;
618
+ 'circle-stroke-width'?: number | undefined;
619
+ };
620
+ } | undefined;
621
+ legend?: {
622
+ entries: {
623
+ label: string;
624
+ color: string;
625
+ shape?: "line" | "circle" | "square" | undefined;
626
+ }[];
627
+ } | undefined;
628
+ filters?: {
629
+ datetime?: string | undefined;
630
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
631
+ bbox?: [number, number, number, number] | undefined;
632
+ } | undefined;
633
+ search?: {
634
+ fields: {
635
+ type: "number" | "text" | "select" | "datetime";
636
+ label: string;
637
+ property: string;
638
+ options?: string[] | undefined;
639
+ placeholder?: string | undefined;
640
+ }[];
641
+ } | undefined;
642
+ }, {
643
+ id: string;
644
+ label: string;
645
+ sourceId: string;
646
+ collection: string;
647
+ dataMode: "vector-tiles" | "geojson";
648
+ visible?: boolean | undefined;
649
+ style?: {
650
+ type: "fill";
651
+ paint: {
652
+ 'fill-color'?: string | undefined;
653
+ 'fill-opacity'?: number | undefined;
654
+ 'fill-outline-color'?: string | undefined;
655
+ };
656
+ } | {
657
+ type: "line";
658
+ paint: {
659
+ 'line-color'?: string | undefined;
660
+ 'line-width'?: number | undefined;
661
+ 'line-opacity'?: number | undefined;
662
+ 'line-dasharray'?: number[] | undefined;
663
+ };
664
+ } | {
665
+ type: "circle";
666
+ paint: {
667
+ 'circle-color'?: string | undefined;
668
+ 'circle-radius'?: number | undefined;
669
+ 'circle-opacity'?: number | undefined;
670
+ 'circle-stroke-color'?: string | undefined;
671
+ 'circle-stroke-width'?: number | undefined;
672
+ };
673
+ } | undefined;
674
+ legend?: {
675
+ entries: {
676
+ label: string;
677
+ color: string;
678
+ shape?: "line" | "circle" | "square" | undefined;
679
+ }[];
680
+ } | undefined;
681
+ filters?: {
682
+ datetime?: string | undefined;
683
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
684
+ bbox?: [number, number, number, number] | undefined;
685
+ } | undefined;
686
+ search?: {
687
+ fields: {
688
+ type: "number" | "text" | "select" | "datetime";
689
+ label: string;
690
+ property: string;
691
+ options?: string[] | undefined;
692
+ placeholder?: string | undefined;
693
+ }[];
694
+ } | undefined;
695
+ }>;
696
+ export declare const BasemapConfigSchema: z.ZodObject<{
697
+ id: z.ZodString;
698
+ label: z.ZodString;
699
+ url: z.ZodString;
700
+ thumbnail: z.ZodOptional<z.ZodString>;
701
+ }, "strip", z.ZodTypeAny, {
702
+ id: string;
703
+ url: string;
704
+ label: string;
705
+ thumbnail?: string | undefined;
706
+ }, {
707
+ id: string;
708
+ url: string;
709
+ label: string;
710
+ thumbnail?: string | undefined;
711
+ }>;
712
+ export declare const UIConfigSchema: z.ZodObject<{
713
+ showLayerPanel: z.ZodDefault<z.ZodBoolean>;
714
+ showLegend: z.ZodDefault<z.ZodBoolean>;
715
+ showBasemapSwitcher: z.ZodDefault<z.ZodBoolean>;
716
+ showSearchPanel: z.ZodDefault<z.ZodBoolean>;
717
+ showCoordinateDisplay: z.ZodDefault<z.ZodBoolean>;
718
+ }, "strip", z.ZodTypeAny, {
719
+ showLayerPanel: boolean;
720
+ showLegend: boolean;
721
+ showBasemapSwitcher: boolean;
722
+ showSearchPanel: boolean;
723
+ showCoordinateDisplay: boolean;
724
+ }, {
725
+ showLayerPanel?: boolean | undefined;
726
+ showLegend?: boolean | undefined;
727
+ showBasemapSwitcher?: boolean | undefined;
728
+ showSearchPanel?: boolean | undefined;
729
+ showCoordinateDisplay?: boolean | undefined;
730
+ }>;
731
+ export declare const MapConfigSchema: z.ZodObject<{
732
+ sources: z.ZodArray<z.ZodObject<{
733
+ id: z.ZodString;
734
+ url: z.ZodString;
735
+ label: z.ZodOptional<z.ZodString>;
736
+ tileMatrixSetId: z.ZodDefault<z.ZodOptional<z.ZodString>>;
737
+ }, "strip", z.ZodTypeAny, {
738
+ id: string;
739
+ url: string;
740
+ tileMatrixSetId: string;
741
+ label?: string | undefined;
742
+ }, {
743
+ id: string;
744
+ url: string;
745
+ label?: string | undefined;
746
+ tileMatrixSetId?: string | undefined;
747
+ }>, "many">;
748
+ layers: z.ZodArray<z.ZodObject<{
749
+ id: z.ZodString;
750
+ sourceId: z.ZodString;
751
+ collection: z.ZodString;
752
+ label: z.ZodString;
753
+ visible: z.ZodDefault<z.ZodBoolean>;
754
+ dataMode: z.ZodEnum<["vector-tiles", "geojson"]>;
755
+ style: z.ZodOptional<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
756
+ type: z.ZodLiteral<"fill">;
757
+ paint: z.ZodObject<{
758
+ 'fill-color': z.ZodDefault<z.ZodString>;
759
+ 'fill-opacity': z.ZodDefault<z.ZodNumber>;
760
+ 'fill-outline-color': z.ZodOptional<z.ZodString>;
761
+ }, "strip", z.ZodTypeAny, {
762
+ 'fill-color': string;
763
+ 'fill-opacity': number;
764
+ 'fill-outline-color'?: string | undefined;
765
+ }, {
766
+ 'fill-color'?: string | undefined;
767
+ 'fill-opacity'?: number | undefined;
768
+ 'fill-outline-color'?: string | undefined;
769
+ }>;
770
+ }, "strip", z.ZodTypeAny, {
771
+ type: "fill";
772
+ paint: {
773
+ 'fill-color': string;
774
+ 'fill-opacity': number;
775
+ 'fill-outline-color'?: string | undefined;
776
+ };
777
+ }, {
778
+ type: "fill";
779
+ paint: {
780
+ 'fill-color'?: string | undefined;
781
+ 'fill-opacity'?: number | undefined;
782
+ 'fill-outline-color'?: string | undefined;
783
+ };
784
+ }>, z.ZodObject<{
785
+ type: z.ZodLiteral<"line">;
786
+ paint: z.ZodObject<{
787
+ 'line-color': z.ZodDefault<z.ZodString>;
788
+ 'line-width': z.ZodDefault<z.ZodNumber>;
789
+ 'line-opacity': z.ZodDefault<z.ZodNumber>;
790
+ 'line-dasharray': z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>;
791
+ }, "strip", z.ZodTypeAny, {
792
+ 'line-color': string;
793
+ 'line-width': number;
794
+ 'line-opacity': number;
795
+ 'line-dasharray'?: number[] | undefined;
796
+ }, {
797
+ 'line-color'?: string | undefined;
798
+ 'line-width'?: number | undefined;
799
+ 'line-opacity'?: number | undefined;
800
+ 'line-dasharray'?: number[] | undefined;
801
+ }>;
802
+ }, "strip", z.ZodTypeAny, {
803
+ type: "line";
804
+ paint: {
805
+ 'line-color': string;
806
+ 'line-width': number;
807
+ 'line-opacity': number;
808
+ 'line-dasharray'?: number[] | undefined;
809
+ };
810
+ }, {
811
+ type: "line";
812
+ paint: {
813
+ 'line-color'?: string | undefined;
814
+ 'line-width'?: number | undefined;
815
+ 'line-opacity'?: number | undefined;
816
+ 'line-dasharray'?: number[] | undefined;
817
+ };
818
+ }>, z.ZodObject<{
819
+ type: z.ZodLiteral<"circle">;
820
+ paint: z.ZodObject<{
821
+ 'circle-color': z.ZodDefault<z.ZodString>;
822
+ 'circle-radius': z.ZodDefault<z.ZodNumber>;
823
+ 'circle-opacity': z.ZodDefault<z.ZodNumber>;
824
+ 'circle-stroke-color': z.ZodOptional<z.ZodString>;
825
+ 'circle-stroke-width': z.ZodOptional<z.ZodNumber>;
826
+ }, "strip", z.ZodTypeAny, {
827
+ 'circle-color': string;
828
+ 'circle-radius': number;
829
+ 'circle-opacity': number;
830
+ 'circle-stroke-color'?: string | undefined;
831
+ 'circle-stroke-width'?: number | undefined;
832
+ }, {
833
+ 'circle-color'?: string | undefined;
834
+ 'circle-radius'?: number | undefined;
835
+ 'circle-opacity'?: number | undefined;
836
+ 'circle-stroke-color'?: string | undefined;
837
+ 'circle-stroke-width'?: number | undefined;
838
+ }>;
839
+ }, "strip", z.ZodTypeAny, {
840
+ type: "circle";
841
+ paint: {
842
+ 'circle-color': string;
843
+ 'circle-radius': number;
844
+ 'circle-opacity': number;
845
+ 'circle-stroke-color'?: string | undefined;
846
+ 'circle-stroke-width'?: number | undefined;
847
+ };
848
+ }, {
849
+ type: "circle";
850
+ paint: {
851
+ 'circle-color'?: string | undefined;
852
+ 'circle-radius'?: number | undefined;
853
+ 'circle-opacity'?: number | undefined;
854
+ 'circle-stroke-color'?: string | undefined;
855
+ 'circle-stroke-width'?: number | undefined;
856
+ };
857
+ }>]>>;
858
+ legend: z.ZodOptional<z.ZodObject<{
859
+ entries: z.ZodArray<z.ZodObject<{
860
+ label: z.ZodString;
861
+ color: z.ZodString;
862
+ shape: z.ZodOptional<z.ZodEnum<["circle", "line", "square"]>>;
863
+ }, "strip", z.ZodTypeAny, {
864
+ label: string;
865
+ color: string;
866
+ shape?: "line" | "circle" | "square" | undefined;
867
+ }, {
868
+ label: string;
869
+ color: string;
870
+ shape?: "line" | "circle" | "square" | undefined;
871
+ }>, "many">;
872
+ }, "strip", z.ZodTypeAny, {
873
+ entries: {
874
+ label: string;
875
+ color: string;
876
+ shape?: "line" | "circle" | "square" | undefined;
877
+ }[];
878
+ }, {
879
+ entries: {
880
+ label: string;
881
+ color: string;
882
+ shape?: "line" | "circle" | "square" | undefined;
883
+ }[];
884
+ }>>;
885
+ filters: z.ZodOptional<z.ZodObject<{
886
+ properties: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodArray<z.ZodString, "many">]>>>;
887
+ bbox: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
888
+ datetime: z.ZodOptional<z.ZodString>;
889
+ }, "strip", z.ZodTypeAny, {
890
+ datetime?: string | undefined;
891
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
892
+ bbox?: [number, number, number, number] | undefined;
893
+ }, {
894
+ datetime?: string | undefined;
895
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
896
+ bbox?: [number, number, number, number] | undefined;
897
+ }>>;
898
+ search: z.ZodOptional<z.ZodObject<{
899
+ fields: z.ZodArray<z.ZodObject<{
900
+ property: z.ZodString;
901
+ label: z.ZodString;
902
+ type: z.ZodEnum<["text", "number", "select", "datetime"]>;
903
+ options: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
904
+ placeholder: z.ZodOptional<z.ZodString>;
905
+ }, "strip", z.ZodTypeAny, {
906
+ type: "number" | "text" | "select" | "datetime";
907
+ label: string;
908
+ property: string;
909
+ options?: string[] | undefined;
910
+ placeholder?: string | undefined;
911
+ }, {
912
+ type: "number" | "text" | "select" | "datetime";
913
+ label: string;
914
+ property: string;
915
+ options?: string[] | undefined;
916
+ placeholder?: string | undefined;
917
+ }>, "many">;
918
+ }, "strip", z.ZodTypeAny, {
919
+ fields: {
920
+ type: "number" | "text" | "select" | "datetime";
921
+ label: string;
922
+ property: string;
923
+ options?: string[] | undefined;
924
+ placeholder?: string | undefined;
925
+ }[];
926
+ }, {
927
+ fields: {
928
+ type: "number" | "text" | "select" | "datetime";
929
+ label: string;
930
+ property: string;
931
+ options?: string[] | undefined;
932
+ placeholder?: string | undefined;
933
+ }[];
934
+ }>>;
935
+ }, "strip", z.ZodTypeAny, {
936
+ id: string;
937
+ label: string;
938
+ sourceId: string;
939
+ collection: string;
940
+ visible: boolean;
941
+ dataMode: "vector-tiles" | "geojson";
942
+ style?: {
943
+ type: "fill";
944
+ paint: {
945
+ 'fill-color': string;
946
+ 'fill-opacity': number;
947
+ 'fill-outline-color'?: string | undefined;
948
+ };
949
+ } | {
950
+ type: "line";
951
+ paint: {
952
+ 'line-color': string;
953
+ 'line-width': number;
954
+ 'line-opacity': number;
955
+ 'line-dasharray'?: number[] | undefined;
956
+ };
957
+ } | {
958
+ type: "circle";
959
+ paint: {
960
+ 'circle-color': string;
961
+ 'circle-radius': number;
962
+ 'circle-opacity': number;
963
+ 'circle-stroke-color'?: string | undefined;
964
+ 'circle-stroke-width'?: number | undefined;
965
+ };
966
+ } | undefined;
967
+ legend?: {
968
+ entries: {
969
+ label: string;
970
+ color: string;
971
+ shape?: "line" | "circle" | "square" | undefined;
972
+ }[];
973
+ } | undefined;
974
+ filters?: {
975
+ datetime?: string | undefined;
976
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
977
+ bbox?: [number, number, number, number] | undefined;
978
+ } | undefined;
979
+ search?: {
980
+ fields: {
981
+ type: "number" | "text" | "select" | "datetime";
982
+ label: string;
983
+ property: string;
984
+ options?: string[] | undefined;
985
+ placeholder?: string | undefined;
986
+ }[];
987
+ } | undefined;
988
+ }, {
989
+ id: string;
990
+ label: string;
991
+ sourceId: string;
992
+ collection: string;
993
+ dataMode: "vector-tiles" | "geojson";
994
+ visible?: boolean | undefined;
995
+ style?: {
996
+ type: "fill";
997
+ paint: {
998
+ 'fill-color'?: string | undefined;
999
+ 'fill-opacity'?: number | undefined;
1000
+ 'fill-outline-color'?: string | undefined;
1001
+ };
1002
+ } | {
1003
+ type: "line";
1004
+ paint: {
1005
+ 'line-color'?: string | undefined;
1006
+ 'line-width'?: number | undefined;
1007
+ 'line-opacity'?: number | undefined;
1008
+ 'line-dasharray'?: number[] | undefined;
1009
+ };
1010
+ } | {
1011
+ type: "circle";
1012
+ paint: {
1013
+ 'circle-color'?: string | undefined;
1014
+ 'circle-radius'?: number | undefined;
1015
+ 'circle-opacity'?: number | undefined;
1016
+ 'circle-stroke-color'?: string | undefined;
1017
+ 'circle-stroke-width'?: number | undefined;
1018
+ };
1019
+ } | undefined;
1020
+ legend?: {
1021
+ entries: {
1022
+ label: string;
1023
+ color: string;
1024
+ shape?: "line" | "circle" | "square" | undefined;
1025
+ }[];
1026
+ } | undefined;
1027
+ filters?: {
1028
+ datetime?: string | undefined;
1029
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
1030
+ bbox?: [number, number, number, number] | undefined;
1031
+ } | undefined;
1032
+ search?: {
1033
+ fields: {
1034
+ type: "number" | "text" | "select" | "datetime";
1035
+ label: string;
1036
+ property: string;
1037
+ options?: string[] | undefined;
1038
+ placeholder?: string | undefined;
1039
+ }[];
1040
+ } | undefined;
1041
+ }>, "many">;
1042
+ basemaps: z.ZodArray<z.ZodObject<{
1043
+ id: z.ZodString;
1044
+ label: z.ZodString;
1045
+ url: z.ZodString;
1046
+ thumbnail: z.ZodOptional<z.ZodString>;
1047
+ }, "strip", z.ZodTypeAny, {
1048
+ id: string;
1049
+ url: string;
1050
+ label: string;
1051
+ thumbnail?: string | undefined;
1052
+ }, {
1053
+ id: string;
1054
+ url: string;
1055
+ label: string;
1056
+ thumbnail?: string | undefined;
1057
+ }>, "many">;
1058
+ ui: z.ZodDefault<z.ZodObject<{
1059
+ showLayerPanel: z.ZodDefault<z.ZodBoolean>;
1060
+ showLegend: z.ZodDefault<z.ZodBoolean>;
1061
+ showBasemapSwitcher: z.ZodDefault<z.ZodBoolean>;
1062
+ showSearchPanel: z.ZodDefault<z.ZodBoolean>;
1063
+ showCoordinateDisplay: z.ZodDefault<z.ZodBoolean>;
1064
+ }, "strip", z.ZodTypeAny, {
1065
+ showLayerPanel: boolean;
1066
+ showLegend: boolean;
1067
+ showBasemapSwitcher: boolean;
1068
+ showSearchPanel: boolean;
1069
+ showCoordinateDisplay: boolean;
1070
+ }, {
1071
+ showLayerPanel?: boolean | undefined;
1072
+ showLegend?: boolean | undefined;
1073
+ showBasemapSwitcher?: boolean | undefined;
1074
+ showSearchPanel?: boolean | undefined;
1075
+ showCoordinateDisplay?: boolean | undefined;
1076
+ }>>;
1077
+ initialView: z.ZodObject<{
1078
+ latitude: z.ZodNumber;
1079
+ longitude: z.ZodNumber;
1080
+ zoom: z.ZodNumber;
1081
+ pitch: z.ZodDefault<z.ZodNumber>;
1082
+ bearing: z.ZodDefault<z.ZodNumber>;
1083
+ }, "strip", z.ZodTypeAny, {
1084
+ latitude: number;
1085
+ longitude: number;
1086
+ zoom: number;
1087
+ pitch: number;
1088
+ bearing: number;
1089
+ }, {
1090
+ latitude: number;
1091
+ longitude: number;
1092
+ zoom: number;
1093
+ pitch?: number | undefined;
1094
+ bearing?: number | undefined;
1095
+ }>;
1096
+ }, "strip", z.ZodTypeAny, {
1097
+ sources: {
1098
+ id: string;
1099
+ url: string;
1100
+ tileMatrixSetId: string;
1101
+ label?: string | undefined;
1102
+ }[];
1103
+ layers: {
1104
+ id: string;
1105
+ label: string;
1106
+ sourceId: string;
1107
+ collection: string;
1108
+ visible: boolean;
1109
+ dataMode: "vector-tiles" | "geojson";
1110
+ style?: {
1111
+ type: "fill";
1112
+ paint: {
1113
+ 'fill-color': string;
1114
+ 'fill-opacity': number;
1115
+ 'fill-outline-color'?: string | undefined;
1116
+ };
1117
+ } | {
1118
+ type: "line";
1119
+ paint: {
1120
+ 'line-color': string;
1121
+ 'line-width': number;
1122
+ 'line-opacity': number;
1123
+ 'line-dasharray'?: number[] | undefined;
1124
+ };
1125
+ } | {
1126
+ type: "circle";
1127
+ paint: {
1128
+ 'circle-color': string;
1129
+ 'circle-radius': number;
1130
+ 'circle-opacity': number;
1131
+ 'circle-stroke-color'?: string | undefined;
1132
+ 'circle-stroke-width'?: number | undefined;
1133
+ };
1134
+ } | undefined;
1135
+ legend?: {
1136
+ entries: {
1137
+ label: string;
1138
+ color: string;
1139
+ shape?: "line" | "circle" | "square" | undefined;
1140
+ }[];
1141
+ } | undefined;
1142
+ filters?: {
1143
+ datetime?: string | undefined;
1144
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
1145
+ bbox?: [number, number, number, number] | undefined;
1146
+ } | undefined;
1147
+ search?: {
1148
+ fields: {
1149
+ type: "number" | "text" | "select" | "datetime";
1150
+ label: string;
1151
+ property: string;
1152
+ options?: string[] | undefined;
1153
+ placeholder?: string | undefined;
1154
+ }[];
1155
+ } | undefined;
1156
+ }[];
1157
+ basemaps: {
1158
+ id: string;
1159
+ url: string;
1160
+ label: string;
1161
+ thumbnail?: string | undefined;
1162
+ }[];
1163
+ ui: {
1164
+ showLayerPanel: boolean;
1165
+ showLegend: boolean;
1166
+ showBasemapSwitcher: boolean;
1167
+ showSearchPanel: boolean;
1168
+ showCoordinateDisplay: boolean;
1169
+ };
1170
+ initialView: {
1171
+ latitude: number;
1172
+ longitude: number;
1173
+ zoom: number;
1174
+ pitch: number;
1175
+ bearing: number;
1176
+ };
1177
+ }, {
1178
+ sources: {
1179
+ id: string;
1180
+ url: string;
1181
+ label?: string | undefined;
1182
+ tileMatrixSetId?: string | undefined;
1183
+ }[];
1184
+ layers: {
1185
+ id: string;
1186
+ label: string;
1187
+ sourceId: string;
1188
+ collection: string;
1189
+ dataMode: "vector-tiles" | "geojson";
1190
+ visible?: boolean | undefined;
1191
+ style?: {
1192
+ type: "fill";
1193
+ paint: {
1194
+ 'fill-color'?: string | undefined;
1195
+ 'fill-opacity'?: number | undefined;
1196
+ 'fill-outline-color'?: string | undefined;
1197
+ };
1198
+ } | {
1199
+ type: "line";
1200
+ paint: {
1201
+ 'line-color'?: string | undefined;
1202
+ 'line-width'?: number | undefined;
1203
+ 'line-opacity'?: number | undefined;
1204
+ 'line-dasharray'?: number[] | undefined;
1205
+ };
1206
+ } | {
1207
+ type: "circle";
1208
+ paint: {
1209
+ 'circle-color'?: string | undefined;
1210
+ 'circle-radius'?: number | undefined;
1211
+ 'circle-opacity'?: number | undefined;
1212
+ 'circle-stroke-color'?: string | undefined;
1213
+ 'circle-stroke-width'?: number | undefined;
1214
+ };
1215
+ } | undefined;
1216
+ legend?: {
1217
+ entries: {
1218
+ label: string;
1219
+ color: string;
1220
+ shape?: "line" | "circle" | "square" | undefined;
1221
+ }[];
1222
+ } | undefined;
1223
+ filters?: {
1224
+ datetime?: string | undefined;
1225
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
1226
+ bbox?: [number, number, number, number] | undefined;
1227
+ } | undefined;
1228
+ search?: {
1229
+ fields: {
1230
+ type: "number" | "text" | "select" | "datetime";
1231
+ label: string;
1232
+ property: string;
1233
+ options?: string[] | undefined;
1234
+ placeholder?: string | undefined;
1235
+ }[];
1236
+ } | undefined;
1237
+ }[];
1238
+ basemaps: {
1239
+ id: string;
1240
+ url: string;
1241
+ label: string;
1242
+ thumbnail?: string | undefined;
1243
+ }[];
1244
+ initialView: {
1245
+ latitude: number;
1246
+ longitude: number;
1247
+ zoom: number;
1248
+ pitch?: number | undefined;
1249
+ bearing?: number | undefined;
1250
+ };
1251
+ ui?: {
1252
+ showLayerPanel?: boolean | undefined;
1253
+ showLegend?: boolean | undefined;
1254
+ showBasemapSwitcher?: boolean | undefined;
1255
+ showSearchPanel?: boolean | undefined;
1256
+ showCoordinateDisplay?: boolean | undefined;
1257
+ } | undefined;
1258
+ }>;
1259
+ /**
1260
+ * Validates a map config, throwing a ZodError if invalid.
1261
+ */
1262
+ export declare function validateMapConfig(config: unknown): {
1263
+ sources: {
1264
+ id: string;
1265
+ url: string;
1266
+ tileMatrixSetId: string;
1267
+ label?: string | undefined;
1268
+ }[];
1269
+ layers: {
1270
+ id: string;
1271
+ label: string;
1272
+ sourceId: string;
1273
+ collection: string;
1274
+ visible: boolean;
1275
+ dataMode: "vector-tiles" | "geojson";
1276
+ style?: {
1277
+ type: "fill";
1278
+ paint: {
1279
+ 'fill-color': string;
1280
+ 'fill-opacity': number;
1281
+ 'fill-outline-color'?: string | undefined;
1282
+ };
1283
+ } | {
1284
+ type: "line";
1285
+ paint: {
1286
+ 'line-color': string;
1287
+ 'line-width': number;
1288
+ 'line-opacity': number;
1289
+ 'line-dasharray'?: number[] | undefined;
1290
+ };
1291
+ } | {
1292
+ type: "circle";
1293
+ paint: {
1294
+ 'circle-color': string;
1295
+ 'circle-radius': number;
1296
+ 'circle-opacity': number;
1297
+ 'circle-stroke-color'?: string | undefined;
1298
+ 'circle-stroke-width'?: number | undefined;
1299
+ };
1300
+ } | undefined;
1301
+ legend?: {
1302
+ entries: {
1303
+ label: string;
1304
+ color: string;
1305
+ shape?: "line" | "circle" | "square" | undefined;
1306
+ }[];
1307
+ } | undefined;
1308
+ filters?: {
1309
+ datetime?: string | undefined;
1310
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
1311
+ bbox?: [number, number, number, number] | undefined;
1312
+ } | undefined;
1313
+ search?: {
1314
+ fields: {
1315
+ type: "number" | "text" | "select" | "datetime";
1316
+ label: string;
1317
+ property: string;
1318
+ options?: string[] | undefined;
1319
+ placeholder?: string | undefined;
1320
+ }[];
1321
+ } | undefined;
1322
+ }[];
1323
+ basemaps: {
1324
+ id: string;
1325
+ url: string;
1326
+ label: string;
1327
+ thumbnail?: string | undefined;
1328
+ }[];
1329
+ ui: {
1330
+ showLayerPanel: boolean;
1331
+ showLegend: boolean;
1332
+ showBasemapSwitcher: boolean;
1333
+ showSearchPanel: boolean;
1334
+ showCoordinateDisplay: boolean;
1335
+ };
1336
+ initialView: {
1337
+ latitude: number;
1338
+ longitude: number;
1339
+ zoom: number;
1340
+ pitch: number;
1341
+ bearing: number;
1342
+ };
1343
+ };
1344
+ /**
1345
+ * Validates a map config, returning a safe result object instead of throwing.
1346
+ */
1347
+ export declare function safeValidateMapConfig(config: unknown): z.SafeParseReturnType<{
1348
+ sources: {
1349
+ id: string;
1350
+ url: string;
1351
+ label?: string | undefined;
1352
+ tileMatrixSetId?: string | undefined;
1353
+ }[];
1354
+ layers: {
1355
+ id: string;
1356
+ label: string;
1357
+ sourceId: string;
1358
+ collection: string;
1359
+ dataMode: "vector-tiles" | "geojson";
1360
+ visible?: boolean | undefined;
1361
+ style?: {
1362
+ type: "fill";
1363
+ paint: {
1364
+ 'fill-color'?: string | undefined;
1365
+ 'fill-opacity'?: number | undefined;
1366
+ 'fill-outline-color'?: string | undefined;
1367
+ };
1368
+ } | {
1369
+ type: "line";
1370
+ paint: {
1371
+ 'line-color'?: string | undefined;
1372
+ 'line-width'?: number | undefined;
1373
+ 'line-opacity'?: number | undefined;
1374
+ 'line-dasharray'?: number[] | undefined;
1375
+ };
1376
+ } | {
1377
+ type: "circle";
1378
+ paint: {
1379
+ 'circle-color'?: string | undefined;
1380
+ 'circle-radius'?: number | undefined;
1381
+ 'circle-opacity'?: number | undefined;
1382
+ 'circle-stroke-color'?: string | undefined;
1383
+ 'circle-stroke-width'?: number | undefined;
1384
+ };
1385
+ } | undefined;
1386
+ legend?: {
1387
+ entries: {
1388
+ label: string;
1389
+ color: string;
1390
+ shape?: "line" | "circle" | "square" | undefined;
1391
+ }[];
1392
+ } | undefined;
1393
+ filters?: {
1394
+ datetime?: string | undefined;
1395
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
1396
+ bbox?: [number, number, number, number] | undefined;
1397
+ } | undefined;
1398
+ search?: {
1399
+ fields: {
1400
+ type: "number" | "text" | "select" | "datetime";
1401
+ label: string;
1402
+ property: string;
1403
+ options?: string[] | undefined;
1404
+ placeholder?: string | undefined;
1405
+ }[];
1406
+ } | undefined;
1407
+ }[];
1408
+ basemaps: {
1409
+ id: string;
1410
+ url: string;
1411
+ label: string;
1412
+ thumbnail?: string | undefined;
1413
+ }[];
1414
+ initialView: {
1415
+ latitude: number;
1416
+ longitude: number;
1417
+ zoom: number;
1418
+ pitch?: number | undefined;
1419
+ bearing?: number | undefined;
1420
+ };
1421
+ ui?: {
1422
+ showLayerPanel?: boolean | undefined;
1423
+ showLegend?: boolean | undefined;
1424
+ showBasemapSwitcher?: boolean | undefined;
1425
+ showSearchPanel?: boolean | undefined;
1426
+ showCoordinateDisplay?: boolean | undefined;
1427
+ } | undefined;
1428
+ }, {
1429
+ sources: {
1430
+ id: string;
1431
+ url: string;
1432
+ tileMatrixSetId: string;
1433
+ label?: string | undefined;
1434
+ }[];
1435
+ layers: {
1436
+ id: string;
1437
+ label: string;
1438
+ sourceId: string;
1439
+ collection: string;
1440
+ visible: boolean;
1441
+ dataMode: "vector-tiles" | "geojson";
1442
+ style?: {
1443
+ type: "fill";
1444
+ paint: {
1445
+ 'fill-color': string;
1446
+ 'fill-opacity': number;
1447
+ 'fill-outline-color'?: string | undefined;
1448
+ };
1449
+ } | {
1450
+ type: "line";
1451
+ paint: {
1452
+ 'line-color': string;
1453
+ 'line-width': number;
1454
+ 'line-opacity': number;
1455
+ 'line-dasharray'?: number[] | undefined;
1456
+ };
1457
+ } | {
1458
+ type: "circle";
1459
+ paint: {
1460
+ 'circle-color': string;
1461
+ 'circle-radius': number;
1462
+ 'circle-opacity': number;
1463
+ 'circle-stroke-color'?: string | undefined;
1464
+ 'circle-stroke-width'?: number | undefined;
1465
+ };
1466
+ } | undefined;
1467
+ legend?: {
1468
+ entries: {
1469
+ label: string;
1470
+ color: string;
1471
+ shape?: "line" | "circle" | "square" | undefined;
1472
+ }[];
1473
+ } | undefined;
1474
+ filters?: {
1475
+ datetime?: string | undefined;
1476
+ properties?: Record<string, string | number | boolean | string[]> | undefined;
1477
+ bbox?: [number, number, number, number] | undefined;
1478
+ } | undefined;
1479
+ search?: {
1480
+ fields: {
1481
+ type: "number" | "text" | "select" | "datetime";
1482
+ label: string;
1483
+ property: string;
1484
+ options?: string[] | undefined;
1485
+ placeholder?: string | undefined;
1486
+ }[];
1487
+ } | undefined;
1488
+ }[];
1489
+ basemaps: {
1490
+ id: string;
1491
+ url: string;
1492
+ label: string;
1493
+ thumbnail?: string | undefined;
1494
+ }[];
1495
+ ui: {
1496
+ showLayerPanel: boolean;
1497
+ showLegend: boolean;
1498
+ showBasemapSwitcher: boolean;
1499
+ showSearchPanel: boolean;
1500
+ showCoordinateDisplay: boolean;
1501
+ };
1502
+ initialView: {
1503
+ latitude: number;
1504
+ longitude: number;
1505
+ zoom: number;
1506
+ pitch: number;
1507
+ bearing: number;
1508
+ };
1509
+ }>;
1510
+ //# sourceMappingURL=config.d.ts.map