@feltmaps/js-sdk 1.7.0-next.20 → 1.7.0-next.22

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.
@@ -5232,7 +5232,7 @@ interface ElementChangeCallbackParams {
5232
5232
  *
5233
5233
  * If the user is editing an existing element, this will be false.
5234
5234
  *
5235
- * For elements that are created programatically, this will be false.
5235
+ * For elements that are created programmatically, this will be false.
5236
5236
  */
5237
5237
  isBeingCreated: boolean;
5238
5238
  }
@@ -5359,7 +5359,7 @@ interface ElementsController {
5359
5359
  * @example
5360
5360
  * ```typescript
5361
5361
  * const unsubscribe = felt.onElementCreate({
5362
- * handler: (element) => console.log(element.id),
5362
+ * handler: ({isBeingCreated, element}) => console.log(element.id),
5363
5363
  * });
5364
5364
  *
5365
5365
  * // later on...
@@ -5370,7 +5370,7 @@ interface ElementsController {
5370
5370
  /**
5371
5371
  * The handler that is called when an element is created.
5372
5372
  *
5373
- * This will fire when elements are created programatically, or when the
5373
+ * This will fire when elements are created programmatically, or when the
5374
5374
  * user starts creating an element with a drawing tool.
5375
5375
  *
5376
5376
  * When the user creates an element with a drawing tool, it can begin in
@@ -5402,7 +5402,7 @@ interface ElementsController {
5402
5402
  * @event
5403
5403
  * @example
5404
5404
  * ```typescript
5405
- * const unsubscribe = felt.onToolCreatedElement({
5405
+ * const unsubscribe = felt.onElementCreateEnd({
5406
5406
  * handler: (params) => console.log(params),
5407
5407
  * });
5408
5408
  *
@@ -5424,7 +5424,7 @@ interface ElementsController {
5424
5424
  * Adds a listener for when an element changes.
5425
5425
  *
5426
5426
  * This will fire when an element is being edited, either on the map by the user
5427
- * or programatically.
5427
+ * or programmatically.
5428
5428
  *
5429
5429
  * Like the {@link ElementsController.onElementCreate | `onElementCreate`} listener, this will fire when an element is
5430
5430
  * still being created by a drawing tool.
@@ -5524,19 +5524,21 @@ interface ElementsController {
5524
5524
  */
5525
5525
  createElement(element: ElementCreate): Promise<Element>;
5526
5526
  /**
5527
- * Update an element on the map.
5527
+ * Update an element on the map. The element type must be specified.
5528
5528
  *
5529
5529
  * @example
5530
5530
  * ```typescript
5531
5531
  * // Update a place element's coordinates
5532
5532
  * await felt.updateElement({
5533
5533
  * id: "element-1",
5534
+ * type: "Place",
5534
5535
  * coordinates: [10, 20]
5535
5536
  * });
5536
5537
  *
5537
5538
  * // Update a polygon's style
5538
5539
  * await felt.updateElement({
5539
5540
  * id: "element-2",
5541
+ * type: "Polygon",
5540
5542
  * color: "#ABC123",
5541
5543
  * fillOpacity: 0.5
5542
5544
  * });
@@ -5862,7 +5864,7 @@ interface GeoJsonUrlVectorSource extends zInfer<typeof GeoJsonUrlVectorSourceSch
5862
5864
  }
5863
5865
  /**
5864
5866
  * A GeoJSON data source is a layer that is populated from GeoJSON data, such as
5865
- * from a local file, or programatically-created data.
5867
+ * from a local file, or programmatically-created data.
5866
5868
  *
5867
5869
  * @group Layer sources
5868
5870
  */
@@ -7892,7 +7894,7 @@ interface LayersController {
7892
7894
  * // first get the current style
7893
7895
  * const oldStyle = (await felt.getLayer("layer-1")).style;
7894
7896
  *
7895
- * felt.setLayerStyle({ id: "layer-1", style: {
7897
+ * await felt.setLayerStyle({ id: "layer-1", style: {
7896
7898
  * ...oldStyle,
7897
7899
  * paint: {
7898
7900
  * ...oldStyle.paint,
@@ -7974,7 +7976,7 @@ interface LayersController {
7974
7976
  *
7975
7977
  * const layerFromUrl = await felt.createLayersFromGeoJson({
7976
7978
  * source: {
7977
- * sourceType: "geoJsonUrl",
7979
+ * type: "geoJsonUrl",
7978
7980
  * url: "https://example.com/parcels.geojson",
7979
7981
  * },
7980
7982
  * name: "Parcels",
@@ -8555,15 +8557,18 @@ interface LayersController {
8555
8557
  * averages, sums, etc. You can focus your calculation on specific areas or subsets
8556
8558
  * of your data using boundaries and filters.
8557
8559
  *
8558
- * When no aggregation is specified, it counts features. When an aggregation is provided,
8559
- * it performs that calculation (average, sum, etc.) on the specified attribute.
8560
+ * When you request an aggregation other than count, you must specify an attribute to
8561
+ * aggregate on.
8560
8562
  *
8561
8563
  * @example
8562
8564
  * ```typescript
8563
8565
  * // Count all residential buildings
8564
8566
  * const residentialCount = await felt.getAggregates({
8565
8567
  * layerId: "buildings",
8566
- * filters: ["type", "eq", "residential"]
8568
+ * filters: ["type", "eq", "residential"],
8569
+ * aggregation: {
8570
+ * methods: ["count"],
8571
+ * }
8567
8572
  * });
8568
8573
  *
8569
8574
  * // Calculate average home value in a specific neighborhood
@@ -8941,7 +8946,7 @@ interface SelectionController {
8941
8946
  */
8942
8947
  selectFeature(params: FeatureSelection): Promise<void>;
8943
8948
  /**
8944
- * Clears the current selection. This clears the selection of
8949
+ * Clears the current selection (elements, features or both)
8945
8950
  *
8946
8951
  * @example
8947
8952
  * ```typescript
@@ -10198,6 +10203,112 @@ type UIFlexibleSpaceElementCreateClonable = MakeClonableSchema<UIFlexibleSpaceEl
10198
10203
  interface UIFlexibleSpaceElementUpdate extends MakeUpdateSchema<UIFlexibleSpaceElement, UIFlexibleSpaceElementCreate> {
10199
10204
  }
10200
10205
 
10206
+ declare const uiIframeElementSchema: ZodObject<objectUtil.extendShape<objectUtil.extendShape<{
10207
+ onCreate: ZodOptional<ZodFunction<ZodTuple<[ZodObject<{
10208
+ id: ZodString;
10209
+ }, "strip", ZodTypeAny, {
10210
+ id: string;
10211
+ }, {
10212
+ id: string;
10213
+ }>], ZodUnknown>, ZodVoid>>;
10214
+ onDestroy: ZodOptional<ZodFunction<ZodTuple<[ZodObject<{
10215
+ id: ZodString;
10216
+ }, "strip", ZodTypeAny, {
10217
+ id: string;
10218
+ }, {
10219
+ id: string;
10220
+ }>], ZodUnknown>, ZodVoid>>;
10221
+ }, {
10222
+ id: ZodString;
10223
+ }>, {
10224
+ type: ZodLiteral<"Iframe">;
10225
+ /**
10226
+ * The height of the iframe.
10227
+ *
10228
+ * If not provided, the height will be automatically calculated following a 16:9 ratio.
10229
+ */
10230
+ height: ZodOptional<ZodUnion<[ZodNumber, ZodString]>>;
10231
+ /**
10232
+ * The URL of the iframe.
10233
+ */
10234
+ url: ZodString;
10235
+ }>, "strip", ZodTypeAny, {
10236
+ type: "Iframe";
10237
+ id: string;
10238
+ url: string;
10239
+ onCreate?: ((args_0: {
10240
+ id: string;
10241
+ }, ...args: unknown[]) => void) | undefined;
10242
+ onDestroy?: ((args_0: {
10243
+ id: string;
10244
+ }, ...args: unknown[]) => void) | undefined;
10245
+ height?: string | number | undefined;
10246
+ }, {
10247
+ type: "Iframe";
10248
+ id: string;
10249
+ url: string;
10250
+ onCreate?: ((args_0: {
10251
+ id: string;
10252
+ }, ...args: unknown[]) => void) | undefined;
10253
+ onDestroy?: ((args_0: {
10254
+ id: string;
10255
+ }, ...args: unknown[]) => void) | undefined;
10256
+ height?: string | number | undefined;
10257
+ }>;
10258
+ /**
10259
+ * Represents an iframe element in a panel.
10260
+ *
10261
+ * The height of the iframe can be set by using the `height` property
10262
+ * either as a number (measured in pixels) or a string (e.g. “100px” or “50%“).
10263
+ *
10264
+ * By default, the height is calculated following a 16:9 ratio.
10265
+ *
10266
+ * <figure>
10267
+ * <img src="./img/iframe-basic.png" alt="Iframe showing an example website" />
10268
+ * <figcaption>
10269
+ * Iframe with default height (16:9)
10270
+ * </figcaption>
10271
+ * </figure>
10272
+ *
10273
+ * ```typescript
10274
+ * { type: "Iframe", url: "https://www.example.com" }
10275
+ * ```
10276
+ *
10277
+ * <figure>
10278
+ * <img src="./img/iframe-custom-height.png" alt="Iframe showing an example website with a custom height" />
10279
+ * <figcaption>
10280
+ * Iframe with custom height
10281
+ * </figcaption>
10282
+ * </figure>
10283
+ *
10284
+ * ```typescript
10285
+ * { type: "Iframe", url: "https://www.example.com", height: 300 }
10286
+ * ```
10287
+ */
10288
+ interface UIIframeElement extends UIElementBase, Omit<zInfer<typeof uiIframeElementSchema>, "onCreate" | "onDestroy"> {
10289
+ }
10290
+ /**
10291
+ * The parameters for creating an iframe element.
10292
+ *
10293
+ * See {@link UIIframeElement} for more details.
10294
+ *
10295
+ * @remarks
10296
+ * `id` is optional but recommended if you want to be able to perform updates.
10297
+ */
10298
+ interface UIIframeElementCreate extends Omit<UIIframeElement, "id">, UIElementBaseCreateParams {
10299
+ }
10300
+ type UIIframeElementCreateClonable = MakeClonableSchema<UIIframeElementCreate>;
10301
+ /**
10302
+ * The parameters for updating an iframe element.
10303
+ *
10304
+ * See {@link UIIframeElement} for more details.
10305
+ *
10306
+ * @remarks
10307
+ * `id` and `type` are required to identify the element to update.
10308
+ */
10309
+ interface UIIframeElementUpdate extends MakeUpdateSchema<UIIframeElement, UIIframeElementCreate> {
10310
+ }
10311
+
10201
10312
  declare const uiToggleGroupElementSchema: ZodObject<objectUtil.extendShape<objectUtil.extendShape<objectUtil.extendShape<{
10202
10313
  onCreate: ZodOptional<ZodFunction<ZodTuple<[ZodObject<{
10203
10314
  id: ZodString;
@@ -11242,22 +11353,22 @@ type UIGridContainerElementCreateClonable = Omit<MakeClonableSchema<UIGridContai
11242
11353
  interface UIGridContainerElementUpdate extends MakeUpdateSchema<UIGridContainerElement, UIGridContainerElementCreate> {
11243
11354
  }
11244
11355
 
11245
- type UIPanelElement = UIButtonElement | UITextElement | UIDividerElement | UITextInputElement | UISelectElement | UIFlexibleSpaceElement | UIButtonRowElement | UICheckboxGroupElement | UIRadioGroupElement | UIToggleGroupElement | UIGridContainerElement;
11356
+ type UIPanelElement = UIButtonElement | UITextElement | UIDividerElement | UITextInputElement | UISelectElement | UIFlexibleSpaceElement | UIButtonRowElement | UICheckboxGroupElement | UIRadioGroupElement | UIToggleGroupElement | UIIframeElement | UIGridContainerElement;
11246
11357
  /**
11247
11358
  * This is a union of all the possible elements that can be created inside panel's body or footer.
11248
11359
  *
11249
11360
  * @remarks
11250
11361
  * For the sake of convenience, `id` is optional but recommended if you want to be able to perform updates.
11251
11362
  */
11252
- type UIPanelElementCreate = UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIGridContainerElementCreate;
11253
- type UIPanelElementCreateClonable = UIButtonElementCreateClonable | UITextElementCreateClonable | UIDividerElementCreateClonable | UITextInputElementCreateClonable | UISelectElementCreateClonable | UIFlexibleSpaceElementCreateClonable | UIButtonRowElementCreateClonable | UICheckboxGroupElementCreateClonable | UIRadioGroupElementCreateClonable | UIToggleGroupElementCreateClonable | UIGridContainerElementCreateClonable;
11363
+ type UIPanelElementCreate = UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate | UIGridContainerElementCreate;
11364
+ type UIPanelElementCreateClonable = UIButtonElementCreateClonable | UITextElementCreateClonable | UIDividerElementCreateClonable | UITextInputElementCreateClonable | UISelectElementCreateClonable | UIFlexibleSpaceElementCreateClonable | UIButtonRowElementCreateClonable | UICheckboxGroupElementCreateClonable | UIRadioGroupElementCreateClonable | UIToggleGroupElementCreateClonable | UIIframeElementCreateClonable | UIGridContainerElementCreateClonable;
11254
11365
  /**
11255
11366
  * This is a union of all the possible elements that can be updated inside panel's body or footer (excluding Divider and FlexibleSpace elements because they cannot be updated).
11256
11367
  *
11257
11368
  * @remarks
11258
11369
  * `id` and `type` are required to identify the element to update.
11259
11370
  */
11260
- type UIPanelElementUpdate = UIButtonElementUpdate | UITextElementUpdate | UITextInputElementUpdate | UISelectElementUpdate | UIDividerElementUpdate | UIButtonRowElementUpdate | UICheckboxGroupElementUpdate | UIRadioGroupElementUpdate | UIToggleGroupElementUpdate | UIGridContainerElementUpdate | UIFlexibleSpaceElementUpdate;
11371
+ type UIPanelElementUpdate = UIButtonElementUpdate | UITextElementUpdate | UITextInputElementUpdate | UISelectElementUpdate | UIDividerElementUpdate | UIButtonRowElementUpdate | UICheckboxGroupElementUpdate | UIRadioGroupElementUpdate | UIToggleGroupElementUpdate | UIGridContainerElementUpdate | UIFlexibleSpaceElementUpdate | UIIframeElementUpdate;
11261
11372
 
11262
11373
  declare const placementForUiElementSchema: ZodUnion<[ZodObject<{
11263
11374
  after: ZodString;
@@ -11356,70 +11467,54 @@ declare const uiPanelSchema: ZodObject<objectUtil.extendShape<objectUtil.extendS
11356
11467
  }, ...args: unknown[]) => void) | undefined;
11357
11468
  }>;
11358
11469
  /**
11359
- * Represents a panel in the UI.
11360
- * It can be added to the map by using the {@link UiController.createOrUpdatePanel} method.
11361
- *
11362
- * A panel is a container for other UI elements.
11363
- * It can have a title, a body, a footer as well as a close button.
11364
- *
11365
- * The body and footer are arrays of UI elements and turn into vertical stacks of elements.
11470
+ * A UI panel that can be added to the map using {@link UiController.createOrUpdatePanel}.
11366
11471
  *
11367
- * The close button is a button rendered in the top right corner of the panel that can be
11368
- * used to close the panel and is only visible if `onClickClose` is provided.
11369
- * Usually, you want to call {@link UiController.deletePanel} when the close button is clicked,
11370
- * e.g. `onClickClose: () => felt.deletePanel("my-panel")`.
11472
+ * Panels are containers for UI elements with title, body, footer, and close button.
11473
+ * Body and footer elements are arranged in vertical stacks.
11371
11474
  *
11372
11475
  * #### Body
11373
- * Body is the main content of the panel. It is scrollable which means
11374
- * that it can contain a lot of elements.
11476
+ * Main content area that scrolls when content exceeds available space.
11375
11477
  *
11376
11478
  * #### Footer
11377
- * Footer is sticky to the bottom of the panel, and can be used to add actions to the panel (e.g. save, cancel, etc.).
11479
+ * Sticky bottom section for action buttons (e.g., Save, Cancel).
11378
11480
  *
11379
- * @example
11380
- * #### basic
11381
- * ```typescript
11382
- * {
11383
- * title: "My Panel",
11384
- * body: [
11385
- * { type: "Text", text: "Hello" },
11386
- * ],
11387
- * }
11388
- * ```
11481
+ * #### Close Button
11482
+ * Optional close icon in header. When `onClickClose` is provided, you must handle
11483
+ * panel cleanup and removal.
11389
11484
  *
11390
11485
  * @example
11391
- * #### closable
11392
11486
  * ```typescript
11393
- * {
11394
- * id: "my-panel",
11395
- * title: "My Panel",
11396
- * onClickClose: () => felt.deletePanel("my-panel"),
11397
- * }
11398
- *
11399
- * @example
11400
- * #### form
11401
- * ```typescript
11402
- * {
11403
- * title: "My Panel",
11404
- * body: [
11405
- * { type: "Text", text: "Introduce your name and last name" },
11406
- * { type: "TextInput", label: "Name", value: "", placeholder: "John", onChange: (value) => setName(value) },
11407
- * { type: "TextInput", label: "Last name", value: "", placeholder: "Doe", onChange: (value) => setLastName(value) },
11408
- * ],
11409
- * footer: [
11410
- * {
11411
- * type: "Grid",
11412
- * grid: "auto-flow / 1fr auto auto",
11413
- * items: [
11414
- * { type: "FlexibleSpace" }, // this will make the buttons to be aligned to the end of the panel
11415
- * { type: "Button", label: "Reset", onClick: () => alert("Reset") },
11416
- * { type: "Button", label: "Save", onClick: () => alert("Save") },
11417
- * ],
11418
- * },
11419
- * ],
11420
- * }
11487
+ * // 1. Create panel ID
11488
+ * const panelId = await felt.createPanelId();
11489
+ *
11490
+ * // 2. Create panel with close button and footer
11491
+ * await felt.createOrUpdatePanel({
11492
+ * panel: {
11493
+ * id: panelId,
11494
+ * title: "My Panel",
11495
+ * body: [
11496
+ * { type: "Text", content: "Hello, world!" },
11497
+ * { type: "TextInput", label: "Name", placeholder: "Enter your name" }
11498
+ * ],
11499
+ * footer: [
11500
+ * {
11501
+ * type: "ButtonRow",
11502
+ * align: "end",
11503
+ * items: [
11504
+ * { type: "Button", label: "Cancel", onClick: () => handleCancel() },
11505
+ * { type: "Button", label: "Save", onClick: () => handleSave() }
11506
+ * ]
11507
+ * }
11508
+ * ],
11509
+ * onClickClose: (args) => {
11510
+ * // Clean up any state or resources
11511
+ * cleanupResources();
11512
+ * // Close the panel
11513
+ * felt.deletePanel(panelId);
11514
+ * }
11515
+ * }
11516
+ * });
11421
11517
  * ```
11422
- *
11423
11518
  */
11424
11519
  interface UIPanel extends UIElementBase, Omit<zInfer<typeof uiPanelSchema>, "onClickClose" | "body" | "footer" | "onCreate" | "onDestroy" | "id"> {
11425
11520
  /**
@@ -12973,6 +13068,47 @@ declare const UpdatePanelElementsParamsSchema: ZodObject<{
12973
13068
  id: string;
12974
13069
  }, ...args: unknown[]) => void) | undefined;
12975
13070
  alignment?: "start" | "end" | undefined;
13071
+ }>, ZodObject<{
13072
+ type: ZodLiteral<"Iframe">;
13073
+ height: ZodOptional<ZodOptional<ZodUnion<[ZodNumber, ZodString]>>>;
13074
+ url: ZodOptional<ZodString>;
13075
+ id: ZodString;
13076
+ onCreate: ZodOptional<ZodOptional<ZodFunction<ZodTuple<[ZodObject<{
13077
+ id: ZodString;
13078
+ }, "strip", ZodTypeAny, {
13079
+ id: string;
13080
+ }, {
13081
+ id: string;
13082
+ }>], ZodUnknown>, ZodVoid>>>;
13083
+ onDestroy: ZodOptional<ZodOptional<ZodFunction<ZodTuple<[ZodObject<{
13084
+ id: ZodString;
13085
+ }, "strip", ZodTypeAny, {
13086
+ id: string;
13087
+ }, {
13088
+ id: string;
13089
+ }>], ZodUnknown>, ZodVoid>>>;
13090
+ }, UnknownKeysParam, ZodTypeAny, {
13091
+ type: "Iframe";
13092
+ id: string;
13093
+ url?: string | undefined;
13094
+ onCreate?: ((args_0: {
13095
+ id: string;
13096
+ }, ...args: unknown[]) => void) | undefined;
13097
+ onDestroy?: ((args_0: {
13098
+ id: string;
13099
+ }, ...args: unknown[]) => void) | undefined;
13100
+ height?: string | number | undefined;
13101
+ }, {
13102
+ type: "Iframe";
13103
+ id: string;
13104
+ url?: string | undefined;
13105
+ onCreate?: ((args_0: {
13106
+ id: string;
13107
+ }, ...args: unknown[]) => void) | undefined;
13108
+ onDestroy?: ((args_0: {
13109
+ id: string;
13110
+ }, ...args: unknown[]) => void) | undefined;
13111
+ height?: string | number | undefined;
12976
13112
  }>, ZodObject<{
12977
13113
  type: ZodLiteral<"Grid">;
12978
13114
  id: ZodString;
@@ -12993,11 +13129,11 @@ declare const UpdatePanelElementsParamsSchema: ZodObject<{
12993
13129
  grid: ZodOptional<ZodOptional<ZodString>>;
12994
13130
  verticalAlignment: ZodOptional<ZodOptional<ZodEnum<["top", "center", "bottom"]>>>;
12995
13131
  horizontalDistribution: ZodOptional<ZodOptional<ZodEnum<["start", "center", "end", "space-between", "space-around", "space-evenly"]>>>;
12996
- items: ZodOptional<ZodType<(UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[], ZodTypeDef, (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[]>>;
13132
+ items: ZodOptional<ZodType<(UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[], ZodTypeDef, (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[]>>;
12997
13133
  }, UnknownKeysParam, ZodTypeAny, {
12998
13134
  type: "Grid";
12999
13135
  id: string;
13000
- items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[] | undefined;
13136
+ items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[] | undefined;
13001
13137
  onCreate?: ((args_0: {
13002
13138
  id: string;
13003
13139
  }, ...args: unknown[]) => void) | undefined;
@@ -13010,7 +13146,7 @@ declare const UpdatePanelElementsParamsSchema: ZodObject<{
13010
13146
  }, {
13011
13147
  type: "Grid";
13012
13148
  id: string;
13013
- items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[] | undefined;
13149
+ items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[] | undefined;
13014
13150
  onCreate?: ((args_0: {
13015
13151
  id: string;
13016
13152
  }, ...args: unknown[]) => void) | undefined;
@@ -13201,10 +13337,21 @@ declare const UpdatePanelElementsParamsSchema: ZodObject<{
13201
13337
  id: string;
13202
13338
  }, ...args: unknown[]) => void) | undefined;
13203
13339
  alignment?: "start" | "end" | undefined;
13340
+ } | {
13341
+ type: "Iframe";
13342
+ id: string;
13343
+ url?: string | undefined;
13344
+ onCreate?: ((args_0: {
13345
+ id: string;
13346
+ }, ...args: unknown[]) => void) | undefined;
13347
+ onDestroy?: ((args_0: {
13348
+ id: string;
13349
+ }, ...args: unknown[]) => void) | undefined;
13350
+ height?: string | number | undefined;
13204
13351
  } | {
13205
13352
  type: "Grid";
13206
13353
  id: string;
13207
- items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[] | undefined;
13354
+ items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[] | undefined;
13208
13355
  onCreate?: ((args_0: {
13209
13356
  id: string;
13210
13357
  }, ...args: unknown[]) => void) | undefined;
@@ -13395,10 +13542,21 @@ declare const UpdatePanelElementsParamsSchema: ZodObject<{
13395
13542
  id: string;
13396
13543
  }, ...args: unknown[]) => void) | undefined;
13397
13544
  alignment?: "start" | "end" | undefined;
13545
+ } | {
13546
+ type: "Iframe";
13547
+ id: string;
13548
+ url?: string | undefined;
13549
+ onCreate?: ((args_0: {
13550
+ id: string;
13551
+ }, ...args: unknown[]) => void) | undefined;
13552
+ onDestroy?: ((args_0: {
13553
+ id: string;
13554
+ }, ...args: unknown[]) => void) | undefined;
13555
+ height?: string | number | undefined;
13398
13556
  } | {
13399
13557
  type: "Grid";
13400
13558
  id: string;
13401
- items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[] | undefined;
13559
+ items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[] | undefined;
13402
13560
  onCreate?: ((args_0: {
13403
13561
  id: string;
13404
13562
  }, ...args: unknown[]) => void) | undefined;
@@ -13592,10 +13750,21 @@ declare const UpdatePanelElementsParamsSchema: ZodObject<{
13592
13750
  id: string;
13593
13751
  }, ...args: unknown[]) => void) | undefined;
13594
13752
  alignment?: "start" | "end" | undefined;
13753
+ } | {
13754
+ type: "Iframe";
13755
+ id: string;
13756
+ url?: string | undefined;
13757
+ onCreate?: ((args_0: {
13758
+ id: string;
13759
+ }, ...args: unknown[]) => void) | undefined;
13760
+ onDestroy?: ((args_0: {
13761
+ id: string;
13762
+ }, ...args: unknown[]) => void) | undefined;
13763
+ height?: string | number | undefined;
13595
13764
  } | {
13596
13765
  type: "Grid";
13597
13766
  id: string;
13598
- items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[] | undefined;
13767
+ items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[] | undefined;
13599
13768
  onCreate?: ((args_0: {
13600
13769
  id: string;
13601
13770
  }, ...args: unknown[]) => void) | undefined;
@@ -13789,10 +13958,21 @@ declare const UpdatePanelElementsParamsSchema: ZodObject<{
13789
13958
  id: string;
13790
13959
  }, ...args: unknown[]) => void) | undefined;
13791
13960
  alignment?: "start" | "end" | undefined;
13961
+ } | {
13962
+ type: "Iframe";
13963
+ id: string;
13964
+ url?: string | undefined;
13965
+ onCreate?: ((args_0: {
13966
+ id: string;
13967
+ }, ...args: unknown[]) => void) | undefined;
13968
+ onDestroy?: ((args_0: {
13969
+ id: string;
13970
+ }, ...args: unknown[]) => void) | undefined;
13971
+ height?: string | number | undefined;
13792
13972
  } | {
13793
13973
  type: "Grid";
13794
13974
  id: string;
13795
- items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate)[] | undefined;
13975
+ items?: (UIButtonElementCreate | UITextElementCreate | UIDividerElementCreate | UITextInputElementCreate | UISelectElementCreate | UIFlexibleSpaceElementCreate | UIButtonRowElementCreate | UICheckboxGroupElementCreate | UIRadioGroupElementCreate | UIToggleGroupElementCreate | UIIframeElementCreate)[] | undefined;
13796
13976
  onCreate?: ((args_0: {
13797
13977
  id: string;
13798
13978
  }, ...args: unknown[]) => void) | undefined;
@@ -14003,10 +14183,10 @@ interface UiController {
14003
14183
  * ```typescript
14004
14184
  * await felt.createActionTrigger({
14005
14185
  * actionTrigger: {
14006
- * id: "layerTurnPurple", // not required but useful for further updates
14007
- * label: "Turn layer purple",
14186
+ * id: "enablePolygonTool", // optional. Required if you want to update the action trigger later
14187
+ * label: "Draw polygon",
14008
14188
  * onTrigger: async () => {
14009
- * await felt.setLayerStyle("layer-1", { ..., paint: { color: "purple" } });
14189
+ * felt.setTool("polygon");
14010
14190
  * },
14011
14191
  * disabled: false, // optional, defaults to false
14012
14192
  * },
@@ -14028,8 +14208,8 @@ interface UiController {
14028
14208
  * @example
14029
14209
  * ```typescript
14030
14210
  * await felt.updateActionTrigger({
14031
- * id: "layerTurnPurple",
14032
- * label: "Turn layer points purple", // only label changes
14211
+ * id: "enablePolygonTool",
14212
+ * label: "Enable polygon tool", // only label changes
14033
14213
  * });
14034
14214
  * ```
14035
14215
  */
@@ -14041,7 +14221,7 @@ interface UiController {
14041
14221
  *
14042
14222
  * @example
14043
14223
  * ```typescript
14044
- * await felt.deleteActionTrigger("layerTurnPurple");
14224
+ * await felt.deleteActionTrigger("enablePolygonTool");
14045
14225
  * ```
14046
14226
  */
14047
14227
  deleteActionTrigger(id: string): void;
@@ -14059,66 +14239,72 @@ interface UiController {
14059
14239
  /**
14060
14240
  * Creates or updates a panel.
14061
14241
  *
14062
- * Panels are rendered on map's right sidebar and are useful to extend Felt UI for your own use cases
14063
- * (e.g. a form, a settings panel, etc.) using Felt UI elements (e.g. Text, Button, etc.).
14064
- * This way it is possible to cover new use cases while keeping the user experience consistent with the rest of Felt.
14242
+ * Panels are rendered on the map's right sidebar and allow you to extend Felt UI
14243
+ * for your own use cases using Felt UI elements (e.g., Text, Button, etc.).
14065
14244
  *
14066
- * A panel is identified by its ID and must come from {@link createPanelId}.
14067
- * Custom IDs are not supported in order to prevent conflicts with other panels.
14245
+ * A panel is identified by its ID, which must be created using {@link createPanelId}.
14246
+ * Custom IDs are not supported to prevent conflicts with other panels.
14068
14247
  *
14069
- * Panels have two sections:
14070
- * - `body` - Body of the panel, scrollable.
14071
- * - `footer` - It sticks to the bottom of the panel, useful to add submit buttons.
14248
+ * Panels have two main sections:
14249
+ * - `body` - The main content area of the panel, which is scrollable.
14250
+ * - `footer` - A section that sticks to the bottom of the panel, useful for
14251
+ * action buttons like "Submit" or "Cancel".
14072
14252
  *
14073
- * Regarding panel placement, by default it is added to the end of the panels stack but you can
14074
- * specify a different placement by using the `initialPlacement` parameter.
14075
- * This placement cannot be updated later.
14253
+ * Panel placement is controlled by the `initialPlacement` parameter. By default,
14254
+ * panels are added to the end of the panel stack, but you can specify a different
14255
+ * placement. Note that this placement cannot be changed after the panel is created.
14076
14256
  *
14077
- * When adding a panel, its elements' ids are optional though it is recommended to make
14078
- * it easier to update or delete them later.
14257
+ * Element IDs are required for targeted updates and deletions using the other
14258
+ * panel management methods. For complete panel refreshes with this method,
14259
+ * element IDs are optional but recommended for consistency.
14079
14260
  *
14080
- * Once created, you can add elements to the panel by using the {@link createPanelElements} method,
14081
- * perform partial updates of elements by using the {@link updatePanelElements} method or
14082
- * delete elements by using the {@link deletePanelElements} method.
14261
+ * For dynamic content management, consider these approaches:
14262
+ * - Use this method for complete panel refreshes (replaces all content)
14263
+ * - Use {@link createPanelElements} to add new elements to existing panels
14264
+ * - Use {@link updatePanelElements} to modify specific existing elements
14265
+ * - Use {@link deletePanelElements} to remove specific elements
14083
14266
  *
14084
- * @param args - The arguments for the method.
14085
- * @param args.panel - The panel to add.
14086
- * @param args.initialPlacement - The placement of the panel when added. Optional. Defaults to `{ at: "end" }`.
14087
- * - `{ at: "start" }` - Add the panel to the start of the stack.
14088
- * - `{ at: "end" }` - Add the panel to the end of the stack.
14089
- * - `{ after: "panel-1" }` - Add the panel after the panel with the id `panel-1`.
14090
- * - `{ before: "panel-1" }` - Add the panel before the panel with the id `panel-1`.
14267
+ * @param args - The arguments for creating or updating the panel.
14268
+ * @param args.panel - The panel configuration to create or update.
14269
+ * @param args.initialPlacement - The placement of the panel when first added.
14270
+ * Optional. Defaults to `{ at: "end" }`.
14271
+ * - `{ at: "start" }` - Add the panel to the start of the stack.
14272
+ * - `{ at: "end" }` - Add the panel to the end of the stack.
14273
+ * - `{ after: "panel-1" }` - Add the panel after the panel with the id `panel-1`.
14274
+ * - `{ before: "panel-1" }` - Add the panel before the panel with the id `panel-1`.
14091
14275
  *
14092
14276
  * @example
14093
14277
  * ```typescript
14094
- * const id = await felt.createPanelId();
14278
+ * // 1. Create panel ID first (required)
14279
+ * const panelId = await felt.createPanelId();
14280
+ *
14281
+ * // 2. Define reusable elements
14282
+ * const SELECT = { id: "layer-select", type: "Select", label: "Layer", options: [...] };
14283
+ * const ANALYZE_BTN = { id: "analyze-btn", type: "Button", label: "Analyze", onClick: handleAnalyze };
14284
+ * const STATUS_TEXT = { id: "status-text", type: "Text", content: "" };
14285
+ * const CLEAR_BTN = { id: "clear-btn", type: "Button", label: "Clear", onClick: handleClear };
14095
14286
  *
14287
+ * // 3. Initial state
14096
14288
  * await felt.createOrUpdatePanel({
14097
- * panel: {
14098
- * id,
14099
- * title: "My Panel",
14100
- * body: [
14101
- * {
14102
- * type: "Text",
14103
- * content: "Hello, world!",
14104
- * },
14105
- * {
14106
- * type: "TextInput",
14107
- * label: "Name",
14108
- * placeholder: "Enter your name",
14109
- * value: "",
14110
- * onChange: ({ value }) => setName(value),
14111
- * },
14112
- * ],
14113
- * footer: [
14114
- * {
14115
- * type: "Button",
14116
- * label: "Submit",
14117
- * onClick: () => submitForm(),
14118
- * },
14119
- * ],
14120
- * },
14121
- * initialPlacement: { at: "start" }, // when added, the panel will be added to the start of the stack
14289
+ * panel: { id: panelId, title: "Data Analyzer", body: [SELECT, ANALYZE_BTN] }
14290
+ * });
14291
+ *
14292
+ * // 4. Loading state (replaces entire panel)
14293
+ * await felt.createOrUpdatePanel({
14294
+ * panel: {
14295
+ * id: panelId,
14296
+ * title: "Data Analyzer",
14297
+ * body: [SELECT, ANALYZE_BTN, { ...STATUS_TEXT, content: "Loading..." }]
14298
+ * }
14299
+ * });
14300
+ *
14301
+ * // 5. Results state (replaces entire panel)
14302
+ * await felt.createOrUpdatePanel({
14303
+ * panel: {
14304
+ * id: panelId,
14305
+ * title: "Data Analyzer",
14306
+ * body: [SELECT, ANALYZE_BTN, { ...STATUS_TEXT, content: "**Results:**\n- Found 150 features" }, CLEAR_BTN]
14307
+ * }
14122
14308
  * });
14123
14309
  * ```
14124
14310
  */
@@ -14171,22 +14357,36 @@ interface UiController {
14171
14357
  */
14172
14358
  createPanelElements(args: CreatePanelElementsParams): Promise<UIPanel>;
14173
14359
  /**
14174
- * Updates an element in a panel.
14360
+ * Updates an existing element in a panel. This method can only update elements that
14361
+ * already exist in the panel and have an ID.
14175
14362
  *
14176
14363
  * @param args - The arguments for the method.
14177
14364
  * @param args.panelId - The id of the panel to update the element in.
14178
- * @param args.elements - Array of elements to update (`id` and `type` are required to identify the element to update).
14365
+ * @param args.elements - Array of elements to update. Each element must have an `id` and `type`
14366
+ * to identify which existing element to update. The element must already exist in the panel.
14179
14367
  *
14180
14368
  * @example
14181
14369
  * ```typescript
14370
+ * // 1. Create panel with initial elements
14371
+ * const panelId = await felt.createPanelId();
14372
+ * const STATUS_TEXT = { id: "status-text", type: "Text", content: "Ready" };
14373
+ *
14374
+ * await felt.createOrUpdatePanel({
14375
+ * panel: {
14376
+ * id: panelId,
14377
+ * title: "My Panel",
14378
+ * body: [STATUS_TEXT]
14379
+ * }
14380
+ * });
14381
+ *
14382
+ * // 2. Update the existing element
14182
14383
  * await felt.updatePanelElements({
14183
14384
  * panelId,
14184
14385
  * elements: [
14185
14386
  * {
14186
14387
  * element: {
14187
- * id: "element-1",
14188
- * type: "Text",
14189
- * content: "Hello, world!",
14388
+ * ...STATUS_TEXT, // Reuse the same element structure
14389
+ * content: "Updated content" // Only change what needs updating
14190
14390
  * },
14191
14391
  * },
14192
14392
  * ],
@@ -14627,4 +14827,4 @@ interface FeltController extends ViewportController, UiController, LayersControl
14627
14827
  iframe: HTMLIFrameElement | null;
14628
14828
  }
14629
14829
 
14630
- export { type LayerChangeCallbackParams as $, type TextElementUpdate as A, type ElementsController as B, type CircleElementCreate as C, type MapInteractionEvent as D, type Element as E, type FeltController as F, type GetElementGroupsConstraint as G, type HighlighterElementCreate as H, type ImageElementCreate as I, type InteractionsController as J, type CreateLayersFromGeoJsonParams as K, type LinkElementRead as L, type MarkerElementCreate as M, type NoteElementCreate as N, type DataOnlyLayer as O, type PathElementCreate as P, type FeltTiledVectorSource as Q, type GeoJsonDataVectorSource as R, type GeoJsonFileVectorSource as S, type TextElementCreate as T, type UiControlsOptions as U, type ViewportCenterZoom as V, type GeoJsonUrlVectorSource as W, type GetLayerGroupsConstraint as X, type GetLayersConstraint as Y, type GetRenderedFeaturesConstraint as Z, type Layer as _, type CircleElementRead as a, type LngLatTuple as a$, type LayerCommon as a0, type LayerGroup as a1, type LayerGroupChangeCallbackParams as a2, type LayerProcessingStatus as a3, type LegendItem as a4, type LegendItemChangeCallbackParams as a5, type LegendItemIdentifier as a6, type LegendItemsConstraint as a7, type RasterBand as a8, type RasterLayer as a9, type GetLayerCategoriesParams as aA, type GetLayerHistogramBin as aB, type GetLayerHistogramParams as aC, type GetLayerPrecomputedCalculationParams as aD, type GridConfig as aE, type GridType as aF, type MultiAggregationConfig as aG, type PrecomputedAggregationMethod as aH, type ValueConfiguration as aI, type LayersController as aJ, type MapDetails as aK, type MiscController as aL, type ElementGroupNode as aM, type ElementNode as aN, type EntityNode as aO, type FeatureNode as aP, type FeatureSelection as aQ, type LayerGroupNode as aR, type LayerNode as aS, type SelectionController as aT, type FeltBoundary as aU, type FeltZoom as aV, type GeoJsonFeature as aW, type GeoJsonGeometry as aX, type GeoJsonProperties as aY, type LatLng as aZ, type LineStringGeometry as a_, type RasterLayerSource as aa, type UpdateLayerParams as ab, type VectorLayer as ac, type LayerFeature as ad, type RasterValue as ae, type LayerSchema as af, type LayerSchemaAttribute as ag, type LayerSchemaBooleanAttribute as ah, type LayerSchemaCommonAttribute as ai, type LayerSchemaDateAttribute as aj, type LayerSchemaDateTimeAttribute as ak, type LayerSchemaNumericAttribute as al, type LayerSchemaTextAttribute as am, type FilterExpression as an, type FilterLogicGate as ao, type FilterTernary as ap, type Filters as aq, type GeometryFilter as ar, type LayerBoundaries as as, type LayerFilters as at, type AggregatedGridConfig as au, type AggregationConfig as av, type AggregationMethod as aw, type CountGridConfig as ax, type GetLayerCalculationParams as ay, type GetLayerCategoriesGroup as az, type CircleElementUpdate as b, type UICheckboxGroupElementCreate as b$, type MultiLineStringGeometry as b0, type MultiPointGeometry as b1, type MultiPolygonGeometry as b2, type PointGeometry as b3, type PolygonGeometry as b4, type SetVisibilityRequest as b5, type SortConfig as b6, type SortDirection as b7, type CircleToolSettings as b8, type ConfigurableToolType as b9, type UIButtonElementCreate as bA, type UIButtonElementUpdate as bB, type UITextElement as bC, type UITextElementCreate as bD, type UITextElementUpdate as bE, type UIFlexibleSpaceElement as bF, type UIFlexibleSpaceElementCreate as bG, type UIFlexibleSpaceElementUpdate as bH, type UIDividerElement as bI, type UIDividerElementCreate as bJ, type UIDividerElementUpdate as bK, type UITextInputElement as bL, type UITextInputElementCreate as bM, type UITextInputElementUpdate as bN, type UISelectElement as bO, type UISelectElementCreate as bP, type UISelectElementUpdate as bQ, type UIPanelElement as bR, type UIPanelElementCreate as bS, type UIPanelElementUpdate as bT, type UIGridContainerElement as bU, type UIGridContainerElementCreate as bV, type UIGridContainerElementUpdate as bW, type UIButtonRowElement as bX, type UIButtonRowElementCreate as bY, type UIButtonRowElementUpdate as bZ, type UICheckboxGroupElement as b_, type HighlighterToolSettings as ba, type InputToolSettings as bb, type LineToolSettings as bc, type MarkerToolSettings as bd, type NoteToolSettings as be, type PinToolSettings as bf, type PlaceFrame as bg, type PlaceSymbol as bh, type PolygonToolSettings as bi, type RouteToolSettings as bj, type TextToolSettings as bk, type ToolSettingsChangeEvent as bl, type ToolSettingsMap as bm, type ToolType as bn, type ToolsController as bo, type CreateActionTriggerParams as bp, type CreateOrUpdatePanelParams as bq, type CreatePanelElementsParams as br, type DeletePanelElementsParams as bs, type UiOnMapInteractionsOptions as bt, type UpdateActionTriggerParams as bu, type UpdatePanelElementsParams as bv, type PlacementForUIElement as bw, type UIPanel as bx, type UIPanelCreateOrUpdate as by, type UIButtonElement as bz, type ElementChangeCallbackParams as c, type UICheckboxGroupElementUpdate as c0, type UIRadioGroupElement as c1, type UIRadioGroupElementCreate as c2, type UIRadioGroupElementUpdate as c3, type UIToggleGroupElement as c4, type UIToggleGroupElementCreate as c5, type UIToggleGroupElementUpdate as c6, type UIControlElementOption as c7, type UIActionTriggerCreate as c8, type UiController as c9, type SetViewportCenterZoomParams as ca, type ViewportConstraints as cb, type ViewportFitBoundsParams as cc, type ViewportState as cd, type ViewportController as ce, type UnwrapPromise as cf, uiActionTriggerSchema as cg, type UIPanelElementCreateClonable as ch, uiPanelCreateSchema as ci, type UIButtonElementCreateClonable as cj, type MakeClonableSchema as ck, type UIButtonRowElementCreateClonable as cl, type PromiseOrNot as cm, type UnionToIntersection as cn, type ElementCreate as d, type ElementGroup as e, type ElementGroupChangeCallbackParams as f, type ElementUpdate as g, type GetElementsConstraint as h, type HighlighterElementRead as i, type HighlighterElementUpdate as j, type ImageElementRead as k, type ImageElementUpdate as l, type MarkerElementRead as m, type MarkerElementUpdate as n, type NoteElementRead as o, type NoteElementUpdate as p, type PathElementRead as q, type PathElementUpdate as r, type PlaceElementCreate as s, type PlaceElementRead as t, type PlaceElementUpdate as u, type PolygonElementCreate as v, type PolygonElementRead as w, type PolygonElementUpdate as x, type TextElementRead as y, type zInfer as z };
14830
+ export { type LayerChangeCallbackParams as $, type TextElementUpdate as A, type ElementsController as B, type CircleElementCreate as C, type MapInteractionEvent as D, type Element as E, type FeltController as F, type GetElementGroupsConstraint as G, type HighlighterElementCreate as H, type ImageElementCreate as I, type InteractionsController as J, type CreateLayersFromGeoJsonParams as K, type LinkElementRead as L, type MarkerElementCreate as M, type NoteElementCreate as N, type DataOnlyLayer as O, type PathElementCreate as P, type FeltTiledVectorSource as Q, type GeoJsonDataVectorSource as R, type GeoJsonFileVectorSource as S, type TextElementCreate as T, type UiControlsOptions as U, type ViewportCenterZoom as V, type GeoJsonUrlVectorSource as W, type GetLayerGroupsConstraint as X, type GetLayersConstraint as Y, type GetRenderedFeaturesConstraint as Z, type Layer as _, type CircleElementRead as a, type LngLatTuple as a$, type LayerCommon as a0, type LayerGroup as a1, type LayerGroupChangeCallbackParams as a2, type LayerProcessingStatus as a3, type LegendItem as a4, type LegendItemChangeCallbackParams as a5, type LegendItemIdentifier as a6, type LegendItemsConstraint as a7, type RasterBand as a8, type RasterLayer as a9, type GetLayerCategoriesParams as aA, type GetLayerHistogramBin as aB, type GetLayerHistogramParams as aC, type GetLayerPrecomputedCalculationParams as aD, type GridConfig as aE, type GridType as aF, type MultiAggregationConfig as aG, type PrecomputedAggregationMethod as aH, type ValueConfiguration as aI, type LayersController as aJ, type MapDetails as aK, type MiscController as aL, type ElementGroupNode as aM, type ElementNode as aN, type EntityNode as aO, type FeatureNode as aP, type FeatureSelection as aQ, type LayerGroupNode as aR, type LayerNode as aS, type SelectionController as aT, type FeltBoundary as aU, type FeltZoom as aV, type GeoJsonFeature as aW, type GeoJsonGeometry as aX, type GeoJsonProperties as aY, type LatLng as aZ, type LineStringGeometry as a_, type RasterLayerSource as aa, type UpdateLayerParams as ab, type VectorLayer as ac, type LayerFeature as ad, type RasterValue as ae, type LayerSchema as af, type LayerSchemaAttribute as ag, type LayerSchemaBooleanAttribute as ah, type LayerSchemaCommonAttribute as ai, type LayerSchemaDateAttribute as aj, type LayerSchemaDateTimeAttribute as ak, type LayerSchemaNumericAttribute as al, type LayerSchemaTextAttribute as am, type FilterExpression as an, type FilterLogicGate as ao, type FilterTernary as ap, type Filters as aq, type GeometryFilter as ar, type LayerBoundaries as as, type LayerFilters as at, type AggregatedGridConfig as au, type AggregationConfig as av, type AggregationMethod as aw, type CountGridConfig as ax, type GetLayerCalculationParams as ay, type GetLayerCategoriesGroup as az, type CircleElementUpdate as b, type UICheckboxGroupElementCreate as b$, type MultiLineStringGeometry as b0, type MultiPointGeometry as b1, type MultiPolygonGeometry as b2, type PointGeometry as b3, type PolygonGeometry as b4, type SetVisibilityRequest as b5, type SortConfig as b6, type SortDirection as b7, type CircleToolSettings as b8, type ConfigurableToolType as b9, type UIButtonElementCreate as bA, type UIButtonElementUpdate as bB, type UITextElement as bC, type UITextElementCreate as bD, type UITextElementUpdate as bE, type UIFlexibleSpaceElement as bF, type UIFlexibleSpaceElementCreate as bG, type UIFlexibleSpaceElementUpdate as bH, type UIDividerElement as bI, type UIDividerElementCreate as bJ, type UIDividerElementUpdate as bK, type UITextInputElement as bL, type UITextInputElementCreate as bM, type UITextInputElementUpdate as bN, type UISelectElement as bO, type UISelectElementCreate as bP, type UISelectElementUpdate as bQ, type UIPanelElement as bR, type UIPanelElementCreate as bS, type UIPanelElementUpdate as bT, type UIGridContainerElement as bU, type UIGridContainerElementCreate as bV, type UIGridContainerElementUpdate as bW, type UIButtonRowElement as bX, type UIButtonRowElementCreate as bY, type UIButtonRowElementUpdate as bZ, type UICheckboxGroupElement as b_, type HighlighterToolSettings as ba, type InputToolSettings as bb, type LineToolSettings as bc, type MarkerToolSettings as bd, type NoteToolSettings as be, type PinToolSettings as bf, type PlaceFrame as bg, type PlaceSymbol as bh, type PolygonToolSettings as bi, type RouteToolSettings as bj, type TextToolSettings as bk, type ToolSettingsChangeEvent as bl, type ToolSettingsMap as bm, type ToolType as bn, type ToolsController as bo, type CreateActionTriggerParams as bp, type CreateOrUpdatePanelParams as bq, type CreatePanelElementsParams as br, type DeletePanelElementsParams as bs, type UiOnMapInteractionsOptions as bt, type UpdateActionTriggerParams as bu, type UpdatePanelElementsParams as bv, type PlacementForUIElement as bw, type UIPanel as bx, type UIPanelCreateOrUpdate as by, type UIButtonElement as bz, type ElementChangeCallbackParams as c, type UICheckboxGroupElementUpdate as c0, type UIRadioGroupElement as c1, type UIRadioGroupElementCreate as c2, type UIRadioGroupElementUpdate as c3, type UIToggleGroupElement as c4, type UIToggleGroupElementCreate as c5, type UIToggleGroupElementUpdate as c6, type UIIframeElement as c7, type UIIframeElementCreate as c8, type UIIframeElementUpdate as c9, type UIControlElementOption as ca, type UIActionTriggerCreate as cb, type UiController as cc, type SetViewportCenterZoomParams as cd, type ViewportConstraints as ce, type ViewportFitBoundsParams as cf, type ViewportState as cg, type ViewportController as ch, type UnwrapPromise as ci, uiActionTriggerSchema as cj, type UIPanelElementCreateClonable as ck, uiPanelCreateSchema as cl, type UIButtonElementCreateClonable as cm, type MakeClonableSchema as cn, type UIButtonRowElementCreateClonable as co, type PromiseOrNot as cp, type UnionToIntersection as cq, type ElementCreate as d, type ElementGroup as e, type ElementGroupChangeCallbackParams as f, type ElementUpdate as g, type GetElementsConstraint as h, type HighlighterElementRead as i, type HighlighterElementUpdate as j, type ImageElementRead as k, type ImageElementUpdate as l, type MarkerElementRead as m, type MarkerElementUpdate as n, type NoteElementRead as o, type NoteElementUpdate as p, type PathElementRead as q, type PathElementUpdate as r, type PlaceElementCreate as s, type PlaceElementRead as t, type PlaceElementUpdate as u, type PolygonElementCreate as v, type PolygonElementRead as w, type PolygonElementUpdate as x, type TextElementRead as y, type zInfer as z };