@feltmaps/js-sdk 1.5.0-next.17 → 1.5.0-next.19

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.
@@ -3872,8 +3872,10 @@ interface HighlighterElementCreate extends zInfer<typeof HighlighterCreateSchema
3872
3872
  coordinates: LngLatTuple[][][];
3873
3873
  }
3874
3874
  interface TextElementCreate extends zInfer<typeof TextCreateSchema> {
3875
+ position: LngLatTuple;
3875
3876
  }
3876
3877
  interface NoteElementCreate extends zInfer<typeof NoteCreateSchema> {
3878
+ position: LngLatTuple;
3877
3879
  }
3878
3880
  interface ImageElementCreate extends zInfer<typeof ImageCreateSchema> {
3879
3881
  }
@@ -4117,9 +4119,11 @@ type RasterValue = {
4117
4119
  type LayerProcessingStatus = z.infer<typeof LayerProcessingStatusSchema>;
4118
4120
  declare const LayerProcessingStatusSchema: z.ZodEnum<["processing", "completed", "failed", "incomplete"]>;
4119
4121
  /**
4122
+ * The common properties for all layers.
4123
+ *
4120
4124
  * @group Layers
4121
4125
  */
4122
- interface Layer {
4126
+ interface LayerCommon {
4123
4127
  /**
4124
4128
  * The string identifying the layer
4125
4129
  */
@@ -4166,22 +4170,6 @@ interface Layer {
4166
4170
  * The current processing status of the layer.
4167
4171
  */
4168
4172
  status: LayerProcessingStatus;
4169
- /**
4170
- * The geometry type of the layer.
4171
- *
4172
- * @remarks
4173
- * This will generally be one of:
4174
- * - `"Point"`
4175
- * - `"Line"`
4176
- * - `"Polygon"`
4177
- * - `"Raster"`
4178
- * - `null`
4179
- *
4180
- * When the layer is processing, or it is a data-only layer, it will be null. You should
4181
- * expect this to be able to be any string, however, as more geometry types can be added
4182
- * in the future.
4183
- */
4184
- geometryType: string | null;
4185
4173
  /**
4186
4174
  * The bounding box of the layer in [west, south, east, north] order
4187
4175
  *
@@ -4193,6 +4181,193 @@ interface Layer {
4193
4181
  */
4194
4182
  bounds: FeltBoundary | null;
4195
4183
  }
4184
+ /**
4185
+ * @group Layers
4186
+ */
4187
+ type Layer = RasterLayer | VectorLayer | DataOnlyLayer;
4188
+ /**
4189
+ * A raster layer is a layer that contains raster data that can be rendered on the map
4190
+ *
4191
+ * @group Layers
4192
+ */
4193
+ interface RasterLayer extends LayerCommon {
4194
+ /**
4195
+ * Identifies the type of geometry in the layer.
4196
+ */
4197
+ geometryType: "Raster";
4198
+ /**
4199
+ * The source of the raster layer's data.
4200
+ */
4201
+ source: RasterLayerSource;
4202
+ }
4203
+ /**
4204
+ * The source of a raster layer's data.
4205
+ *
4206
+ * @group Layer sources
4207
+ */
4208
+ interface RasterLayerSource {
4209
+ /**
4210
+ * A URL template for fetching image tiles for the raster.
4211
+ */
4212
+ imageTileTemplateUrl: string;
4213
+ /**
4214
+ * A URL template for fetching encoded tiles for the raster.
4215
+ *
4216
+ * The encoded raster value can be calculated from the red, green, and blue values of the pixel
4217
+ * using the following formula:
4218
+ *
4219
+ * ```
4220
+ * base + ((RED << 16) + (GREEN <<8) + BLUE) * interval
4221
+ * ```
4222
+ * or
4223
+ * ```
4224
+ * base + (RED * 256 * 256 + GREEN * 256 + BLUE) * interval
4225
+ * ```
4226
+ */
4227
+ encodedTileTemplateUrl: string;
4228
+ /**
4229
+ * List of encoded raster bands
4230
+ */
4231
+ bands: Array<RasterBand>;
4232
+ }
4233
+ /**
4234
+ * The RasterBand interface describes the metadata for a raster band, necessary for
4235
+ * calculating the encoded raster value from the red, green, and blue values of the pixel.
4236
+ *
4237
+ * @group Layer sources
4238
+ */
4239
+ interface RasterBand {
4240
+ /**
4241
+ * Encoding base value as a floating point number
4242
+ */
4243
+ base: number;
4244
+ /**
4245
+ * Encoding interval as a floating point number
4246
+ */
4247
+ interval: number;
4248
+ /**
4249
+ * 1-based index of the band in the raster
4250
+ */
4251
+ bandIndex: number;
4252
+ }
4253
+ /**
4254
+ * A vector layer is a layer that contains vector data that can be rendered on the map
4255
+ *
4256
+ * @group Layers
4257
+ */
4258
+ interface VectorLayer extends LayerCommon {
4259
+ /**
4260
+ * Identifies the type of geometry in the layer.
4261
+ */
4262
+ geometryType: "Point" | "Line" | "Polygon";
4263
+ /**
4264
+ * The source of the vector layer's data.
4265
+ */
4266
+ source: FeltTiledVectorSource | GeoJsonUrlVectorSource | Omit<GeoJsonDataVectorSource, "data">;
4267
+ }
4268
+ /**
4269
+ * A tiled vector source is a layer that is populated from data the has been uploaded
4270
+ * to Felt, and processed into vector tiles.
4271
+ *
4272
+ * @group Layer sources
4273
+ */
4274
+ type FeltTiledVectorSource = {
4275
+ /**
4276
+ * Identifies this as a tiled vector source. Typically, these tiles will have been
4277
+ * uploaded to and processed by Felt.
4278
+ */
4279
+ type: "felt";
4280
+ /**
4281
+ * The template URL used for fetching tiles.
4282
+ */
4283
+ tileTemplateUrl: string;
4284
+ };
4285
+ declare const GeoJsonUrlVectorSourceSchema: z.ZodObject<{
4286
+ /**
4287
+ * Identifies this as a GeoJSON URL source.
4288
+ */
4289
+ type: z.ZodLiteral<"geoJsonUrl">;
4290
+ /**
4291
+ * The remote URL of the GeoJSON file used to populate the layer.
4292
+ */
4293
+ url: z.ZodString;
4294
+ }, "strip", z.ZodTypeAny, {
4295
+ type: "geoJsonUrl";
4296
+ url: string;
4297
+ }, {
4298
+ type: "geoJsonUrl";
4299
+ url: string;
4300
+ }>;
4301
+ /**
4302
+ * A GeoJSON URL source is a layer that is populated from a GeoJSON file at a remote URL.
4303
+ *
4304
+ * These sources are ones that have not been uploaded to and processed by Felt, and as such
4305
+ * their capabilities are limited.
4306
+ *
4307
+ * For instance, they cannot be filtered, nor can statistics be fetched for them.
4308
+ *
4309
+ * @group Layer sources
4310
+ */
4311
+ interface GeoJsonUrlVectorSource extends zInfer<typeof GeoJsonUrlVectorSourceSchema> {
4312
+ }
4313
+ /**
4314
+ * A GeoJSON data source is a layer that is populated from GeoJSON data, such as
4315
+ * from a local file, or programatically-created data.
4316
+ *
4317
+ * @group Layer sources
4318
+ */
4319
+ interface GeoJsonDataVectorSource {
4320
+ /**
4321
+ * Identifies this as a GeoJSON data source.
4322
+ */
4323
+ type: "geoJsonData";
4324
+ /**
4325
+ * The GeoJSON data for the layer.
4326
+ */
4327
+ data: object;
4328
+ }
4329
+ declare const GeoJsonFileVectorSourceSchema: z.ZodObject<{
4330
+ /**
4331
+ * Identifies this as a GeoJSON file source.
4332
+ */
4333
+ type: z.ZodLiteral<"geoJsonFile">;
4334
+ /**
4335
+ * The GeoJSON file for the layer.
4336
+ */
4337
+ file: z.ZodType<File, z.ZodTypeDef, File>;
4338
+ }, "strip", z.ZodTypeAny, {
4339
+ type: "geoJsonFile";
4340
+ file: File;
4341
+ }, {
4342
+ type: "geoJsonFile";
4343
+ file: File;
4344
+ }>;
4345
+ /**
4346
+ * A GeoJSON file source is a layer that is populated from a GeoJSON file
4347
+ * on your local machine.
4348
+ *
4349
+ * This is an input-only type. It is converted to a {@link GeoJsonDataVectorSource}
4350
+ * when passed to {@link LayersController.createLayersFromGeoJson}.
4351
+ *
4352
+ * @group Layer sources
4353
+ */
4354
+ interface GeoJsonFileVectorSource extends zInfer<typeof GeoJsonFileVectorSourceSchema> {
4355
+ }
4356
+ /**
4357
+ * A data-only layer doesn't have any geometry, but can be used to join with other layers
4358
+ *
4359
+ * @group Layers
4360
+ */
4361
+ interface DataOnlyLayer extends LayerCommon {
4362
+ /**
4363
+ * Indicates that this layer has no geometry.
4364
+ */
4365
+ geometryType: null;
4366
+ /**
4367
+ * This is always null for data-only layers.
4368
+ */
4369
+ bounds: null;
4370
+ }
4196
4371
  /**
4197
4372
  * @group Layer Groups
4198
4373
  */
@@ -4636,121 +4811,59 @@ interface LayerSchemaDateTimeAttribute extends LayerSchemaCommonAttribute {
4636
4811
  count: number;
4637
4812
  }>;
4638
4813
  }
4639
- declare const EphemeralLayerSourceSchema: z.ZodObject<{
4640
- type: z.ZodLiteral<"application/geo+json">;
4641
- name: z.ZodString;
4642
- geometryStyles: z.ZodOptional<z.ZodObject<{
4643
- Point: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4644
- Line: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4645
- Polygon: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4814
+ /**
4815
+ * The parameters for the {@link LayersController.createLayersFromGeoJson} method.
4816
+ *
4817
+ * @group Layers
4818
+ */
4819
+ declare const CreateLayersFromGeoJsonSchema: z.ZodObject<{
4820
+ source: z.ZodUnion<[z.ZodObject<{
4821
+ /**
4822
+ * Identifies this as a GeoJSON URL source.
4823
+ */
4824
+ type: z.ZodLiteral<"geoJsonUrl">;
4825
+ /**
4826
+ * The remote URL of the GeoJSON file used to populate the layer.
4827
+ */
4828
+ url: z.ZodString;
4646
4829
  }, "strip", z.ZodTypeAny, {
4647
- Point?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4648
- Polygon?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4649
- Line?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4830
+ type: "geoJsonUrl";
4831
+ url: string;
4650
4832
  }, {
4651
- Point?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4652
- Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4653
- Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4654
- }>>;
4655
- }, "strip", z.ZodTypeAny, {
4656
- type: "application/geo+json";
4657
- name: string;
4658
- geometryStyles?: {
4659
- Point?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4660
- Polygon?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4661
- Line?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4662
- } | undefined;
4663
- }, {
4664
- type: "application/geo+json";
4665
- name: string;
4666
- geometryStyles?: {
4667
- Point?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4668
- Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4669
- Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4670
- } | undefined;
4671
- }>;
4672
- interface EphemeralLayerSource extends zInfer<typeof EphemeralLayerSourceSchema> {
4673
- }
4674
- declare const GeoJsonFileSourceSchema: z.ZodObject<z.objectUtil.extendShape<{
4675
- type: z.ZodLiteral<"application/geo+json">;
4676
- name: z.ZodString;
4677
- geometryStyles: z.ZodOptional<z.ZodObject<{
4678
- Point: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4679
- Line: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4680
- Polygon: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4833
+ type: "geoJsonUrl";
4834
+ url: string;
4835
+ }>, z.ZodObject<{
4836
+ type: z.ZodLiteral<"geoJsonData">;
4837
+ data: z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
4681
4838
  }, "strip", z.ZodTypeAny, {
4682
- Point?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4683
- Polygon?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4684
- Line?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4839
+ type: "geoJsonData";
4840
+ data: {} & {
4841
+ [k: string]: unknown;
4842
+ };
4685
4843
  }, {
4686
- Point?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4687
- Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4688
- Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4689
- }>>;
4690
- }, {
4691
- file: z.ZodType<File, z.ZodTypeDef, File>;
4692
- }>, "strip", z.ZodTypeAny, {
4693
- type: "application/geo+json";
4694
- name: string;
4695
- file: File;
4696
- geometryStyles?: {
4697
- Point?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4698
- Polygon?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4699
- Line?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4700
- } | undefined;
4701
- }, {
4702
- type: "application/geo+json";
4703
- name: string;
4704
- file: File;
4705
- geometryStyles?: {
4706
- Point?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4707
- Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4708
- Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4709
- } | undefined;
4710
- }>;
4711
- interface GeoJsonFileSource extends zInfer<typeof GeoJsonFileSourceSchema>, EphemeralLayerSource {
4712
- }
4713
- declare const GeoJsonUrlSourceSchema: z.ZodObject<z.objectUtil.extendShape<{
4714
- type: z.ZodLiteral<"application/geo+json">;
4715
- name: z.ZodString;
4716
- geometryStyles: z.ZodOptional<z.ZodObject<{
4717
- Point: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4718
- Line: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4719
- Polygon: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
4844
+ type: "geoJsonData";
4845
+ data: {} & {
4846
+ [k: string]: unknown;
4847
+ };
4848
+ }>, z.ZodObject<{
4849
+ /**
4850
+ * Identifies this as a GeoJSON file source.
4851
+ */
4852
+ type: z.ZodLiteral<"geoJsonFile">;
4853
+ /**
4854
+ * The GeoJSON file for the layer.
4855
+ */
4856
+ file: z.ZodType<File, z.ZodTypeDef, File>;
4720
4857
  }, "strip", z.ZodTypeAny, {
4721
- Point?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4722
- Polygon?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4723
- Line?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4858
+ type: "geoJsonFile";
4859
+ file: File;
4724
4860
  }, {
4725
- Point?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4726
- Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4727
- Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4728
- }>>;
4729
- }, {
4730
- url: z.ZodString;
4731
- }>, "strip", z.ZodTypeAny, {
4732
- type: "application/geo+json";
4733
- name: string;
4734
- url: string;
4735
- geometryStyles?: {
4736
- Point?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4737
- Polygon?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4738
- Line?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4739
- } | undefined;
4740
- }, {
4741
- type: "application/geo+json";
4742
- name: string;
4743
- url: string;
4744
- geometryStyles?: {
4745
- Point?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4746
- Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4747
- Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4748
- } | undefined;
4749
- }>;
4750
- interface GeoJsonUrlSource extends z.infer<typeof GeoJsonUrlSourceSchema>, EphemeralLayerSource {
4751
- }
4752
- declare const GeoJsonArrayBufferSourceSchema: z.ZodObject<z.objectUtil.extendShape<{
4753
- type: z.ZodLiteral<"application/geo+json">;
4861
+ type: "geoJsonFile";
4862
+ file: File;
4863
+ }>]>;
4864
+ /**
4865
+ * The name of the layer to create.
4866
+ */
4754
4867
  name: z.ZodString;
4755
4868
  geometryStyles: z.ZodOptional<z.ZodObject<{
4756
4869
  Point: z.ZodOptional<z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>>;
@@ -4765,28 +4878,83 @@ declare const GeoJsonArrayBufferSourceSchema: z.ZodObject<z.objectUtil.extendSha
4765
4878
  Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4766
4879
  Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4767
4880
  }>>;
4768
- }, {
4769
- arrayBuffer: z.ZodType<ArrayBuffer, z.ZodTypeDef, ArrayBuffer>;
4770
- }>, "strip", z.ZodTypeAny, {
4771
- type: "application/geo+json";
4881
+ }, "strip", z.ZodTypeAny, {
4772
4882
  name: string;
4773
- arrayBuffer: ArrayBuffer;
4883
+ source: {
4884
+ type: "geoJsonUrl";
4885
+ url: string;
4886
+ } | {
4887
+ type: "geoJsonData";
4888
+ data: {} & {
4889
+ [k: string]: unknown;
4890
+ };
4891
+ } | {
4892
+ type: "geoJsonFile";
4893
+ file: File;
4894
+ };
4774
4895
  geometryStyles?: {
4775
4896
  Point?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4776
4897
  Polygon?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4777
4898
  Line?: z.objectOutputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4778
4899
  } | undefined;
4779
4900
  }, {
4780
- type: "application/geo+json";
4781
4901
  name: string;
4782
- arrayBuffer: ArrayBuffer;
4902
+ source: {
4903
+ type: "geoJsonUrl";
4904
+ url: string;
4905
+ } | {
4906
+ type: "geoJsonData";
4907
+ data: {} & {
4908
+ [k: string]: unknown;
4909
+ };
4910
+ } | {
4911
+ type: "geoJsonFile";
4912
+ file: File;
4913
+ };
4783
4914
  geometryStyles?: {
4784
4915
  Point?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4785
4916
  Polygon?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4786
4917
  Line?: z.objectInputType<{}, z.ZodTypeAny, "passthrough"> | undefined;
4787
4918
  } | undefined;
4788
4919
  }>;
4789
- interface GeoJsonArrayBufferSource extends zInfer<typeof GeoJsonArrayBufferSourceSchema>, EphemeralLayerSource {
4920
+ interface CreateLayersFromGeoJsonParams extends Omit<zInfer<typeof CreateLayersFromGeoJsonSchema>, "source" | "geometryStyles"> {
4921
+ /**
4922
+ * The source of the GeoJSON data.
4923
+ */
4924
+ source: GeoJsonDataVectorSource | GeoJsonFileVectorSource | GeoJsonUrlVectorSource;
4925
+ /**
4926
+ * The styles to apply to each geometry on the layer.
4927
+ *
4928
+ * Each style should be a valid FSL style, as described in {@link Layer.style}.
4929
+ *
4930
+ * These are optional, and if missing will use a default style determined by
4931
+ * Felt, which you can consider to be undefined behaviour.
4932
+ *
4933
+ * @example
4934
+ * ```typescript
4935
+ * const layer = await layersController.createLayersFromGeoJson({
4936
+ * name: "My Layer",
4937
+ * geometryStyles: {
4938
+ * Point: {
4939
+ * paint: { color: "red", size: 8 },
4940
+ * },
4941
+ * Line: {
4942
+ * paint: { color: "blue", size: 4 },
4943
+ * config: { labelAttribute: ["name"] },
4944
+ * label: { minZoom: 0 },
4945
+ * },
4946
+ * Polygon: {
4947
+ * paint: { color: "green", strokeColor: "darkgreen" },
4948
+ * },
4949
+ * },
4950
+ * });
4951
+ * ```
4952
+ */
4953
+ geometryStyles?: {
4954
+ Point?: object;
4955
+ Line?: object;
4956
+ Polygon?: object;
4957
+ };
4790
4958
  }
4791
4959
 
4792
4960
  /**
@@ -5035,6 +5203,16 @@ interface MultiAggregationConfig<T extends AggregationMethod | "count"> extends
5035
5203
  */
5036
5204
  attribute?: string;
5037
5205
  }
5206
+ /**
5207
+ * The common type for filtering data by a spatial boundary.
5208
+ *
5209
+ * This can be either:
5210
+ * - `FeltBoundary`: a [w, s, e, n] bounding box
5211
+ * - `PolygonGeometry`: a GeoJSON Polygon geometry
5212
+ * - `MultiPolygonGeometry`: a GeoJSON MultiPolygon geometry
5213
+ * - `LngLatTuple[]`: a list of coordinates describing a single ring of a polygon
5214
+ */
5215
+ type GeometryFilter = FeltBoundary | PolygonGeometry | MultiPolygonGeometry | LngLatTuple[];
5038
5216
  declare const ValueConfigurationSchema: z.ZodObject<{
5039
5217
  boundary: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodObject<{
5040
5218
  type: z.ZodLiteral<"Polygon">;
@@ -5045,6 +5223,15 @@ declare const ValueConfigurationSchema: z.ZodObject<{
5045
5223
  }, {
5046
5224
  type: "Polygon";
5047
5225
  coordinates: [number, number][][];
5226
+ }>, z.ZodObject<{
5227
+ type: z.ZodLiteral<"MultiPolygon">;
5228
+ coordinates: z.ZodArray<z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
5229
+ }, "strip", z.ZodTypeAny, {
5230
+ type: "MultiPolygon";
5231
+ coordinates: [number, number][][][];
5232
+ }, {
5233
+ type: "MultiPolygon";
5234
+ coordinates: [number, number][][][];
5048
5235
  }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
5049
5236
  filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
5050
5237
  aggregation: z.ZodOptional<z.ZodObject<{
@@ -5067,6 +5254,9 @@ declare const ValueConfigurationSchema: z.ZodObject<{
5067
5254
  boundary?: [number, number, number, number] | [number, number][] | {
5068
5255
  type: "Polygon";
5069
5256
  coordinates: [number, number][][];
5257
+ } | {
5258
+ type: "MultiPolygon";
5259
+ coordinates: [number, number][][][];
5070
5260
  } | undefined;
5071
5261
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5072
5262
  aggregation?: {
@@ -5077,6 +5267,9 @@ declare const ValueConfigurationSchema: z.ZodObject<{
5077
5267
  boundary?: [number, number, number, number] | [number, number][] | {
5078
5268
  type: "Polygon";
5079
5269
  coordinates: [number, number][][];
5270
+ } | {
5271
+ type: "MultiPolygon";
5272
+ coordinates: [number, number][][][];
5080
5273
  } | undefined;
5081
5274
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5082
5275
  aggregation?: {
@@ -5094,13 +5287,11 @@ declare const ValueConfigurationSchema: z.ZodObject<{
5094
5287
  */
5095
5288
  interface ValueConfiguration extends zInfer<typeof ValueConfigurationSchema> {
5096
5289
  /**
5097
- * A spatial boundary to filter what gets counted or aggregated, while still including
5098
- * all possible categories or bin ranges in the results.
5290
+ * The spatial boundary for what to count or aggregate.
5099
5291
  */
5100
- boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
5292
+ boundary?: GeometryFilter;
5101
5293
  /**
5102
- * Attribute filters to determine what gets counted or aggregated, while still including
5103
- * all possible categories or bin ranges in the results.
5294
+ * Attribute filters to determine what gets counted or aggregated.
5104
5295
  */
5105
5296
  filters?: Filters;
5106
5297
  /**
@@ -5135,6 +5326,15 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5135
5326
  }, {
5136
5327
  type: "Polygon";
5137
5328
  coordinates: [number, number][][];
5329
+ }>, z.ZodObject<{
5330
+ type: z.ZodLiteral<"MultiPolygon">;
5331
+ coordinates: z.ZodArray<z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
5332
+ }, "strip", z.ZodTypeAny, {
5333
+ type: "MultiPolygon";
5334
+ coordinates: [number, number][][][];
5335
+ }, {
5336
+ type: "MultiPolygon";
5337
+ coordinates: [number, number][][][];
5138
5338
  }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
5139
5339
  filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
5140
5340
  values: z.ZodOptional<z.ZodObject<{
@@ -5147,6 +5347,15 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5147
5347
  }, {
5148
5348
  type: "Polygon";
5149
5349
  coordinates: [number, number][][];
5350
+ }>, z.ZodObject<{
5351
+ type: z.ZodLiteral<"MultiPolygon">;
5352
+ coordinates: z.ZodArray<z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
5353
+ }, "strip", z.ZodTypeAny, {
5354
+ type: "MultiPolygon";
5355
+ coordinates: [number, number][][][];
5356
+ }, {
5357
+ type: "MultiPolygon";
5358
+ coordinates: [number, number][][][];
5150
5359
  }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
5151
5360
  filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
5152
5361
  aggregation: z.ZodOptional<z.ZodObject<{
@@ -5169,6 +5378,9 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5169
5378
  boundary?: [number, number, number, number] | [number, number][] | {
5170
5379
  type: "Polygon";
5171
5380
  coordinates: [number, number][][];
5381
+ } | {
5382
+ type: "MultiPolygon";
5383
+ coordinates: [number, number][][][];
5172
5384
  } | undefined;
5173
5385
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5174
5386
  aggregation?: {
@@ -5179,6 +5391,9 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5179
5391
  boundary?: [number, number, number, number] | [number, number][] | {
5180
5392
  type: "Polygon";
5181
5393
  coordinates: [number, number][][];
5394
+ } | {
5395
+ type: "MultiPolygon";
5396
+ coordinates: [number, number][][][];
5182
5397
  } | undefined;
5183
5398
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5184
5399
  aggregation?: {
@@ -5193,6 +5408,9 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5193
5408
  boundary?: [number, number, number, number] | [number, number][] | {
5194
5409
  type: "Polygon";
5195
5410
  coordinates: [number, number][][];
5411
+ } | {
5412
+ type: "MultiPolygon";
5413
+ coordinates: [number, number][][][];
5196
5414
  } | undefined;
5197
5415
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5198
5416
  aggregation?: {
@@ -5203,6 +5421,9 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5203
5421
  boundary?: [number, number, number, number] | [number, number][] | {
5204
5422
  type: "Polygon";
5205
5423
  coordinates: [number, number][][];
5424
+ } | {
5425
+ type: "MultiPolygon";
5426
+ coordinates: [number, number][][][];
5206
5427
  } | undefined;
5207
5428
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5208
5429
  limit?: number | undefined;
@@ -5213,6 +5434,9 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5213
5434
  boundary?: [number, number, number, number] | [number, number][] | {
5214
5435
  type: "Polygon";
5215
5436
  coordinates: [number, number][][];
5437
+ } | {
5438
+ type: "MultiPolygon";
5439
+ coordinates: [number, number][][][];
5216
5440
  } | undefined;
5217
5441
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5218
5442
  aggregation?: {
@@ -5223,6 +5447,9 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5223
5447
  boundary?: [number, number, number, number] | [number, number][] | {
5224
5448
  type: "Polygon";
5225
5449
  coordinates: [number, number][][];
5450
+ } | {
5451
+ type: "MultiPolygon";
5452
+ coordinates: [number, number][][][];
5226
5453
  } | undefined;
5227
5454
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5228
5455
  limit?: number | undefined;
@@ -5233,15 +5460,13 @@ declare const GetLayerCategoriesParamsSchema: z.ZodObject<{
5233
5460
  */
5234
5461
  interface GetLayerCategoriesParams extends zInfer<typeof GetLayerCategoriesParamsSchema> {
5235
5462
  /**
5236
- * Attribute filters to determine what gets counted or aggregated.
5463
+ * Attribute filters for the features to include when calculating the categories.
5237
5464
  */
5238
5465
  filters?: Filters;
5239
5466
  /**
5240
- * A spatial boundary to filter what gets counted or aggregated. This can be either
5241
- * a [w, s, e, n] bounding box, a GeoJSON Polygon geometry, or a list of coordinates
5242
- * that form a polyline.
5467
+ * The spatial boundary for the features to include when calculating the categories.
5243
5468
  */
5244
- boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
5469
+ boundary?: GeometryFilter;
5245
5470
  /**
5246
5471
  * Configuration for filtering and aggregating values while preserving the full set of
5247
5472
  * categories in the results.
@@ -5313,6 +5538,15 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5313
5538
  }, {
5314
5539
  type: "Polygon";
5315
5540
  coordinates: [number, number][][];
5541
+ }>, z.ZodObject<{
5542
+ type: z.ZodLiteral<"MultiPolygon">;
5543
+ coordinates: z.ZodArray<z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
5544
+ }, "strip", z.ZodTypeAny, {
5545
+ type: "MultiPolygon";
5546
+ coordinates: [number, number][][][];
5547
+ }, {
5548
+ type: "MultiPolygon";
5549
+ coordinates: [number, number][][][];
5316
5550
  }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
5317
5551
  filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
5318
5552
  /**
@@ -5338,6 +5572,15 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5338
5572
  }, {
5339
5573
  type: "Polygon";
5340
5574
  coordinates: [number, number][][];
5575
+ }>, z.ZodObject<{
5576
+ type: z.ZodLiteral<"MultiPolygon">;
5577
+ coordinates: z.ZodArray<z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
5578
+ }, "strip", z.ZodTypeAny, {
5579
+ type: "MultiPolygon";
5580
+ coordinates: [number, number][][][];
5581
+ }, {
5582
+ type: "MultiPolygon";
5583
+ coordinates: [number, number][][][];
5341
5584
  }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
5342
5585
  filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
5343
5586
  aggregation: z.ZodOptional<z.ZodObject<{
@@ -5360,6 +5603,9 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5360
5603
  boundary?: [number, number, number, number] | [number, number][] | {
5361
5604
  type: "Polygon";
5362
5605
  coordinates: [number, number][][];
5606
+ } | {
5607
+ type: "MultiPolygon";
5608
+ coordinates: [number, number][][][];
5363
5609
  } | undefined;
5364
5610
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5365
5611
  aggregation?: {
@@ -5370,6 +5616,9 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5370
5616
  boundary?: [number, number, number, number] | [number, number][] | {
5371
5617
  type: "Polygon";
5372
5618
  coordinates: [number, number][][];
5619
+ } | {
5620
+ type: "MultiPolygon";
5621
+ coordinates: [number, number][][][];
5373
5622
  } | undefined;
5374
5623
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5375
5624
  aggregation?: {
@@ -5391,6 +5640,9 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5391
5640
  boundary?: [number, number, number, number] | [number, number][] | {
5392
5641
  type: "Polygon";
5393
5642
  coordinates: [number, number][][];
5643
+ } | {
5644
+ type: "MultiPolygon";
5645
+ coordinates: [number, number][][][];
5394
5646
  } | undefined;
5395
5647
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5396
5648
  aggregation?: {
@@ -5401,6 +5653,9 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5401
5653
  boundary?: [number, number, number, number] | [number, number][] | {
5402
5654
  type: "Polygon";
5403
5655
  coordinates: [number, number][][];
5656
+ } | {
5657
+ type: "MultiPolygon";
5658
+ coordinates: [number, number][][][];
5404
5659
  } | undefined;
5405
5660
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5406
5661
  }, {
@@ -5417,6 +5672,9 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5417
5672
  boundary?: [number, number, number, number] | [number, number][] | {
5418
5673
  type: "Polygon";
5419
5674
  coordinates: [number, number][][];
5675
+ } | {
5676
+ type: "MultiPolygon";
5677
+ coordinates: [number, number][][][];
5420
5678
  } | undefined;
5421
5679
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5422
5680
  aggregation?: {
@@ -5427,6 +5685,9 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5427
5685
  boundary?: [number, number, number, number] | [number, number][] | {
5428
5686
  type: "Polygon";
5429
5687
  coordinates: [number, number][][];
5688
+ } | {
5689
+ type: "MultiPolygon";
5690
+ coordinates: [number, number][][][];
5430
5691
  } | undefined;
5431
5692
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5432
5693
  }>;
@@ -5436,15 +5697,13 @@ declare const GetLayerHistogramParamsSchema: z.ZodObject<{
5436
5697
  */
5437
5698
  interface GetLayerHistogramParams extends zInfer<typeof GetLayerHistogramParamsSchema> {
5438
5699
  /**
5439
- * Attribute filters to determine what gets counted or aggregated.
5700
+ * Attribute filters for the features to include when calculating the histogram bins.
5440
5701
  */
5441
5702
  filters?: Filters;
5442
5703
  /**
5443
- * A spatial boundary to filter what gets counted or aggregated. This can be either
5444
- * a [w, s, e, n] bounding box, a GeoJSON Polygon geometry, or a list of coordinates
5445
- * that form a polyline.
5704
+ * The spatial boundary for the features to include when calculating the histogram bins.
5446
5705
  */
5447
- boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
5706
+ boundary?: GeometryFilter;
5448
5707
  }
5449
5708
  declare const GetLayerHistogramBinSchema: z.ZodObject<{
5450
5709
  /**
@@ -5487,6 +5746,15 @@ declare const GetLayerCalculationParamsSchema: z.ZodObject<{
5487
5746
  }, {
5488
5747
  type: "Polygon";
5489
5748
  coordinates: [number, number][][];
5749
+ }>, z.ZodObject<{
5750
+ type: z.ZodLiteral<"MultiPolygon">;
5751
+ coordinates: z.ZodArray<z.ZodArray<z.ZodEffects<z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
5752
+ }, "strip", z.ZodTypeAny, {
5753
+ type: "MultiPolygon";
5754
+ coordinates: [number, number][][][];
5755
+ }, {
5756
+ type: "MultiPolygon";
5757
+ coordinates: [number, number][][][];
5490
5758
  }>, z.ZodArray<z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, "many">]>>;
5491
5759
  filters: z.ZodOptional<z.ZodUnion<[z.ZodType<FilterTernary, z.ZodTypeDef, FilterTernary>, z.ZodUnion<[z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["in", "ni"]>, z.ZodUnion<[z.ZodArray<z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>, "many">, z.ZodNull]>], null>, z.ZodTuple<[z.ZodUnion<[z.ZodString, z.ZodNull]>, z.ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, z.ZodUnion<[z.ZodNumber, z.ZodString, z.ZodBoolean, z.ZodNull]>], null>]>, z.ZodNull, z.ZodBoolean]>>;
5492
5760
  aggregation: z.ZodObject<{
@@ -5514,6 +5782,9 @@ declare const GetLayerCalculationParamsSchema: z.ZodObject<{
5514
5782
  boundary?: [number, number, number, number] | [number, number][] | {
5515
5783
  type: "Polygon";
5516
5784
  coordinates: [number, number][][];
5785
+ } | {
5786
+ type: "MultiPolygon";
5787
+ coordinates: [number, number][][][];
5517
5788
  } | undefined;
5518
5789
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5519
5790
  }, {
@@ -5525,6 +5796,9 @@ declare const GetLayerCalculationParamsSchema: z.ZodObject<{
5525
5796
  boundary?: [number, number, number, number] | [number, number][] | {
5526
5797
  type: "Polygon";
5527
5798
  coordinates: [number, number][][];
5799
+ } | {
5800
+ type: "MultiPolygon";
5801
+ coordinates: [number, number][][][];
5528
5802
  } | undefined;
5529
5803
  filters?: boolean | [string | null, "in" | "ni", (string | number | boolean | null)[] | null] | [string | null, "lt" | "gt" | "le" | "ge" | "eq" | "ne" | "cn" | "nc" | "is" | "isnt", string | number | boolean | null] | FilterTernary | null | undefined;
5530
5804
  }>;
@@ -5534,15 +5808,13 @@ declare const GetLayerCalculationParamsSchema: z.ZodObject<{
5534
5808
  */
5535
5809
  interface GetLayerCalculationParams<T extends AggregationMethod | "count"> extends z.infer<typeof GetLayerCalculationParamsSchema> {
5536
5810
  /**
5537
- * Attribute filters to determine what gets counted or aggregated.
5811
+ * Attribute filters for the features to include when calculating the aggregate value.
5538
5812
  */
5539
5813
  filters?: Filters;
5540
5814
  /**
5541
- * A spatial boundary to filter what gets counted or aggregated. This can be either
5542
- * a [w, s, e, n] bounding box, a GeoJSON Polygon geometry, or a list of coordinates
5543
- * that form a polyline.
5815
+ * The spatial boundary for the features to include when calculating the aggregate value.
5544
5816
  */
5545
- boundary?: PolygonGeometry | LngLatTuple[] | FeltBoundary;
5817
+ boundary?: GeometryFilter;
5546
5818
  /**
5547
5819
  * Specifies how to aggregate values within each category or bin. When omitted,
5548
5820
  * features are counted. When specified, the chosen calculation (avg, sum, etc.)
@@ -6102,4 +6374,4 @@ declare const ViewportFitBoundsParamsSchema: z.ZodObject<{
6102
6374
  bounds: [number, number, number, number];
6103
6375
  }>;
6104
6376
 
6105
- export type { CircleElementUpdate as $, GetLayerHistogramBin as A, AggregationMethod as B, GetLayerCalculationParams as C, LayerSchema as D, Element as E, Filters as F, GeoJsonGeometry as G, MapDetails as H, EntityNode as I, FeatureSelection as J, InputToolSettings as K, Layer as L, MapInteractionEvent as M, ConfigurableToolType as N, ToolSettingsMap as O, ToolSettingsChangeEvent as P, zInfer as Q, SortConfig as R, SetVisibilityRequest as S, ToolType as T, SetViewportCenterZoomParams as U, ViewportState as V, ViewportConstraints as W, ViewportFitBoundsParams as X, ViewportCenterZoom as Y, CircleElementCreate as Z, CircleElementRead as _, GetElementsConstraint as a, PinToolSettings as a$, HighlighterElementCreate as a0, HighlighterElementRead as a1, HighlighterElementUpdate as a2, ImageElementCreate as a3, ImageElementRead as a4, ImageElementUpdate as a5, LinkElementRead as a6, MarkerElementCreate as a7, MarkerElementRead as a8, MarkerElementUpdate as a9, FilterLogicGate as aA, FilterTernary as aB, AggregationConfig as aC, MultiAggregationConfig as aD, ValueConfiguration as aE, ElementGroupNode as aF, ElementNode as aG, FeatureNode as aH, LayerGroupNode as aI, LayerNode as aJ, FeltBoundary as aK, FeltZoom as aL, GeoJsonProperties as aM, LatLng as aN, LineStringGeometry as aO, LngLatTuple as aP, MultiLineStringGeometry as aQ, MultiPointGeometry as aR, MultiPolygonGeometry as aS, PointGeometry as aT, PolygonGeometry as aU, SortDirection as aV, CircleToolSettings as aW, HighlighterToolSettings as aX, LineToolSettings as aY, MarkerToolSettings as aZ, NoteToolSettings as a_, NoteElementCreate as aa, NoteElementRead as ab, NoteElementUpdate as ac, PathElementCreate as ad, PathElementRead as ae, PathElementUpdate as af, PlaceElementCreate as ag, PlaceElementRead as ah, PlaceElementUpdate as ai, PolygonElementCreate as aj, PolygonElementRead as ak, PolygonElementUpdate as al, TextElementCreate as am, TextElementRead as an, TextElementUpdate as ao, EphemeralLayerSource as ap, LayerProcessingStatus as aq, RasterValue as ar, LayerSchemaAttribute as as, LayerSchemaBooleanAttribute as at, LayerSchemaCommonAttribute as au, LayerSchemaDateAttribute as av, LayerSchemaDateTimeAttribute as aw, LayerSchemaNumericAttribute as ax, LayerSchemaTextAttribute as ay, FilterExpression as az, ElementGroup as b, PlaceFrame as b0, PlaceSymbol as b1, PolygonToolSettings as b2, RouteToolSettings as b3, TextToolSettings as b4, UnionToIntersection as b5, PromiseOrNot as b6, GetElementGroupsConstraint as c, ElementChangeCallbackParams as d, ElementGroupChangeCallbackParams as e, ElementCreate as f, ElementUpdate as g, GetLayersConstraint as h, LayerChangeCallbackParams as i, GeoJsonArrayBufferSource as j, GeoJsonFileSource as k, GeoJsonUrlSource as l, LayerGroup as m, GetLayerGroupsConstraint as n, LayerGroupChangeCallbackParams as o, LegendItemIdentifier as p, LegendItem as q, LegendItemsConstraint as r, LegendItemChangeCallbackParams as s, LayerFilters as t, GetRenderedFeaturesConstraint as u, LayerFeature as v, GeoJsonFeature as w, GetLayerCategoriesParams as x, GetLayerCategoriesGroup as y, GetLayerHistogramParams as z };
6377
+ export type { HighlighterElementRead as $, AggregationMethod as A, MapDetails as B, CreateLayersFromGeoJsonParams as C, EntityNode as D, Element as E, Filters as F, GeoJsonGeometry as G, FeatureSelection as H, InputToolSettings as I, ConfigurableToolType as J, ToolSettingsMap as K, Layer as L, MapInteractionEvent as M, ToolSettingsChangeEvent as N, zInfer as O, SortConfig as P, SetViewportCenterZoomParams as Q, ViewportConstraints as R, SetVisibilityRequest as S, ToolType as T, ViewportFitBoundsParams as U, ViewportState as V, ViewportCenterZoom as W, CircleElementCreate as X, CircleElementRead as Y, CircleElementUpdate as Z, HighlighterElementCreate as _, GetElementsConstraint as a, PointGeometry as a$, HighlighterElementUpdate as a0, ImageElementCreate as a1, ImageElementRead as a2, ImageElementUpdate as a3, LinkElementRead as a4, MarkerElementCreate as a5, MarkerElementRead as a6, MarkerElementUpdate as a7, NoteElementCreate as a8, NoteElementRead as a9, LayerSchemaBooleanAttribute as aA, LayerSchemaCommonAttribute as aB, LayerSchemaDateAttribute as aC, LayerSchemaDateTimeAttribute as aD, LayerSchemaNumericAttribute as aE, LayerSchemaTextAttribute as aF, FilterExpression as aG, FilterLogicGate as aH, FilterTernary as aI, AggregationConfig as aJ, GeometryFilter as aK, MultiAggregationConfig as aL, ValueConfiguration as aM, ElementGroupNode as aN, ElementNode as aO, FeatureNode as aP, LayerGroupNode as aQ, LayerNode as aR, FeltBoundary as aS, FeltZoom as aT, GeoJsonProperties as aU, LatLng as aV, LineStringGeometry as aW, LngLatTuple as aX, MultiLineStringGeometry as aY, MultiPointGeometry as aZ, MultiPolygonGeometry as a_, NoteElementUpdate as aa, PathElementCreate as ab, PathElementRead as ac, PathElementUpdate as ad, PlaceElementCreate as ae, PlaceElementRead as af, PlaceElementUpdate as ag, PolygonElementCreate as ah, PolygonElementRead as ai, PolygonElementUpdate as aj, TextElementCreate as ak, TextElementRead as al, TextElementUpdate as am, DataOnlyLayer as an, FeltTiledVectorSource as ao, GeoJsonDataVectorSource as ap, GeoJsonFileVectorSource as aq, GeoJsonUrlVectorSource as ar, LayerCommon as as, LayerProcessingStatus as at, RasterBand as au, RasterLayer as av, RasterLayerSource as aw, RasterValue as ax, VectorLayer as ay, LayerSchemaAttribute as az, ElementGroup as b, PolygonGeometry as b0, SortDirection as b1, CircleToolSettings as b2, HighlighterToolSettings as b3, LineToolSettings as b4, MarkerToolSettings as b5, NoteToolSettings as b6, PinToolSettings as b7, PlaceFrame as b8, PlaceSymbol as b9, PolygonToolSettings as ba, RouteToolSettings as bb, TextToolSettings as bc, UnionToIntersection as bd, PromiseOrNot as be, GetElementGroupsConstraint as c, ElementChangeCallbackParams as d, ElementGroupChangeCallbackParams as e, ElementCreate as f, ElementUpdate as g, GetLayersConstraint as h, LayerChangeCallbackParams as i, LayerGroup as j, GetLayerGroupsConstraint as k, LayerGroupChangeCallbackParams as l, LegendItemIdentifier as m, LegendItem as n, LegendItemsConstraint as o, LegendItemChangeCallbackParams as p, LayerFilters as q, GetRenderedFeaturesConstraint as r, LayerFeature as s, GeoJsonFeature as t, GetLayerCategoriesParams as u, GetLayerCategoriesGroup as v, GetLayerHistogramParams as w, GetLayerHistogramBin as x, GetLayerCalculationParams as y, LayerSchema as z };