@feltmaps/js-sdk 1.10.2-next.0 → 1.11.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6100,12 +6100,28 @@ interface RasterLayerSource {
6100
6100
  bands: Array<RasterBand>;
6101
6101
  }
6102
6102
  /**
6103
- * The RasterBand interface describes the metadata for a raster band, necessary for
6104
- * calculating the encoded raster value from the red, green, and blue values of the pixel.
6103
+ * The RasterBand interface describes one band of a raster: how to identify it when
6104
+ * asking for statistics, what to call it, and the values needed to calculate the
6105
+ * encoded raster value from the red, green, and blue values of a pixel.
6105
6106
  *
6106
6107
  * @group Layer sources
6107
6108
  */
6108
6109
  interface RasterBand {
6110
+ /**
6111
+ * The identifier for this band, such as `"band:1"`.
6112
+ *
6113
+ * Pass this to the raster statistics methods, such as
6114
+ * {@link LayersController.getRasterAggregates}, and use it to refer to the band
6115
+ * inside a filter.
6116
+ */
6117
+ id: string;
6118
+ /**
6119
+ * The name of the band, such as "Red" or "Elevation".
6120
+ *
6121
+ * Felt takes this from the raster itself when the file names its bands, and
6122
+ * falls back to "Band 1", "Band 2" and so on.
6123
+ */
6124
+ displayName: string;
6109
6125
  /**
6110
6126
  * Encoding base value as a floating point number
6111
6127
  */
@@ -8188,6 +8204,633 @@ interface GetLayerPrecomputedCalculationParams extends TypeOf<typeof GetLayerPre
8188
8204
  gridConfig: GridConfig;
8189
8205
  }
8190
8206
 
8207
+ /**
8208
+ * The spatial boundary for a raster statistic.
8209
+ *
8210
+ * Raster statistics accept everything a vector statistic accepts, and also accept
8211
+ * a line. A polygon or bounding box selects the pixels whose centres fall inside
8212
+ * it. A line is sampled along its length instead, so its statistics are weighted
8213
+ * by distance rather than by area.
8214
+ *
8215
+ * @group Stats
8216
+ */
8217
+ type RasterGeometryFilter = GeometryFilter | LineStringGeometry | MultiLineStringGeometry;
8218
+ declare const RasterAggregationMethodSchema: ZodEnum<["avg", "min", "max", "sum", "median", "stddev", "majority", "area"]>;
8219
+ /**
8220
+ * A statistic that can be calculated for a raster band.
8221
+ *
8222
+ * `area` is the ground area of the selected pixels, in square metres. `majority`
8223
+ * is the most common value, and applies only to a band holding whole numbers.
8224
+ *
8225
+ * Neither `sum` nor `area` is available for a line boundary, because both need a
8226
+ * ground area for each pixel and a line only samples points. A request for a
8227
+ * statistic that the band or the boundary cannot answer throws.
8228
+ *
8229
+ * @group Stats
8230
+ */
8231
+ type RasterAggregationMethod = TypeOf<typeof RasterAggregationMethodSchema>;
8232
+ declare const GetRasterAggregatesParamsSchema: ZodObject<objectUtil.extendShape<{
8233
+ layerId: ZodString;
8234
+ band: ZodString;
8235
+ boundary: ZodOptional<ZodUnion<[ZodUnion<[ZodTuple<[ZodNumber, ZodNumber, ZodNumber, ZodNumber], null>, ZodObject<{
8236
+ type: ZodLiteral<"Polygon">;
8237
+ coordinates: ZodArray<ZodEffects<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">;
8238
+ }, "strip", ZodTypeAny, {
8239
+ type: "Polygon";
8240
+ coordinates: [number, number][][];
8241
+ }, {
8242
+ type: "Polygon";
8243
+ coordinates: [number, number][][];
8244
+ }>, ZodObject<{
8245
+ type: ZodLiteral<"MultiPolygon">;
8246
+ coordinates: ZodArray<ZodArray<ZodEffects<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
8247
+ }, "strip", ZodTypeAny, {
8248
+ type: "MultiPolygon";
8249
+ coordinates: [number, number][][][];
8250
+ }, {
8251
+ type: "MultiPolygon";
8252
+ coordinates: [number, number][][][];
8253
+ }>, ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">]>, ZodObject<{
8254
+ type: ZodLiteral<"LineString">;
8255
+ coordinates: ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">;
8256
+ }, "strip", ZodTypeAny, {
8257
+ type: "LineString";
8258
+ coordinates: [number, number][];
8259
+ }, {
8260
+ type: "LineString";
8261
+ coordinates: [number, number][];
8262
+ }>, ZodObject<{
8263
+ type: ZodLiteral<"MultiLineString">;
8264
+ coordinates: ZodArray<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, "many">;
8265
+ }, "strip", ZodTypeAny, {
8266
+ type: "MultiLineString";
8267
+ coordinates: [number, number][][];
8268
+ }, {
8269
+ type: "MultiLineString";
8270
+ coordinates: [number, number][][];
8271
+ }>]>>;
8272
+ filters: ZodOptional<ZodUnion<[ZodType<FilterTernary, ZodTypeDef, FilterTernary>, ZodUnion<[ZodTuple<[ZodUnion<[ZodString, ZodNull]>, ZodEnum<["in", "ni"]>, ZodUnion<[ZodArray<ZodUnion<[ZodNumber, ZodString, ZodBoolean, ZodNull]>, "many">, ZodNull]>], null>, ZodTuple<[ZodUnion<[ZodString, ZodNull]>, ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, ZodUnion<[ZodNumber, ZodString, ZodBoolean, ZodNull]>], null>]>, ZodNull, ZodBoolean]>>;
8273
+ }, {
8274
+ aggregation: ZodObject<{
8275
+ methods: ZodArray<ZodEnum<["avg", "min", "max", "sum", "median", "stddev", "majority", "area"]>, "many">;
8276
+ percentiles: ZodOptional<ZodArray<ZodNumber, "many">>;
8277
+ }, "strip", ZodTypeAny, {
8278
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "stddev" | "majority" | "area")[];
8279
+ percentiles?: number[] | undefined;
8280
+ }, {
8281
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "stddev" | "majority" | "area")[];
8282
+ percentiles?: number[] | undefined;
8283
+ }>;
8284
+ }>, "strip", ZodTypeAny, {
8285
+ layerId: string;
8286
+ aggregation: {
8287
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "stddev" | "majority" | "area")[];
8288
+ percentiles?: number[] | undefined;
8289
+ };
8290
+ band: string;
8291
+ filters?: boolean | FilterTernary | [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] | null | undefined;
8292
+ boundary?: [number, number, number, number] | [number, number][] | {
8293
+ type: "Polygon";
8294
+ coordinates: [number, number][][];
8295
+ } | {
8296
+ type: "MultiPolygon";
8297
+ coordinates: [number, number][][][];
8298
+ } | {
8299
+ type: "LineString";
8300
+ coordinates: [number, number][];
8301
+ } | {
8302
+ type: "MultiLineString";
8303
+ coordinates: [number, number][][];
8304
+ } | undefined;
8305
+ }, {
8306
+ layerId: string;
8307
+ aggregation: {
8308
+ methods: ("avg" | "max" | "min" | "sum" | "median" | "stddev" | "majority" | "area")[];
8309
+ percentiles?: number[] | undefined;
8310
+ };
8311
+ band: string;
8312
+ filters?: boolean | FilterTernary | [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] | null | undefined;
8313
+ boundary?: [number, number, number, number] | [number, number][] | {
8314
+ type: "Polygon";
8315
+ coordinates: [number, number][][];
8316
+ } | {
8317
+ type: "MultiPolygon";
8318
+ coordinates: [number, number][][][];
8319
+ } | {
8320
+ type: "LineString";
8321
+ coordinates: [number, number][];
8322
+ } | {
8323
+ type: "MultiLineString";
8324
+ coordinates: [number, number][][];
8325
+ } | undefined;
8326
+ }>;
8327
+ /**
8328
+ * The parameters for calculating statistics for a raster band, passed to the
8329
+ * {@link LayersController.getRasterAggregates} method.
8330
+ *
8331
+ * @group Stats
8332
+ */
8333
+ interface GetRasterAggregatesParams<T extends RasterAggregationMethod> extends zInfer<typeof GetRasterAggregatesParamsSchema> {
8334
+ /**
8335
+ * The ID of the band to calculate statistics for, such as `"band:1"`.
8336
+ *
8337
+ * Read the available band IDs from the `bands` on a raster layer's source.
8338
+ */
8339
+ band: string;
8340
+ /**
8341
+ * The spatial boundary for the pixels to include. Omit this to cover the whole
8342
+ * raster.
8343
+ */
8344
+ boundary?: RasterGeometryFilter;
8345
+ /**
8346
+ * Filters on band values for the pixels to include, such as
8347
+ * `["band:1", "gt", 100]`.
8348
+ */
8349
+ filters?: Filters;
8350
+ /**
8351
+ * Which statistics to calculate for the band.
8352
+ */
8353
+ aggregation: {
8354
+ /**
8355
+ * The statistics to calculate for the band.
8356
+ */
8357
+ methods: T[];
8358
+ /**
8359
+ * Percentile ranks between 0 and 100 to calculate, such as `[10, 50, 90]`.
8360
+ */
8361
+ percentiles?: number[];
8362
+ };
8363
+ }
8364
+ declare const RasterPercentileSchema: ZodObject<{
8365
+ /**
8366
+ * The percentile rank that was requested.
8367
+ */
8368
+ rank: ZodNumber;
8369
+ /**
8370
+ * The band value at this rank.
8371
+ */
8372
+ value: ZodNullable<ZodNumber>;
8373
+ }, "strip", ZodTypeAny, {
8374
+ value: number | null;
8375
+ rank: number;
8376
+ }, {
8377
+ value: number | null;
8378
+ rank: number;
8379
+ }>;
8380
+ /**
8381
+ * One percentile from the response to the
8382
+ * {@link LayersController.getRasterAggregates} method.
8383
+ *
8384
+ * @group Stats
8385
+ */
8386
+ interface RasterPercentile extends zInfer<typeof RasterPercentileSchema> {
8387
+ }
8388
+ /**
8389
+ * The response from the {@link LayersController.getRasterAggregates} method.
8390
+ *
8391
+ * @group Stats
8392
+ */
8393
+ interface GetRasterAggregatesResult<T extends RasterAggregationMethod> {
8394
+ /**
8395
+ * The value calculated for each requested statistic.
8396
+ *
8397
+ * `null` is returned when the boundary and filters selected no pixels, as
8398
+ * opposed to zero, so as not to confuse an empty selection with a real zero.
8399
+ */
8400
+ stats: Record<T, number | null>;
8401
+ /**
8402
+ * The requested percentiles, in the order they were requested. Present only
8403
+ * when percentile ranks were requested.
8404
+ */
8405
+ percentiles?: Array<RasterPercentile>;
8406
+ }
8407
+ declare const GetRasterHistogramParamsSchema: ZodObject<objectUtil.extendShape<{
8408
+ layerId: ZodString;
8409
+ band: ZodString;
8410
+ boundary: ZodOptional<ZodUnion<[ZodUnion<[ZodTuple<[ZodNumber, ZodNumber, ZodNumber, ZodNumber], null>, ZodObject<{
8411
+ type: ZodLiteral<"Polygon">;
8412
+ coordinates: ZodArray<ZodEffects<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">;
8413
+ }, "strip", ZodTypeAny, {
8414
+ type: "Polygon";
8415
+ coordinates: [number, number][][];
8416
+ }, {
8417
+ type: "Polygon";
8418
+ coordinates: [number, number][][];
8419
+ }>, ZodObject<{
8420
+ type: ZodLiteral<"MultiPolygon">;
8421
+ coordinates: ZodArray<ZodArray<ZodEffects<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
8422
+ }, "strip", ZodTypeAny, {
8423
+ type: "MultiPolygon";
8424
+ coordinates: [number, number][][][];
8425
+ }, {
8426
+ type: "MultiPolygon";
8427
+ coordinates: [number, number][][][];
8428
+ }>, ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">]>, ZodObject<{
8429
+ type: ZodLiteral<"LineString">;
8430
+ coordinates: ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">;
8431
+ }, "strip", ZodTypeAny, {
8432
+ type: "LineString";
8433
+ coordinates: [number, number][];
8434
+ }, {
8435
+ type: "LineString";
8436
+ coordinates: [number, number][];
8437
+ }>, ZodObject<{
8438
+ type: ZodLiteral<"MultiLineString">;
8439
+ coordinates: ZodArray<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, "many">;
8440
+ }, "strip", ZodTypeAny, {
8441
+ type: "MultiLineString";
8442
+ coordinates: [number, number][][];
8443
+ }, {
8444
+ type: "MultiLineString";
8445
+ coordinates: [number, number][][];
8446
+ }>]>>;
8447
+ filters: ZodOptional<ZodUnion<[ZodType<FilterTernary, ZodTypeDef, FilterTernary>, ZodUnion<[ZodTuple<[ZodUnion<[ZodString, ZodNull]>, ZodEnum<["in", "ni"]>, ZodUnion<[ZodArray<ZodUnion<[ZodNumber, ZodString, ZodBoolean, ZodNull]>, "many">, ZodNull]>], null>, ZodTuple<[ZodUnion<[ZodString, ZodNull]>, ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, ZodUnion<[ZodNumber, ZodString, ZodBoolean, ZodNull]>], null>]>, ZodNull, ZodBoolean]>>;
8448
+ }, {
8449
+ steps: ZodUnion<[ZodObject<{
8450
+ type: ZodLiteral<"equal-intervals">;
8451
+ count: ZodNumber;
8452
+ }, "strip", ZodTypeAny, {
8453
+ type: "equal-intervals";
8454
+ count: number;
8455
+ }, {
8456
+ type: "equal-intervals";
8457
+ count: number;
8458
+ }>, ZodArray<ZodNumber, "many">]>;
8459
+ }>, "strip", ZodTypeAny, {
8460
+ layerId: string;
8461
+ steps: number[] | {
8462
+ type: "equal-intervals";
8463
+ count: number;
8464
+ };
8465
+ band: string;
8466
+ filters?: boolean | FilterTernary | [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] | null | undefined;
8467
+ boundary?: [number, number, number, number] | [number, number][] | {
8468
+ type: "Polygon";
8469
+ coordinates: [number, number][][];
8470
+ } | {
8471
+ type: "MultiPolygon";
8472
+ coordinates: [number, number][][][];
8473
+ } | {
8474
+ type: "LineString";
8475
+ coordinates: [number, number][];
8476
+ } | {
8477
+ type: "MultiLineString";
8478
+ coordinates: [number, number][][];
8479
+ } | undefined;
8480
+ }, {
8481
+ layerId: string;
8482
+ steps: number[] | {
8483
+ type: "equal-intervals";
8484
+ count: number;
8485
+ };
8486
+ band: string;
8487
+ filters?: boolean | FilterTernary | [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] | null | undefined;
8488
+ boundary?: [number, number, number, number] | [number, number][] | {
8489
+ type: "Polygon";
8490
+ coordinates: [number, number][][];
8491
+ } | {
8492
+ type: "MultiPolygon";
8493
+ coordinates: [number, number][][][];
8494
+ } | {
8495
+ type: "LineString";
8496
+ coordinates: [number, number][];
8497
+ } | {
8498
+ type: "MultiLineString";
8499
+ coordinates: [number, number][][];
8500
+ } | undefined;
8501
+ }>;
8502
+ /**
8503
+ * The parameters for requesting a histogram of a raster band's values, passed to
8504
+ * the {@link LayersController.getRasterHistogramData} method.
8505
+ *
8506
+ * @group Stats
8507
+ */
8508
+ interface GetRasterHistogramParams extends zInfer<typeof GetRasterHistogramParamsSchema> {
8509
+ /**
8510
+ * The ID of the band to bin, such as `"band:1"`.
8511
+ *
8512
+ * Read the available band IDs from the `bands` on a raster layer's source.
8513
+ */
8514
+ band: string;
8515
+ /**
8516
+ * The spatial boundary for the pixels to include. Omit this to cover the whole
8517
+ * raster.
8518
+ */
8519
+ boundary?: RasterGeometryFilter;
8520
+ /**
8521
+ * Filters on band values for the pixels to include.
8522
+ */
8523
+ filters?: Filters;
8524
+ /**
8525
+ * How to divide the band's values into bins, either as a number of equal
8526
+ * intervals or as the bin edges themselves.
8527
+ */
8528
+ steps: {
8529
+ type: "equal-intervals";
8530
+ count: number;
8531
+ } | number[];
8532
+ }
8533
+ declare const RasterHistogramBinSchema: ZodObject<{
8534
+ /**
8535
+ * The left edge of the bin.
8536
+ */
8537
+ min: ZodNumber;
8538
+ /**
8539
+ * The right edge of the bin.
8540
+ */
8541
+ max: ZodNumber;
8542
+ /**
8543
+ * The number of pixels in the bin.
8544
+ */
8545
+ value: ZodNumber;
8546
+ }, "strip", ZodTypeAny, {
8547
+ value: number;
8548
+ max: number;
8549
+ min: number;
8550
+ }, {
8551
+ value: number;
8552
+ max: number;
8553
+ min: number;
8554
+ }>;
8555
+ /**
8556
+ * One bin from the response to the
8557
+ * {@link LayersController.getRasterHistogramData} method.
8558
+ *
8559
+ * @group Stats
8560
+ */
8561
+ interface RasterHistogramBin extends zInfer<typeof RasterHistogramBinSchema> {
8562
+ }
8563
+ /**
8564
+ * The response from the {@link LayersController.getRasterHistogramData} method.
8565
+ *
8566
+ * @group Stats
8567
+ */
8568
+ interface GetRasterHistogramResult {
8569
+ /**
8570
+ * The bins, in ascending order of value.
8571
+ */
8572
+ bins: Array<RasterHistogramBin>;
8573
+ }
8574
+ declare const GetRasterCategoriesParamsSchema: ZodObject<objectUtil.extendShape<{
8575
+ layerId: ZodString;
8576
+ band: ZodString;
8577
+ boundary: ZodOptional<ZodUnion<[ZodUnion<[ZodTuple<[ZodNumber, ZodNumber, ZodNumber, ZodNumber], null>, ZodObject<{
8578
+ type: ZodLiteral<"Polygon">;
8579
+ coordinates: ZodArray<ZodEffects<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">;
8580
+ }, "strip", ZodTypeAny, {
8581
+ type: "Polygon";
8582
+ coordinates: [number, number][][];
8583
+ }, {
8584
+ type: "Polygon";
8585
+ coordinates: [number, number][][];
8586
+ }>, ZodObject<{
8587
+ type: ZodLiteral<"MultiPolygon">;
8588
+ coordinates: ZodArray<ZodArray<ZodEffects<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, [number, number][], [number, number][]>, "many">, "many">;
8589
+ }, "strip", ZodTypeAny, {
8590
+ type: "MultiPolygon";
8591
+ coordinates: [number, number][][][];
8592
+ }, {
8593
+ type: "MultiPolygon";
8594
+ coordinates: [number, number][][][];
8595
+ }>, ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">]>, ZodObject<{
8596
+ type: ZodLiteral<"LineString">;
8597
+ coordinates: ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">;
8598
+ }, "strip", ZodTypeAny, {
8599
+ type: "LineString";
8600
+ coordinates: [number, number][];
8601
+ }, {
8602
+ type: "LineString";
8603
+ coordinates: [number, number][];
8604
+ }>, ZodObject<{
8605
+ type: ZodLiteral<"MultiLineString">;
8606
+ coordinates: ZodArray<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, "many">;
8607
+ }, "strip", ZodTypeAny, {
8608
+ type: "MultiLineString";
8609
+ coordinates: [number, number][][];
8610
+ }, {
8611
+ type: "MultiLineString";
8612
+ coordinates: [number, number][][];
8613
+ }>]>>;
8614
+ filters: ZodOptional<ZodUnion<[ZodType<FilterTernary, ZodTypeDef, FilterTernary>, ZodUnion<[ZodTuple<[ZodUnion<[ZodString, ZodNull]>, ZodEnum<["in", "ni"]>, ZodUnion<[ZodArray<ZodUnion<[ZodNumber, ZodString, ZodBoolean, ZodNull]>, "many">, ZodNull]>], null>, ZodTuple<[ZodUnion<[ZodString, ZodNull]>, ZodEnum<["lt", "gt", "le", "ge", "eq", "ne", "cn", "nc", "is", "isnt"]>, ZodUnion<[ZodNumber, ZodString, ZodBoolean, ZodNull]>], null>]>, ZodNull, ZodBoolean]>>;
8615
+ }, {
8616
+ limit: ZodOptional<ZodNumber>;
8617
+ }>, "strip", ZodTypeAny, {
8618
+ layerId: string;
8619
+ band: string;
8620
+ filters?: boolean | FilterTernary | [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] | null | undefined;
8621
+ boundary?: [number, number, number, number] | [number, number][] | {
8622
+ type: "Polygon";
8623
+ coordinates: [number, number][][];
8624
+ } | {
8625
+ type: "MultiPolygon";
8626
+ coordinates: [number, number][][][];
8627
+ } | {
8628
+ type: "LineString";
8629
+ coordinates: [number, number][];
8630
+ } | {
8631
+ type: "MultiLineString";
8632
+ coordinates: [number, number][][];
8633
+ } | undefined;
8634
+ limit?: number | undefined;
8635
+ }, {
8636
+ layerId: string;
8637
+ band: string;
8638
+ filters?: boolean | FilterTernary | [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] | null | undefined;
8639
+ boundary?: [number, number, number, number] | [number, number][] | {
8640
+ type: "Polygon";
8641
+ coordinates: [number, number][][];
8642
+ } | {
8643
+ type: "MultiPolygon";
8644
+ coordinates: [number, number][][][];
8645
+ } | {
8646
+ type: "LineString";
8647
+ coordinates: [number, number][];
8648
+ } | {
8649
+ type: "MultiLineString";
8650
+ coordinates: [number, number][][];
8651
+ } | undefined;
8652
+ limit?: number | undefined;
8653
+ }>;
8654
+ /**
8655
+ * The parameters for counting the distinct values of a raster band, passed to the
8656
+ * {@link LayersController.getRasterCategoryData} method.
8657
+ *
8658
+ * @group Stats
8659
+ */
8660
+ interface GetRasterCategoriesParams extends zInfer<typeof GetRasterCategoriesParamsSchema> {
8661
+ /**
8662
+ * The ID of the band to count values for, such as `"band:1"`.
8663
+ *
8664
+ * Read the available band IDs from the `bands` on a raster layer's source.
8665
+ */
8666
+ band: string;
8667
+ /**
8668
+ * The spatial boundary for the pixels to include. Omit this to cover the whole
8669
+ * raster.
8670
+ */
8671
+ boundary?: RasterGeometryFilter;
8672
+ /**
8673
+ * Filters on band values for the pixels to include.
8674
+ */
8675
+ filters?: Filters;
8676
+ /**
8677
+ * The maximum number of categories to return. The most frequent categories are
8678
+ * kept.
8679
+ */
8680
+ limit?: number;
8681
+ }
8682
+ declare const RasterCategorySchema: ZodObject<{
8683
+ /**
8684
+ * The band value this category counts.
8685
+ */
8686
+ key: ZodNumber;
8687
+ /**
8688
+ * The number of pixels holding this value.
8689
+ */
8690
+ value: ZodNumber;
8691
+ /**
8692
+ * The ground area of this category's pixels, in square metres. Absent for a
8693
+ * line boundary, which samples points and so has no area.
8694
+ */
8695
+ areaM2: ZodOptional<ZodNumber>;
8696
+ }, "strip", ZodTypeAny, {
8697
+ value: number;
8698
+ key: number;
8699
+ areaM2?: number | undefined;
8700
+ }, {
8701
+ value: number;
8702
+ key: number;
8703
+ areaM2?: number | undefined;
8704
+ }>;
8705
+ /**
8706
+ * One category from the response to the
8707
+ * {@link LayersController.getRasterCategoryData} method.
8708
+ *
8709
+ * @group Stats
8710
+ */
8711
+ interface RasterCategory extends zInfer<typeof RasterCategorySchema> {
8712
+ }
8713
+ /**
8714
+ * The response from the {@link LayersController.getRasterCategoryData} method.
8715
+ *
8716
+ * @group Stats
8717
+ */
8718
+ interface GetRasterCategoriesResult {
8719
+ /**
8720
+ * The categories, most frequent first.
8721
+ */
8722
+ categories: Array<RasterCategory>;
8723
+ /**
8724
+ * How many distinct values the band holds within the scope, which is larger
8725
+ * than the number of categories returned when `limit` drops some.
8726
+ */
8727
+ total: number;
8728
+ }
8729
+ declare const GetRasterProfileParamsSchema: ZodObject<{
8730
+ layerId: ZodString;
8731
+ band: ZodString;
8732
+ boundary: ZodUnion<[ZodObject<{
8733
+ type: ZodLiteral<"LineString">;
8734
+ coordinates: ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">;
8735
+ }, "strip", ZodTypeAny, {
8736
+ type: "LineString";
8737
+ coordinates: [number, number][];
8738
+ }, {
8739
+ type: "LineString";
8740
+ coordinates: [number, number][];
8741
+ }>, ZodObject<{
8742
+ type: ZodLiteral<"MultiLineString">;
8743
+ coordinates: ZodArray<ZodArray<ZodTuple<[ZodNumber, ZodNumber], null>, "many">, "many">;
8744
+ }, "strip", ZodTypeAny, {
8745
+ type: "MultiLineString";
8746
+ coordinates: [number, number][][];
8747
+ }, {
8748
+ type: "MultiLineString";
8749
+ coordinates: [number, number][][];
8750
+ }>]>;
8751
+ }, "strip", ZodTypeAny, {
8752
+ layerId: string;
8753
+ boundary: {
8754
+ type: "LineString";
8755
+ coordinates: [number, number][];
8756
+ } | {
8757
+ type: "MultiLineString";
8758
+ coordinates: [number, number][][];
8759
+ };
8760
+ band: string;
8761
+ }, {
8762
+ layerId: string;
8763
+ boundary: {
8764
+ type: "LineString";
8765
+ coordinates: [number, number][];
8766
+ } | {
8767
+ type: "MultiLineString";
8768
+ coordinates: [number, number][][];
8769
+ };
8770
+ band: string;
8771
+ }>;
8772
+ /**
8773
+ * The parameters for sampling a raster band along a line, passed to the
8774
+ * {@link LayersController.getRasterProfile} method.
8775
+ *
8776
+ * @group Stats
8777
+ */
8778
+ interface GetRasterProfileParams extends zInfer<typeof GetRasterProfileParamsSchema> {
8779
+ /**
8780
+ * The ID of the band to sample, such as `"band:1"`.
8781
+ *
8782
+ * Read the available band IDs from the `bands` on a raster layer's source.
8783
+ */
8784
+ band: string;
8785
+ /**
8786
+ * The line to sample the band along. The band is sampled at roughly one sample
8787
+ * per pixel along the line's length.
8788
+ */
8789
+ boundary: LineStringGeometry | MultiLineStringGeometry;
8790
+ }
8791
+ declare const RasterProfileSampleSchema: ZodObject<{
8792
+ /**
8793
+ * How far along the line this sample was taken, in ground metres from the
8794
+ * line's start.
8795
+ */
8796
+ distanceM: ZodNumber;
8797
+ /**
8798
+ * The band's value at this sample, or `null` where the raster holds no data or
8799
+ * the line runs outside the raster.
8800
+ */
8801
+ value: ZodNullable<ZodNumber>;
8802
+ }, "strip", ZodTypeAny, {
8803
+ value: number | null;
8804
+ distanceM: number;
8805
+ }, {
8806
+ value: number | null;
8807
+ distanceM: number;
8808
+ }>;
8809
+ /**
8810
+ * One sample from the response to the {@link LayersController.getRasterProfile}
8811
+ * method.
8812
+ *
8813
+ * @group Stats
8814
+ */
8815
+ interface RasterProfileSample extends zInfer<typeof RasterProfileSampleSchema> {
8816
+ }
8817
+ /**
8818
+ * The response from the {@link LayersController.getRasterProfile} method.
8819
+ *
8820
+ * @group Stats
8821
+ */
8822
+ interface GetRasterProfileResult {
8823
+ /**
8824
+ * The samples, ordered from the line's start.
8825
+ */
8826
+ samples: Array<RasterProfileSample>;
8827
+ /**
8828
+ * The mean distance between consecutive samples, in ground metres. Absent when
8829
+ * the line was too short to walk.
8830
+ */
8831
+ spacingM?: number;
8832
+ }
8833
+
8191
8834
  /**
8192
8835
  * The Layers controller allows you to get information about the layers on the
8193
8836
  * map, and make changes to their visibility.
@@ -9007,6 +9650,113 @@ interface LayersController {
9007
9650
  sum: number | null;
9008
9651
  count: number | null;
9009
9652
  }>;
9653
+ /**
9654
+ * Calculates statistics for a raster band.
9655
+ *
9656
+ * @remarks
9657
+ * Summarizes the pixel values of one band of a raster layer. Omit the boundary
9658
+ * to summarize the whole raster, or pass a bounding box, a polygon, or a line to
9659
+ * summarize part of it. Filters restrict the summary to pixels whose band values
9660
+ * match a condition.
9661
+ *
9662
+ * @example
9663
+ * ```typescript
9664
+ * // The elevation range of a whole raster
9665
+ * const elevation = await felt.getRasterAggregates({
9666
+ * layerId: "elevation",
9667
+ * band: "band:1",
9668
+ * aggregation: { methods: ["min", "max", "avg"] },
9669
+ * });
9670
+ *
9671
+ * // How much ground inside a parcel sits above 2,000 metres
9672
+ * const highGround = await felt.getRasterAggregates({
9673
+ * layerId: "elevation",
9674
+ * band: "band:1",
9675
+ * aggregation: { methods: ["area"] },
9676
+ * boundary: parcel,
9677
+ * filters: ["band:1", "gt", 2000],
9678
+ * });
9679
+ *
9680
+ * // The steepest tenth of a slope raster
9681
+ * const steep = await felt.getRasterAggregates({
9682
+ * layerId: "slope",
9683
+ * band: "band:1",
9684
+ * aggregation: { methods: ["avg"], percentiles: [90] },
9685
+ * });
9686
+ * ```
9687
+ */
9688
+ getRasterAggregates<T extends RasterAggregationMethod>(params: GetRasterAggregatesParams<T>): Promise<GetRasterAggregatesResult<T>>;
9689
+ /**
9690
+ * Calculates a histogram of a raster band's values.
9691
+ *
9692
+ * @remarks
9693
+ * Divides a band's values into bins and counts the pixels falling into each one.
9694
+ * You can pass a number of equal intervals, or the bin edges themselves when you
9695
+ * already know how you want the values divided.
9696
+ *
9697
+ * As with the vector histogram, filters apply in two ways. The top-level
9698
+ * boundary and filters decide both where the bins fall and what gets counted in
9699
+ * them. Filters in `values` only change what gets counted, so two histograms can
9700
+ * be compared against identical bins.
9701
+ *
9702
+ * @example
9703
+ * ```typescript
9704
+ * // Elevation distribution in ten equal intervals
9705
+ * const elevation = await felt.getRasterHistogramData({
9706
+ * layerId: "elevation",
9707
+ * band: "band:1",
9708
+ * steps: { type: "equal-intervals", count: 10 },
9709
+ * });
9710
+ *
9711
+ * // The same bins, counting only pixels inside a watershed
9712
+ * const inWatershed = await felt.getRasterHistogramData({
9713
+ * layerId: "elevation",
9714
+ * band: "band:1",
9715
+ * steps: [0, 500, 1000, 1500, 2000, 3000],
9716
+ * values: { boundary: watershed },
9717
+ * });
9718
+ * ```
9719
+ */
9720
+ getRasterHistogramData(params: GetRasterHistogramParams): Promise<GetRasterHistogramResult>;
9721
+ /**
9722
+ * Counts the pixels holding each distinct value of a raster band.
9723
+ *
9724
+ * @remarks
9725
+ * This suits a band whose values are class codes, such as a land cover raster.
9726
+ * Each category reports how many pixels hold the value and how much ground they
9727
+ * cover. A band whose values are not whole numbers cannot be counted this way,
9728
+ * and throws.
9729
+ *
9730
+ * @example
9731
+ * ```typescript
9732
+ * // How much of a county each land cover class covers
9733
+ * const landCover = await felt.getRasterCategoryData({
9734
+ * layerId: "land-cover",
9735
+ * band: "band:1",
9736
+ * boundary: county,
9737
+ * limit: 10,
9738
+ * });
9739
+ * ```
9740
+ */
9741
+ getRasterCategoryData(params: GetRasterCategoriesParams): Promise<GetRasterCategoriesResult>;
9742
+ /**
9743
+ * Samples a raster band's values along a line.
9744
+ *
9745
+ * @remarks
9746
+ * Returns the values themselves rather than a summary of them, each paired with
9747
+ * how far along the line it was taken. This is what an elevation profile along a
9748
+ * route is drawn from.
9749
+ *
9750
+ * @example
9751
+ * ```typescript
9752
+ * const profile = await felt.getRasterProfile({
9753
+ * layerId: "elevation",
9754
+ * band: "band:1",
9755
+ * boundary: route,
9756
+ * });
9757
+ * ```
9758
+ */
9759
+ getRasterProfile(params: GetRasterProfileParams): Promise<GetRasterProfileResult>;
9010
9760
  /**
9011
9761
  * Get the schema for a layer.
9012
9762
  *
@@ -14956,20 +15706,46 @@ declare const UiControlsOptionsSchema: ZodObject<{
14956
15706
  * @defaultValue true
14957
15707
  */
14958
15708
  scaleBar: ZodOptional<ZodBoolean>;
15709
+ /**
15710
+ * Whether or not the map can be rotated.
15711
+ *
15712
+ * @remarks
15713
+ * This affects all rotation interactions — dragging with the right mouse
15714
+ * button or Ctrl held, two-finger touch rotation, and keyboard shortcuts —
15715
+ * as well as the compass control, which is hidden when rotation is
15716
+ * disabled.
15717
+ *
15718
+ * @defaultValue true
15719
+ */
15720
+ rotation: ZodOptional<ZodBoolean>;
15721
+ /**
15722
+ * Whether or not the right-click context menu is available on the map.
15723
+ *
15724
+ * @remarks
15725
+ * When disabled, right-clicking the map opens neither Felt's context menu
15726
+ * nor the browser's own.
15727
+ *
15728
+ * @defaultValue true
15729
+ */
15730
+ contextMenu: ZodOptional<ZodBoolean>;
14959
15731
  }, "strip", ZodTypeAny, {
15732
+ rotation?: boolean | undefined;
14960
15733
  showLegend?: boolean | undefined;
14961
15734
  cooperativeGestures?: boolean | undefined;
14962
15735
  fullScreenButton?: boolean | undefined;
14963
15736
  geolocation?: boolean | undefined;
14964
15737
  zoomControls?: boolean | undefined;
14965
15738
  scaleBar?: boolean | undefined;
15739
+ contextMenu?: boolean | undefined;
14966
15740
  }, {
15741
+ rotation?: boolean | undefined;
14967
15742
  showLegend?: boolean | undefined;
14968
15743
  cooperativeGestures?: boolean | undefined;
14969
15744
  fullScreenButton?: boolean | undefined;
14970
15745
  geolocation?: boolean | undefined;
14971
15746
  zoomControls?: boolean | undefined;
14972
15747
  scaleBar?: boolean | undefined;
15748
+ contextMenu?: boolean | undefined;
14973
15749
  }>;
14974
15750
  /**
14975
15751
  * The options for which parts of the Felt UI can be shown when interacting with
@@ -15806,4 +16582,4 @@ interface FeltController extends ViewportController, UiController, LayersControl
15806
16582
  iframe: HTMLIFrameElement | null;
15807
16583
  }
15808
16584
 
15809
- export { type GeoJsonDataVectorSource as $, type PlaceElementRead as A, type BasemapsController as B, type ColorBasemap as C, type PlaceElementUpdate as D, type Element as E, type FeltController as F, type GetElementGroupsConstraint as G, type HighlighterElementCreate as H, type ImageElementCreate as I, type PolygonElementCreate as J, type PolygonElementRead as K, type LinkElementRead as L, type MarkerElementCreate as M, type NoteElementCreate as N, type PolygonElementUpdate as O, type PathElementCreate as P, type TextElementRead as Q, type TextElementUpdate as R, type ElementsController as S, type TextElementCreate as T, type UiControlsOptions as U, type ViewportCenterZoom as V, type MapInteractionEvent as W, type InteractionsController as X, type CreateLayersFromGeoJsonParams as Y, type DataOnlyLayer as Z, type FeltTiledVectorSource as _, type Basemap as a, type SelectionController as a$, type GeoJsonFileVectorSource as a0, type GeoJsonUrlVectorSource as a1, type GetLayerGroupsConstraint as a2, type GetLayersConstraint as a3, type GetRenderedFeaturesConstraint as a4, type Layer as a5, type LayerChangeCallbackParams as a6, type LayerCommon as a7, type LayerGroup as a8, type LayerGroupChangeCallbackParams as a9, type LayerBoundaries as aA, type LayerFilters as aB, type AggregatedGridConfig as aC, type AggregationConfig as aD, type AggregationMethod as aE, type CountGridConfig as aF, type GetLayerCalculationParams as aG, type GetLayerCategoriesGroup as aH, type GetLayerCategoriesParams as aI, type GetLayerHistogramBin as aJ, type GetLayerHistogramParams as aK, type GetLayerPrecomputedCalculationParams as aL, type GridConfig as aM, type GridType as aN, type MultiAggregationConfig as aO, type PrecomputedAggregationMethod as aP, type ValueConfiguration as aQ, type LayersController as aR, type MapDetails as aS, type MiscController as aT, type ElementGroupNode as aU, type ElementNode as aV, type EntityNode as aW, type FeatureNode as aX, type FeatureSelection as aY, type LayerGroupNode as aZ, type LayerNode as a_, type LayerProcessingStatus as aa, type LegendDisplay as ab, type LegendItem as ac, type LegendItemChangeCallbackParams as ad, type LegendItemIdentifier as ae, type LegendItemsConstraint as af, type RasterBand as ag, type RasterLayer as ah, type RasterLayerSource as ai, type UpdateLayerParams as aj, type VectorLayer as ak, type LayerFeature as al, type RasterValue as am, type LayerSchema as an, type LayerSchemaAttribute as ao, type LayerSchemaBooleanAttribute as ap, type LayerSchemaCommonAttribute as aq, type LayerSchemaDateAttribute as ar, type LayerSchemaDateTimeAttribute as as, type LayerSchemaNumericAttribute as at, type LayerSchemaTextAttribute as au, type FilterExpression as av, type FilterLogicGate as aw, type FilterTernary as ax, type Filters as ay, type GeometryFilter as az, type ColorBasemapInput as b, type UIPanelElement as b$, type FeltBoundary as b0, type FeltZoom as b1, type GeoJsonFeature as b2, type GeoJsonGeometry as b3, type GeoJsonProperties as b4, type LatLng as b5, type LineStringGeometry as b6, type LngLatTuple as b7, type MultiLineStringGeometry as b8, type MultiPointGeometry as b9, type CreatePanelElementsParams as bA, type DeletePanelElementsParams as bB, type UiOnMapInteractionsOptions as bC, type UpdateActionTriggerParams as bD, type UpdateFeatureActionParams as bE, type UpdatePanelElementsParams as bF, type PlacementForUIElement as bG, type UIPanel as bH, type UIPanelCreateOrUpdate as bI, type UIButtonElement as bJ, type UIButtonElementCreate as bK, type UIButtonElementUpdate as bL, type UITextElement as bM, type UITextElementCreate as bN, type UITextElementUpdate as bO, type UIFlexibleSpaceElement as bP, type UIFlexibleSpaceElementCreate as bQ, type UIFlexibleSpaceElementUpdate as bR, type UIDividerElement as bS, type UIDividerElementCreate as bT, type UIDividerElementUpdate as bU, type UITextInputElement as bV, type UITextInputElementCreate as bW, type UITextInputElementUpdate as bX, type UISelectElement as bY, type UISelectElementCreate as bZ, type UISelectElementUpdate as b_, type MultiPolygonGeometry as ba, type PointGeometry as bb, type PolygonGeometry as bc, type SetVisibilityRequest as bd, type SortConfig as be, type SortDirection as bf, type CircleToolSettings as bg, type ConfigurableToolType as bh, type HighlighterToolSettings as bi, type InputToolSettings as bj, type LineToolSettings as bk, type MarkerToolSettings as bl, type NoteToolSettings as bm, type PinToolSettings as bn, type PlaceFrame as bo, type PlaceSymbol as bp, type PolygonToolSettings as bq, type RouteToolSettings as br, type TextToolSettings as bs, type ToolSettingsChangeEvent as bt, type ToolSettingsMap as bu, type ToolType as bv, type ToolsController as bw, type CreateActionTriggerParams as bx, type CreateFeatureActionParams as by, type CreateOrUpdatePanelParams as bz, type CustomTileBasemap as c, type UIPanelElementCreate as c0, type UIPanelElementUpdate as c1, type UIGridContainerElement as c2, type UIGridContainerElementCreate as c3, type UIGridContainerElementUpdate as c4, type UIButtonRowElement as c5, type UIButtonRowElementCreate as c6, type UIButtonRowElementUpdate as c7, type UICheckboxGroupElement as c8, type UICheckboxGroupElementCreate as c9, type MakeClonableSchema as cA, type UIButtonRowElementCreateClonable as cB, type PromiseOrNot as cC, type UnionToIntersection as cD, type UICheckboxGroupElementUpdate as ca, type UIRadioGroupElement as cb, type UIRadioGroupElementCreate as cc, type UIRadioGroupElementUpdate as cd, type UIToggleGroupElement as ce, type UIToggleGroupElementCreate as cf, type UIToggleGroupElementUpdate as cg, type UIIframeElement as ch, type UIIframeElementCreate as ci, type UIIframeElementUpdate as cj, type UIControlElementOption as ck, type UIActionTriggerCreate as cl, type UIFeatureAction as cm, type UIFeatureActionCreate as cn, type UiController as co, type SetViewportCenterZoomParams as cp, type ViewportConstraints as cq, type ViewportFitBoundsParams as cr, type ViewportState as cs, type ViewportController as ct, type UnwrapPromise as cu, uiActionTriggerSchema as cv, uiFeatureActionSchema as cw, type UIPanelElementCreateClonable as cx, uiPanelCreateSchema as cy, type UIButtonElementCreateClonable as cz, type CustomTileBasemapInput as d, type FeltBasemap as e, type CircleElementCreate as f, type CircleElementRead as g, type CircleElementUpdate as h, type ElementChangeCallbackParams as i, type ElementCreate as j, type ElementGroup as k, type ElementGroupChangeCallbackParams as l, type ElementUpdate as m, type GetElementsConstraint as n, type HighlighterElementRead as o, type HighlighterElementUpdate as p, type ImageElementRead as q, type ImageElementUpdate as r, type MarkerElementRead as s, type MarkerElementUpdate as t, type NoteElementRead as u, type NoteElementUpdate as v, type PathElementRead as w, type PathElementUpdate as x, type PlaceElementCreate as y, type zInfer as z };
16585
+ export { type GeoJsonDataVectorSource as $, type PlaceElementRead as A, type BasemapsController as B, type ColorBasemap as C, type PlaceElementUpdate as D, type Element as E, type FeltController as F, type GetElementGroupsConstraint as G, type HighlighterElementCreate as H, type ImageElementCreate as I, type PolygonElementCreate as J, type PolygonElementRead as K, type LinkElementRead as L, type MarkerElementCreate as M, type NoteElementCreate as N, type PolygonElementUpdate as O, type PathElementCreate as P, type TextElementRead as Q, type TextElementUpdate as R, type ElementsController as S, type TextElementCreate as T, type UiControlsOptions as U, type ViewportCenterZoom as V, type MapInteractionEvent as W, type InteractionsController as X, type CreateLayersFromGeoJsonParams as Y, type DataOnlyLayer as Z, type FeltTiledVectorSource as _, type Basemap as a, type RasterGeometryFilter as a$, type GeoJsonFileVectorSource as a0, type GeoJsonUrlVectorSource as a1, type GetLayerGroupsConstraint as a2, type GetLayersConstraint as a3, type GetRenderedFeaturesConstraint as a4, type Layer as a5, type LayerChangeCallbackParams as a6, type LayerCommon as a7, type LayerGroup as a8, type LayerGroupChangeCallbackParams as a9, type LayerBoundaries as aA, type LayerFilters as aB, type AggregatedGridConfig as aC, type AggregationConfig as aD, type AggregationMethod as aE, type CountGridConfig as aF, type GetLayerCalculationParams as aG, type GetLayerCategoriesGroup as aH, type GetLayerCategoriesParams as aI, type GetLayerHistogramBin as aJ, type GetLayerHistogramParams as aK, type GetLayerPrecomputedCalculationParams as aL, type GridConfig as aM, type GridType as aN, type MultiAggregationConfig as aO, type PrecomputedAggregationMethod as aP, type ValueConfiguration as aQ, type GetRasterAggregatesParams as aR, type GetRasterAggregatesResult as aS, type GetRasterCategoriesParams as aT, type GetRasterCategoriesResult as aU, type GetRasterHistogramParams as aV, type GetRasterHistogramResult as aW, type GetRasterProfileParams as aX, type GetRasterProfileResult as aY, type RasterAggregationMethod as aZ, type RasterCategory as a_, type LayerProcessingStatus as aa, type LegendDisplay as ab, type LegendItem as ac, type LegendItemChangeCallbackParams as ad, type LegendItemIdentifier as ae, type LegendItemsConstraint as af, type RasterBand as ag, type RasterLayer as ah, type RasterLayerSource as ai, type UpdateLayerParams as aj, type VectorLayer as ak, type LayerFeature as al, type RasterValue as am, type LayerSchema as an, type LayerSchemaAttribute as ao, type LayerSchemaBooleanAttribute as ap, type LayerSchemaCommonAttribute as aq, type LayerSchemaDateAttribute as ar, type LayerSchemaDateTimeAttribute as as, type LayerSchemaNumericAttribute as at, type LayerSchemaTextAttribute as au, type FilterExpression as av, type FilterLogicGate as aw, type FilterTernary as ax, type Filters as ay, type GeometryFilter as az, type ColorBasemapInput as b, type UITextElementCreate as b$, type RasterHistogramBin as b0, type RasterPercentile as b1, type RasterProfileSample as b2, type LayersController as b3, type MapDetails as b4, type MiscController as b5, type ElementGroupNode as b6, type ElementNode as b7, type EntityNode as b8, type FeatureNode as b9, type NoteToolSettings as bA, type PinToolSettings as bB, type PlaceFrame as bC, type PlaceSymbol as bD, type PolygonToolSettings as bE, type RouteToolSettings as bF, type TextToolSettings as bG, type ToolSettingsChangeEvent as bH, type ToolSettingsMap as bI, type ToolType as bJ, type ToolsController as bK, type CreateActionTriggerParams as bL, type CreateFeatureActionParams as bM, type CreateOrUpdatePanelParams as bN, type CreatePanelElementsParams as bO, type DeletePanelElementsParams as bP, type UiOnMapInteractionsOptions as bQ, type UpdateActionTriggerParams as bR, type UpdateFeatureActionParams as bS, type UpdatePanelElementsParams as bT, type PlacementForUIElement as bU, type UIPanel as bV, type UIPanelCreateOrUpdate as bW, type UIButtonElement as bX, type UIButtonElementCreate as bY, type UIButtonElementUpdate as bZ, type UITextElement as b_, type FeatureSelection as ba, type LayerGroupNode as bb, type LayerNode as bc, type SelectionController as bd, type FeltBoundary as be, type FeltZoom as bf, type GeoJsonFeature as bg, type GeoJsonGeometry as bh, type GeoJsonProperties as bi, type LatLng as bj, type LineStringGeometry as bk, type LngLatTuple as bl, type MultiLineStringGeometry as bm, type MultiPointGeometry as bn, type MultiPolygonGeometry as bo, type PointGeometry as bp, type PolygonGeometry as bq, type SetVisibilityRequest as br, type SortConfig as bs, type SortDirection as bt, type CircleToolSettings as bu, type ConfigurableToolType as bv, type HighlighterToolSettings as bw, type InputToolSettings as bx, type LineToolSettings as by, type MarkerToolSettings as bz, type CustomTileBasemap as c, type UITextElementUpdate as c0, type UIFlexibleSpaceElement as c1, type UIFlexibleSpaceElementCreate as c2, type UIFlexibleSpaceElementUpdate as c3, type UIDividerElement as c4, type UIDividerElementCreate as c5, type UIDividerElementUpdate as c6, type UITextInputElement as c7, type UITextInputElementCreate as c8, type UITextInputElementUpdate as c9, type UIFeatureAction as cA, type UIFeatureActionCreate 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, uiFeatureActionSchema as cK, type UIPanelElementCreateClonable as cL, uiPanelCreateSchema as cM, type UIButtonElementCreateClonable as cN, type MakeClonableSchema as cO, type UIButtonRowElementCreateClonable as cP, type PromiseOrNot as cQ, type UnionToIntersection as cR, type UISelectElement as ca, type UISelectElementCreate as cb, type UISelectElementUpdate as cc, type UIPanelElement as cd, type UIPanelElementCreate as ce, type UIPanelElementUpdate as cf, type UIGridContainerElement as cg, type UIGridContainerElementCreate as ch, type UIGridContainerElementUpdate as ci, type UIButtonRowElement as cj, type UIButtonRowElementCreate as ck, type UIButtonRowElementUpdate as cl, type UICheckboxGroupElement as cm, type UICheckboxGroupElementCreate as cn, type UICheckboxGroupElementUpdate as co, type UIRadioGroupElement as cp, type UIRadioGroupElementCreate as cq, type UIRadioGroupElementUpdate as cr, type UIToggleGroupElement as cs, type UIToggleGroupElementCreate as ct, type UIToggleGroupElementUpdate as cu, type UIIframeElement as cv, type UIIframeElementCreate as cw, type UIIframeElementUpdate as cx, type UIControlElementOption as cy, type UIActionTriggerCreate as cz, type CustomTileBasemapInput as d, type FeltBasemap as e, type CircleElementCreate as f, type CircleElementRead as g, type CircleElementUpdate as h, type ElementChangeCallbackParams as i, type ElementCreate as j, type ElementGroup as k, type ElementGroupChangeCallbackParams as l, type ElementUpdate as m, type GetElementsConstraint as n, type HighlighterElementRead as o, type HighlighterElementUpdate as p, type ImageElementRead as q, type ImageElementUpdate as r, type MarkerElementRead as s, type MarkerElementUpdate as t, type NoteElementRead as u, type NoteElementUpdate as v, type PathElementRead as w, type PathElementUpdate as x, type PlaceElementCreate as y, type zInfer as z };