@minecraft/server-editor 0.1.0-beta.1.26.3-stable → 0.1.0-beta.1.26.30-preview.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +6 -6
  2. package/index.d.ts +1890 -201
  3. package/package.json +20 -20
package/index.d.ts CHANGED
@@ -108,6 +108,20 @@ export declare enum ButtonVariant {
108
108
  Destructive = 3,
109
109
  }
110
110
 
111
+ export declare enum CollectionTreeEntryItemType {
112
+ String = 0,
113
+ Number = 1,
114
+ Dropdown = 2,
115
+ }
116
+
117
+ /**
118
+ * Determines how collection tree folders will be sorted
119
+ */
120
+ export declare enum CollectionTreeSortType {
121
+ AtoZ = 0,
122
+ ZtoA = 1,
123
+ }
124
+
111
125
  /**
112
126
  * The possible variants of a color picker.
113
127
  */
@@ -983,6 +997,15 @@ export declare enum ListPaneEntryType {
983
997
  Text = 3,
984
998
  }
985
999
 
1000
+ /**
1001
+ * Determines theming variation for the list slot
1002
+ */
1003
+ export declare enum ListPaneSlotVariant {
1004
+ Primary = 0,
1005
+ Secondary = 1,
1006
+ Muted = 2,
1007
+ }
1008
+
986
1009
  /**
987
1010
  * Determines how list pane slots will be sorted
988
1011
  */
@@ -992,6 +1015,13 @@ export declare enum ListPaneViewSortType {
992
1015
  ZtoA = 2,
993
1016
  }
994
1017
 
1018
+ export declare enum ListViewControlFilterFlags {
1019
+ None = 0,
1020
+ Name = 1,
1021
+ Tag = 2,
1022
+ All = 3,
1023
+ }
1024
+
995
1025
  export enum LogChannel {
996
1026
  /**
997
1027
  * @remarks
@@ -1020,6 +1050,13 @@ export enum MinimapMarkerType {
1020
1050
  *
1021
1051
  */
1022
1052
  Multiplayer = 0,
1053
+ Location = 1,
1054
+ Custom = 2,
1055
+ }
1056
+
1057
+ export enum MinimapTrackingMode {
1058
+ FollowPlayer = 0,
1059
+ FreeCenter = 1,
1023
1060
  }
1024
1061
 
1025
1062
  export enum MinimapViewType {
@@ -1030,6 +1067,7 @@ export enum MinimapViewType {
1030
1067
  *
1031
1068
  */
1032
1069
  BlockView = 0,
1070
+ CustomBiomeView = 1,
1033
1071
  }
1034
1072
 
1035
1073
  /**
@@ -1153,6 +1191,11 @@ export enum PrimitiveType {
1153
1191
  Line = 2,
1154
1192
  Disc = 4,
1155
1193
  AxialSphere = 5,
1194
+ Cylinder = 7,
1195
+ Pyramid = 8,
1196
+ Ellipsoid = 9,
1197
+ Cuboid = 10,
1198
+ Cone = 11,
1156
1199
  }
1157
1200
 
1158
1201
  /**
@@ -1167,6 +1210,7 @@ export enum ProjectExportType {
1167
1210
  PlayableWorld = 0,
1168
1211
  ProjectBackup = 1,
1169
1212
  WorldTemplate = 2,
1213
+ ShareableWorld = 3,
1170
1214
  }
1171
1215
 
1172
1216
  /**
@@ -1178,6 +1222,7 @@ export declare enum PropertyItemType {
1178
1222
  Boolean = 'editorUI:Boolean',
1179
1223
  Button = 'editorUI:Button',
1180
1224
  ButtonPane = 'editorUI:ButtonPane',
1225
+ CollectionTree = 'editorUI:CollectionTree',
1181
1226
  ColorPicker = 'editorUI:ColorPicker',
1182
1227
  ColorTimeline = 'editorUI:ColorTimeline',
1183
1228
  ComboBox = 'editorUI:ComboBox',
@@ -1195,10 +1240,20 @@ export declare enum PropertyItemType {
1195
1240
  ProxyPane = 'editorUI:ProxyPane',
1196
1241
  String = 'editorUI:String',
1197
1242
  SubPane = 'editorUI:SubPane',
1243
+ TagContainer = 'editorUI:TagContainer',
1198
1244
  Text = 'editorUI:Text',
1199
1245
  ToggleGroup = 'editorUI:ToggleGroup',
1200
1246
  Vector2 = 'editorUI:Vector2',
1201
1247
  Vector3 = 'editorUI:Vector3',
1248
+ Vector3Timeline = 'editorUI:Vector3Timeline',
1249
+ }
1250
+
1251
+ /**
1252
+ * Determines the location root pane will be displayed in
1253
+ */
1254
+ export declare enum RootPaneLocation {
1255
+ Drawer = 0,
1256
+ Viewport = 1,
1202
1257
  }
1203
1258
 
1204
1259
  export enum SelectionVolumeEventType {
@@ -1234,6 +1289,14 @@ export enum StructureSource {
1234
1289
  Level = 3,
1235
1290
  }
1236
1291
 
1292
+ /**
1293
+ * The possible variants of a TagContainer property item.
1294
+ */
1295
+ export declare enum TagContainerVariant {
1296
+ Primary = 0,
1297
+ Inverted = 1,
1298
+ }
1299
+
1237
1300
  export enum ThemeSettingsColorKey {
1238
1301
  Caret = 'Caret',
1239
1302
  Confirm1 = 'Confirm1',
@@ -1433,6 +1496,100 @@ export type GraphicsSettingsPropertyTypeMap = {
1433
1496
  [GraphicsSettingsProperty.DisableBlockEntityRendering]?: boolean;
1434
1497
  };
1435
1498
 
1499
+ /**
1500
+ * Menu options for the collection tree entry dropdown item
1501
+ */
1502
+ export type ICollectionTreeEntryDropdownItemMenuOption = {
1503
+ readonly label: string;
1504
+ readonly value: string;
1505
+ readonly imageData?: ImageResourceData;
1506
+ };
1507
+
1508
+ /**
1509
+ * Parameters to create dropdown in a collection tree entry
1510
+ */
1511
+ export type ICollectionTreeEntryDropdownItemParams = {
1512
+ value: IObservableProp<string>;
1513
+ title?: LocalizedString;
1514
+ tooltip?: BasicTooltipContent;
1515
+ enabled?: boolean;
1516
+ visible?: boolean;
1517
+ menuOptions?: ICollectionTreeEntryDropdownItemMenuOption[];
1518
+ onChange?: (newValue: string, oldValue: string, item: ICollectionTreeEntryDropdownItem) => void;
1519
+ };
1520
+
1521
+ /**
1522
+ * Parameters to create number field in a collection tree entry
1523
+ */
1524
+ export type ICollectionTreeEntryNumberItemParams = {
1525
+ value: IObservableProp<number>;
1526
+ title?: LocalizedString;
1527
+ tooltip?: BasicTooltipContent;
1528
+ enabled?: boolean;
1529
+ visible?: boolean;
1530
+ min?: number;
1531
+ max?: number;
1532
+ isInteger?: boolean;
1533
+ onChange?: (newValue: number, oldValue: number, item: ICollectionTreeEntryNumberItem) => void;
1534
+ };
1535
+
1536
+ /**
1537
+ * Options to create an entry in a collection tree folder
1538
+ */
1539
+ export type ICollectionTreeEntryOptions = {
1540
+ selected?: boolean;
1541
+ image?: ImageResourceData;
1542
+ selectable?: boolean;
1543
+ removable?: boolean;
1544
+ color?: minecraftserver.RGBA;
1545
+ userData?: unknown;
1546
+ onSelectedChange?: (selected: boolean, folder: ICollectionTreeEntry) => void;
1547
+ onBeforeRelocated?: (toFolder: ICollectionTreeFolder, toIndex: number, entry: ICollectionTreeEntry) => boolean;
1548
+ };
1549
+
1550
+ /**
1551
+ * Parameters to create string field in a collection tree entry
1552
+ */
1553
+ export type ICollectionTreeEntryStringItemParams = {
1554
+ value: IObservableProp<string>;
1555
+ title?: LocalizedString;
1556
+ tooltip?: BasicTooltipContent;
1557
+ enabled?: boolean;
1558
+ visible?: boolean;
1559
+ onChange?: (newValue: string, oldValue: string, item: ICollectionTreeEntryStringItem) => void;
1560
+ };
1561
+
1562
+ /**
1563
+ * Parameters to create an action button on the folder header
1564
+ */
1565
+ export type ICollectionTreeFolderHeaderActionParams = {
1566
+ title?: LocalizedString;
1567
+ tooltip?: BasicTooltipContent;
1568
+ enabled?: boolean;
1569
+ onClick: (folder: ICollectionTreeFolder) => void;
1570
+ };
1571
+
1572
+ /**
1573
+ * Contains collection folders and entries
1574
+ */
1575
+ export type ICollectionTreeFolderOptions = {
1576
+ uniqueId?: string;
1577
+ title?: LocalizedString;
1578
+ selected?: boolean;
1579
+ expanded?: boolean;
1580
+ visible?: boolean;
1581
+ removable?: boolean;
1582
+ selectable?: boolean;
1583
+ userData?: unknown;
1584
+ color?: minecraftserver.RGBA;
1585
+ action?: ICollectionTreeFolderHeaderActionParams;
1586
+ menu?: IMenuCreationParams[];
1587
+ onMenuClicked?: (menuId: string, folder: ICollectionTreeFolder) => void;
1588
+ onSelectedChange?: (selected: boolean, folder: ICollectionTreeFolder) => void;
1589
+ onBeforeRemoved?: (folder: ICollectionTreeFolder) => boolean;
1590
+ onBeforeEntryRemoved?: (entry: ICollectionTreeEntry) => boolean;
1591
+ };
1592
+
1436
1593
  /**
1437
1594
  * Animation properties for a horizontally laid out sprite
1438
1595
  * sheet image
@@ -1562,6 +1719,15 @@ export type ListPaneImageEntryParams = {
1562
1719
  visible?: boolean;
1563
1720
  };
1564
1721
 
1722
+ export declare type ListPaneSlotConfiguration = {
1723
+ height: number;
1724
+ columns?: number;
1725
+ clickable?: boolean;
1726
+ outline?: boolean;
1727
+ variant?: ListPaneSlotVariant;
1728
+ entryLayout: ListPaneSlotLayoutEntry[] | ListPaneSlotLayoutSections;
1729
+ };
1730
+
1565
1731
  /**
1566
1732
  * Properties required to create a slot
1567
1733
  */
@@ -1570,20 +1736,17 @@ export type ListPaneSlotCreationProps = {
1570
1736
  options?: IListPaneSlotOptions;
1571
1737
  };
1572
1738
 
1573
- export declare type ListPaneSlotLayout = {
1574
- height: number;
1575
- columns?: number;
1576
- clickable?: boolean;
1577
- outline?: boolean;
1578
- entryLayout: ListPaneSlotLayoutEntry[];
1579
- };
1580
-
1581
1739
  export declare type ListPaneSlotLayoutEntry = {
1582
1740
  type: ListPaneEntryType;
1583
1741
  size?: number | LayoutSize | LayoutFlex;
1584
1742
  alignment?: LayoutAlignment;
1585
1743
  };
1586
1744
 
1745
+ export declare type ListPaneSlotLayoutSections = {
1746
+ mainSection: ListPaneSlotLayoutEntry[];
1747
+ outerSection: ListPaneSlotLayoutEntry[];
1748
+ };
1749
+
1587
1750
  /**
1588
1751
  * List Pane Text entry creation parameter
1589
1752
  */
@@ -1601,6 +1764,23 @@ export declare type ListPaneViewFilter = {
1601
1764
  tags?: string[];
1602
1765
  };
1603
1766
 
1767
+ /**
1768
+ * Action item to be displayed on a list view control
1769
+ */
1770
+ export type ListViewControlAction = {
1771
+ id: string;
1772
+ } & ListViewControlActionState;
1773
+
1774
+ /**
1775
+ * Action item state for list view control
1776
+ */
1777
+ export type ListViewControlActionState = {
1778
+ label: LocalizedString;
1779
+ icon: string;
1780
+ disabled?: boolean;
1781
+ displayInMenu?: boolean;
1782
+ };
1783
+
1604
1784
  /**
1605
1785
  * Represents a localized string or an object with a localized
1606
1786
  * string and optional properties
@@ -2136,11 +2316,54 @@ export declare abstract class BrushShape {
2136
2316
  */
2137
2317
  constructor(_id: string, _displayName: string, _icon: string);
2138
2318
  abstract applySetting(brushSettings: BrushShapeSettings): void;
2319
+ /**
2320
+ * @remarks
2321
+ * Calculates the bounding box of the shape in local
2322
+ * coordinates. Used for region allocation before shape
2323
+ * placement.
2324
+ *
2325
+ * @returns
2326
+ * Object with min and max Vector3 bounds
2327
+ */
2328
+ abstract calculateBounds(): minecraftserver.BlockBoundingBox;
2139
2329
  abstract createSettingsPane(
2140
2330
  parentPane: IPropertyPane,
2141
2331
  onSettingsChange?: () => void,
2332
+ flatLayout?: boolean,
2142
2333
  ): ISubPanePropertyItem | undefined;
2143
2334
  abstract createShape(): RelativeVolumeListBlockVolume;
2335
+ /**
2336
+ * @remarks
2337
+ * Asynchronously creates the shape, yielding control
2338
+ * periodically to avoid timeouts. Use this for large shapes
2339
+ * where createShape() may timeout.
2340
+ *
2341
+ * @param cancelToken
2342
+ * Optional token to cancel the operation. Set cancelled to
2343
+ * true to abort.
2344
+ * @param yieldInterval
2345
+ * Number of blocks to process before yielding. Default is
2346
+ * 10000.
2347
+ * @returns
2348
+ * Promise that resolves to the shape positions as Vector3
2349
+ * array.
2350
+ */
2351
+ abstract createShapeAsync(
2352
+ cancelToken?: {
2353
+ cancelled: boolean;
2354
+ },
2355
+ yieldInterval?: number,
2356
+ ): Promise<RelativeVolumeListBlockVolume>;
2357
+ /**
2358
+ * @remarks
2359
+ * Returns a mathematical estimate of the number of blocks in
2360
+ * the shape. Used for UI display and validation before shape
2361
+ * creation.
2362
+ *
2363
+ * @returns
2364
+ * Estimated block count
2365
+ */
2366
+ abstract estimateBlockCount(): number;
2144
2367
  abstract getSettings(): BrushShapeSettings;
2145
2368
  }
2146
2369
 
@@ -2476,13 +2699,30 @@ export declare class ConeBrushShape extends BrushShape {
2476
2699
  width?: number;
2477
2700
  height?: number;
2478
2701
  depth?: number;
2702
+ maxRadius?: number;
2703
+ maxHeight?: number;
2479
2704
  xRotation?: number;
2480
2705
  yRotation?: number;
2481
2706
  zRotation?: number;
2707
+ hollow?: boolean;
2708
+ thickness?: number;
2709
+ enableHollowSettings?: boolean;
2482
2710
  });
2483
2711
  applySetting(brushSettings: ConeBrushShapeSettings): void;
2484
- createSettingsPane(parentPane: IPropertyPane, onSettingsChange?: () => void): ISubPanePropertyItem;
2712
+ calculateBounds(): minecraftserver.BlockBoundingBox;
2713
+ createSettingsPane(
2714
+ parentPane: IPropertyPane,
2715
+ onSettingsChange?: () => void,
2716
+ flatLayout?: boolean,
2717
+ ): ISubPanePropertyItem;
2485
2718
  createShape(): RelativeVolumeListBlockVolume;
2719
+ createShapeAsync(
2720
+ cancelToken?: {
2721
+ cancelled: boolean;
2722
+ },
2723
+ yieldInterval?: number,
2724
+ ): Promise<RelativeVolumeListBlockVolume>;
2725
+ estimateBlockCount(): number;
2486
2726
  getSettings(): ConeBrushShapeSettings;
2487
2727
  }
2488
2728
 
@@ -2500,13 +2740,30 @@ export declare class CuboidBrushShape extends BrushShape {
2500
2740
  height?: number;
2501
2741
  depth?: number;
2502
2742
  minLength?: number;
2743
+ maxLength?: number;
2503
2744
  xRotation?: number;
2504
2745
  yRotation?: number;
2505
2746
  zRotation?: number;
2747
+ hollow?: boolean;
2748
+ thickness?: number;
2749
+ enableHollowSettings?: boolean;
2750
+ hideRotation?: boolean;
2506
2751
  });
2507
2752
  applySetting(brushSettings: CuboidBrushShapeSettings): void;
2508
- createSettingsPane(parentPane: IPropertyPane, onSettingsChange?: () => void): ISubPanePropertyItem;
2753
+ calculateBounds(): minecraftserver.BlockBoundingBox;
2754
+ createSettingsPane(
2755
+ parentPane: IPropertyPane,
2756
+ onSettingsChange?: () => void,
2757
+ flatLayout?: boolean,
2758
+ ): ISubPanePropertyItem;
2509
2759
  createShape(): RelativeVolumeListBlockVolume;
2760
+ createShapeAsync(
2761
+ cancelToken?: {
2762
+ cancelled: boolean;
2763
+ },
2764
+ yieldInterval?: number,
2765
+ ): Promise<RelativeVolumeListBlockVolume>;
2766
+ estimateBlockCount(): number;
2510
2767
  getSettings(): CuboidBrushShapeSettings;
2511
2768
  }
2512
2769
 
@@ -2773,14 +3030,31 @@ export declare class CylinderBrushShape extends BrushShape {
2773
3030
  height?: number;
2774
3031
  depth?: number;
2775
3032
  minRadius?: number;
3033
+ maxRadius?: number;
3034
+ maxHeight?: number;
2776
3035
  xRotation?: number;
2777
3036
  yRotation?: number;
2778
3037
  zRotation?: number;
2779
3038
  hideRotation?: boolean;
3039
+ hollow?: boolean;
3040
+ thickness?: number;
3041
+ enableHollowSettings?: boolean;
2780
3042
  });
2781
3043
  applySetting(brushSettings: CylinderBrushShapeSettings): void;
2782
- createSettingsPane(parentPane: IPropertyPane, onSettingsChange?: () => void): ISubPanePropertyItem;
3044
+ calculateBounds(): minecraftserver.BlockBoundingBox;
3045
+ createSettingsPane(
3046
+ parentPane: IPropertyPane,
3047
+ onSettingsChange?: () => void,
3048
+ flatLayout?: boolean,
3049
+ ): ISubPanePropertyItem;
2783
3050
  createShape(): RelativeVolumeListBlockVolume;
3051
+ createShapeAsync(
3052
+ cancelToken?: {
3053
+ cancelled: boolean;
3054
+ },
3055
+ yieldInterval?: number,
3056
+ ): Promise<RelativeVolumeListBlockVolume>;
3057
+ estimateBlockCount(): number;
2784
3058
  getSettings(): CylinderBrushShapeSettings;
2785
3059
  }
2786
3060
 
@@ -2967,13 +3241,29 @@ export declare class EllipsoidBrushShape extends BrushShape {
2967
3241
  height?: number;
2968
3242
  depth?: number;
2969
3243
  minRadius?: number;
3244
+ maxRadius?: number;
2970
3245
  xRotation?: number;
2971
3246
  yRotation?: number;
2972
3247
  zRotation?: number;
3248
+ hollow?: boolean;
3249
+ thickness?: number;
3250
+ enableHollowSettings?: boolean;
2973
3251
  });
2974
3252
  applySetting(brushSettings: EllipsoidBrushShapeSettings): void;
2975
- createSettingsPane(parentPane: IPropertyPane, onSettingsChange?: () => void): ISubPanePropertyItem;
3253
+ calculateBounds(): minecraftserver.BlockBoundingBox;
3254
+ createSettingsPane(
3255
+ parentPane: IPropertyPane,
3256
+ onSettingsChange?: () => void,
3257
+ flatLayout?: boolean,
3258
+ ): ISubPanePropertyItem;
2976
3259
  createShape(): RelativeVolumeListBlockVolume;
3260
+ createShapeAsync(
3261
+ cancelToken?: {
3262
+ cancelled: boolean;
3263
+ },
3264
+ yieldInterval?: number,
3265
+ ): Promise<RelativeVolumeListBlockVolume>;
3266
+ estimateBlockCount(): number;
2977
3267
  getSettings(): EllipsoidBrushShapeSettings;
2978
3268
  }
2979
3269
 
@@ -3398,6 +3688,7 @@ export class MinecraftEditor {
3398
3688
  */
3399
3689
  export class MinimapItem {
3400
3690
  private constructor();
3691
+ readonly freeCenter: minecraftserver.VectorXZ;
3401
3692
  readonly id: string;
3402
3693
  /**
3403
3694
  * @remarks
@@ -3406,16 +3697,29 @@ export class MinimapItem {
3406
3697
  *
3407
3698
  */
3408
3699
  readonly isActive: boolean;
3700
+ readonly yLevel: number;
3409
3701
  /**
3410
3702
  * @remarks
3411
- * Add a visual marker of the specified type to the minimap
3412
- * display.
3703
+ * This function can't be called in restricted-execution mode.
3704
+ *
3705
+ * @throws This function can throw errors.
3706
+ */
3707
+ addCustomMarker(iconIdentifier: string, data: MinimapMarkerData[], dimensionId: string): void;
3708
+ /**
3709
+ * @remarks
3710
+ * This function can't be called in restricted-execution mode.
3413
3711
  *
3712
+ * @throws This function can throw errors.
3713
+ */
3714
+ addLocationMarker(data: MinimapMarkerData[], dimensionId: string): void;
3715
+ /**
3716
+ * @remarks
3414
3717
  * This function can't be called in restricted-execution mode.
3415
3718
  *
3416
3719
  * @throws This function can throw errors.
3417
3720
  */
3418
- addMarker(markerType: MinimapMarkerType): void;
3721
+ addMultiplayerMarker(): void;
3722
+ getMarkerTypes(): MinimapMarkerType[];
3419
3723
  /**
3420
3724
  * @remarks
3421
3725
  * Retrieve the color assigned to a specific player on the
@@ -3424,16 +3728,36 @@ export class MinimapItem {
3424
3728
  * @throws This function can throw errors.
3425
3729
  */
3426
3730
  getPlayerColor(playerId: string): minecraftserver.RGBA;
3731
+ hasCustomGroup(iconIdentifier: string): boolean;
3732
+ hasMarkerOfType(type: MinimapMarkerType): boolean;
3733
+ /**
3734
+ * @remarks
3735
+ * This function can't be called in restricted-execution mode.
3736
+ *
3737
+ * @throws This function can throw errors.
3738
+ */
3739
+ removeAllCustomMarkers(dimensionId: string): void;
3740
+ /**
3741
+ * @remarks
3742
+ * This function can't be called in restricted-execution mode.
3743
+ *
3744
+ * @throws This function can throw errors.
3745
+ */
3746
+ removeCustomMarker(iconIdentifier: string, dimensionId: string): void;
3427
3747
  /**
3428
3748
  * @remarks
3429
- * Remove a previously added marker of the specified type from
3430
- * the minimap.
3749
+ * This function can't be called in restricted-execution mode.
3431
3750
  *
3751
+ * @throws This function can throw errors.
3752
+ */
3753
+ removeLocationMarker(dimensionId: string): void;
3754
+ /**
3755
+ * @remarks
3432
3756
  * This function can't be called in restricted-execution mode.
3433
3757
  *
3434
3758
  * @throws This function can throw errors.
3435
3759
  */
3436
- removeMarker(markerType: MinimapMarkerType): void;
3760
+ removeMultiplayerMarker(): void;
3437
3761
  /**
3438
3762
  * @remarks
3439
3763
  * Control whether the minimap is currently active and visible
@@ -3444,6 +3768,13 @@ export class MinimapItem {
3444
3768
  * @throws This function can throw errors.
3445
3769
  */
3446
3770
  setActive(active: boolean): void;
3771
+ /**
3772
+ * @remarks
3773
+ * This function can't be called in restricted-execution mode.
3774
+ *
3775
+ * @throws This function can throw errors.
3776
+ */
3777
+ setFreeCenter(center: minecraftserver.VectorXZ): void;
3447
3778
  /**
3448
3779
  * @remarks
3449
3780
  * Adjust the width and height dimensions of the minimap
@@ -3454,6 +3785,13 @@ export class MinimapItem {
3454
3785
  * @throws This function can throw errors.
3455
3786
  */
3456
3787
  setSize(mapWidth: number, mapHeight: number): void;
3788
+ /**
3789
+ * @remarks
3790
+ * This function can't be called in restricted-execution mode.
3791
+ *
3792
+ * @throws This function can throw errors.
3793
+ */
3794
+ setTrackingMode(mode: MinimapTrackingMode): void;
3457
3795
  /**
3458
3796
  * @remarks
3459
3797
  * Change the visual perspective or style of the minimap view.
@@ -3463,6 +3801,13 @@ export class MinimapItem {
3463
3801
  * @throws This function can throw errors.
3464
3802
  */
3465
3803
  setViewType(viewType: MinimapViewType): void;
3804
+ /**
3805
+ * @remarks
3806
+ * This function can't be called in restricted-execution mode.
3807
+ *
3808
+ * @throws This function can throw errors.
3809
+ */
3810
+ setYLevel(yLevel: number): void;
3466
3811
  }
3467
3812
 
3468
3813
  /**
@@ -3482,7 +3827,12 @@ export class MinimapManager {
3482
3827
  *
3483
3828
  * @throws This function can throw errors.
3484
3829
  */
3485
- createMinimap(viewType: MinimapViewType, mapWidth: number, mapHeight: number): MinimapItem;
3830
+ createMinimap(
3831
+ viewType: MinimapViewType,
3832
+ mapWidth: number,
3833
+ mapHeight: number,
3834
+ options?: MinimapCreateOptions,
3835
+ ): MinimapItem;
3486
3836
  /**
3487
3837
  * @remarks
3488
3838
  * Remove an existing minimap instance from the manager using
@@ -3513,6 +3863,20 @@ export class MinimapManager {
3513
3863
  * @throws This function can throw errors.
3514
3864
  */
3515
3865
  getMinimap(minimapId: string): MinimapItem;
3866
+ /**
3867
+ * @remarks
3868
+ * This function can't be called in restricted-execution mode.
3869
+ *
3870
+ * @throws This function can throw errors.
3871
+ */
3872
+ setVanillaBiomeColorMap(colorMap: Record<string, minecraftserver.RGB>): void;
3873
+ /**
3874
+ * @remarks
3875
+ * This function can't be called in restricted-execution mode.
3876
+ *
3877
+ * @throws This function can throw errors.
3878
+ */
3879
+ updateVanillaColorMap(biomeType: minecraftserver.BiomeType, color: minecraftserver.RGB): void;
3516
3880
  }
3517
3881
 
3518
3882
  /**
@@ -3625,6 +3989,8 @@ export class ProbabilityBlockPaletteItem extends IBlockPaletteItem {
3625
3989
  * @remarks
3626
3990
  * This function can't be called in restricted-execution mode.
3627
3991
  *
3992
+ * @param weight
3993
+ * Bounds: [1, 100]
3628
3994
  * @throws This function can throw errors.
3629
3995
  */
3630
3996
  addBlock(block: minecraftserver.BlockPermutation | minecraftserver.BlockType | string, weight: number): void;
@@ -3660,13 +4026,30 @@ export declare class PyramidBrushShape extends BrushShape {
3660
4026
  width?: number;
3661
4027
  height?: number;
3662
4028
  depth?: number;
4029
+ maxSide?: number;
4030
+ maxHeight?: number;
3663
4031
  xRotation?: number;
3664
4032
  yRotation?: number;
3665
4033
  zRotation?: number;
4034
+ hollow?: boolean;
4035
+ thickness?: number;
4036
+ enableHollowSettings?: boolean;
3666
4037
  });
3667
4038
  applySetting(brushSettings: PyramidBrushShapeSettings): void;
3668
- createSettingsPane(parentPane: IPropertyPane, onSettingsChange?: () => void): ISubPanePropertyItem;
4039
+ calculateBounds(): minecraftserver.BlockBoundingBox;
4040
+ createSettingsPane(
4041
+ parentPane: IPropertyPane,
4042
+ onSettingsChange?: () => void,
4043
+ flatLayout?: boolean,
4044
+ ): ISubPanePropertyItem;
3669
4045
  createShape(): RelativeVolumeListBlockVolume;
4046
+ createShapeAsync(
4047
+ cancelToken?: {
4048
+ cancelled: boolean;
4049
+ },
4050
+ yieldInterval?: number,
4051
+ ): Promise<RelativeVolumeListBlockVolume>;
4052
+ estimateBlockCount(): number;
3670
4053
  getSettings(): PyramidBrushShapeSettings;
3671
4054
  }
3672
4055
 
@@ -3975,8 +4358,16 @@ export declare class SingleBlockBrushShape extends BrushShape {
3975
4358
  */
3976
4359
  constructor();
3977
4360
  applySetting(_settings: BrushShapeSettings): void;
4361
+ calculateBounds(): minecraftserver.BlockBoundingBox;
3978
4362
  createSettingsPane(): undefined;
3979
4363
  createShape(): RelativeVolumeListBlockVolume;
4364
+ createShapeAsync(
4365
+ _cancelToken?: {
4366
+ cancelled: boolean;
4367
+ },
4368
+ _yieldInterval?: number,
4369
+ ): Promise<RelativeVolumeListBlockVolume>;
4370
+ estimateBlockCount(): number;
3980
4371
  getSettings(): BrushShapeSettings;
3981
4372
  }
3982
4373
 
@@ -4504,8 +4895,13 @@ export class Widget {
4504
4895
  primitiveType:
4505
4896
  | WidgetComponentRenderPrimitiveTypeAxialSphere
4506
4897
  | WidgetComponentRenderPrimitiveTypeBox
4898
+ | WidgetComponentRenderPrimitiveTypeCone
4899
+ | WidgetComponentRenderPrimitiveTypeCuboid
4900
+ | WidgetComponentRenderPrimitiveTypeCylinder
4507
4901
  | WidgetComponentRenderPrimitiveTypeDisc
4508
- | WidgetComponentRenderPrimitiveTypeLine,
4902
+ | WidgetComponentRenderPrimitiveTypeEllipsoid
4903
+ | WidgetComponentRenderPrimitiveTypeLine
4904
+ | WidgetComponentRenderPrimitiveTypePyramid,
4509
4905
  options?: WidgetComponentRenderPrimitiveOptions,
4510
4906
  ): WidgetComponentRenderPrimitive;
4511
4907
  /**
@@ -4855,8 +5251,13 @@ export class WidgetComponentRenderPrimitive extends WidgetComponentBase {
4855
5251
  primitive:
4856
5252
  | WidgetComponentRenderPrimitiveTypeAxialSphere
4857
5253
  | WidgetComponentRenderPrimitiveTypeBox
5254
+ | WidgetComponentRenderPrimitiveTypeCone
5255
+ | WidgetComponentRenderPrimitiveTypeCuboid
5256
+ | WidgetComponentRenderPrimitiveTypeCylinder
4858
5257
  | WidgetComponentRenderPrimitiveTypeDisc
4859
- | WidgetComponentRenderPrimitiveTypeLine,
5258
+ | WidgetComponentRenderPrimitiveTypeEllipsoid
5259
+ | WidgetComponentRenderPrimitiveTypeLine
5260
+ | WidgetComponentRenderPrimitiveTypePyramid,
4860
5261
  ): void;
4861
5262
  }
4862
5263
 
@@ -4918,7 +5319,13 @@ export class WidgetComponentRenderPrimitiveTypeBox extends WidgetComponentRender
4918
5319
  }
4919
5320
 
4920
5321
  // @ts-ignore Class inheritance allowed for native defined classes
4921
- export class WidgetComponentRenderPrimitiveTypeDisc extends WidgetComponentRenderPrimitiveTypeBase {
5322
+ export class WidgetComponentRenderPrimitiveTypeCone extends WidgetComponentRenderPrimitiveTypeBase {
5323
+ /**
5324
+ * @remarks
5325
+ * This property can't be edited in restricted-execution mode.
5326
+ *
5327
+ */
5328
+ alpha?: number;
4922
5329
  /**
4923
5330
  * @remarks
4924
5331
  * This property can't be edited in restricted-execution mode.
@@ -4936,101 +5343,363 @@ export class WidgetComponentRenderPrimitiveTypeDisc extends WidgetComponentRende
4936
5343
  * This property can't be edited in restricted-execution mode.
4937
5344
  *
4938
5345
  */
4939
- radius: number;
4940
- constructor(center: minecraftserver.Vector3, radius: number, color: minecraftserver.RGBA);
4941
- }
4942
-
4943
- // @ts-ignore Class inheritance allowed for native defined classes
4944
- export class WidgetComponentRenderPrimitiveTypeLine extends WidgetComponentRenderPrimitiveTypeBase {
5346
+ height: number;
4945
5347
  /**
4946
5348
  * @remarks
4947
5349
  * This property can't be edited in restricted-execution mode.
4948
5350
  *
4949
5351
  */
4950
- color: minecraftserver.RGBA;
5352
+ numSegments?: number;
4951
5353
  /**
4952
5354
  * @remarks
4953
5355
  * This property can't be edited in restricted-execution mode.
4954
5356
  *
4955
5357
  */
4956
- end: minecraftserver.Vector3;
5358
+ radiusX: number;
4957
5359
  /**
4958
5360
  * @remarks
4959
5361
  * This property can't be edited in restricted-execution mode.
4960
5362
  *
4961
5363
  */
4962
- start: minecraftserver.Vector3;
4963
- constructor(start: minecraftserver.Vector3, end: minecraftserver.Vector3, color: minecraftserver.RGBA);
5364
+ radiusZ: number;
5365
+ /**
5366
+ * @remarks
5367
+ * This property can't be edited in restricted-execution mode.
5368
+ *
5369
+ */
5370
+ rotation?: minecraftserver.Vector3;
5371
+ constructor(
5372
+ center: minecraftserver.Vector3,
5373
+ radiusX: number,
5374
+ radiusZ: number,
5375
+ height: number,
5376
+ color: minecraftserver.RGBA,
5377
+ numSegments?: number,
5378
+ rotation?: minecraftserver.Vector3,
5379
+ alpha?: number,
5380
+ );
4964
5381
  }
4965
5382
 
4966
5383
  // @ts-ignore Class inheritance allowed for native defined classes
4967
- export class WidgetComponentSpline extends WidgetComponentBase {
4968
- private constructor();
5384
+ export class WidgetComponentRenderPrimitiveTypeCuboid extends WidgetComponentRenderPrimitiveTypeBase {
4969
5385
  /**
4970
5386
  * @remarks
4971
5387
  * This property can't be edited in restricted-execution mode.
4972
5388
  *
4973
5389
  */
4974
- splineType: SplineType;
5390
+ alpha?: number;
4975
5391
  /**
4976
5392
  * @remarks
4977
- * This function can't be called in restricted-execution mode.
4978
- *
4979
- * @throws This function can throw errors.
4980
- *
4981
- * {@link Error}
4982
- *
4983
- * {@link InvalidWidgetComponentError}
5393
+ * This property can't be edited in restricted-execution mode.
4984
5394
  *
4985
- * {@link InvalidWidgetError}
4986
5395
  */
4987
- getControlPoints(): Widget[];
5396
+ center: minecraftserver.Vector3;
4988
5397
  /**
4989
5398
  * @remarks
4990
- * This function can't be called in restricted-execution mode.
5399
+ * This property can't be edited in restricted-execution mode.
4991
5400
  *
4992
- * @throws This function can throw errors.
4993
5401
  */
4994
- getInterpolatedPoints(maxPointsPerControlSegment?: number): minecraftserver.Vector3[];
5402
+ color: minecraftserver.RGBA;
4995
5403
  /**
4996
5404
  * @remarks
4997
- * This function can't be called in restricted-execution mode.
4998
- *
4999
- * @throws This function can throw errors.
5405
+ * This property can't be edited in restricted-execution mode.
5000
5406
  *
5001
- * {@link InvalidWidgetComponentError}
5407
+ */
5408
+ lengthX: number;
5409
+ /**
5410
+ * @remarks
5411
+ * This property can't be edited in restricted-execution mode.
5002
5412
  *
5003
- * {@link InvalidWidgetError}
5004
5413
  */
5005
- setControlPoints(widgetList: Widget[]): void;
5006
- }
5007
-
5008
- // @ts-ignore Class inheritance allowed for native defined classes
5009
- export class WidgetComponentText extends WidgetComponentBase {
5010
- private constructor();
5414
+ lengthY: number;
5011
5415
  /**
5012
5416
  * @remarks
5013
5417
  * This property can't be edited in restricted-execution mode.
5014
5418
  *
5015
5419
  */
5016
- color: minecraftserver.RGBA;
5420
+ lengthZ: number;
5017
5421
  /**
5018
5422
  * @remarks
5019
5423
  * This property can't be edited in restricted-execution mode.
5020
5424
  *
5021
5425
  */
5022
- label: string;
5426
+ rotation?: minecraftserver.Vector3;
5427
+ constructor(
5428
+ center: minecraftserver.Vector3,
5429
+ lengthX: number,
5430
+ lengthY: number,
5431
+ lengthZ: number,
5432
+ color: minecraftserver.RGBA,
5433
+ rotation?: minecraftserver.Vector3,
5434
+ alpha?: number,
5435
+ );
5023
5436
  }
5024
5437
 
5025
5438
  // @ts-ignore Class inheritance allowed for native defined classes
5026
- export class WidgetComponentVolumeOutline extends WidgetComponentBase {
5027
- private constructor();
5439
+ export class WidgetComponentRenderPrimitiveTypeCylinder extends WidgetComponentRenderPrimitiveTypeBase {
5028
5440
  /**
5029
5441
  * @remarks
5030
5442
  * This property can't be edited in restricted-execution mode.
5031
5443
  *
5032
5444
  */
5033
- highlightHullColor: minecraftserver.RGBA;
5445
+ alpha?: number;
5446
+ /**
5447
+ * @remarks
5448
+ * This property can't be edited in restricted-execution mode.
5449
+ *
5450
+ */
5451
+ center: minecraftserver.Vector3;
5452
+ /**
5453
+ * @remarks
5454
+ * This property can't be edited in restricted-execution mode.
5455
+ *
5456
+ */
5457
+ color: minecraftserver.RGBA;
5458
+ /**
5459
+ * @remarks
5460
+ * This property can't be edited in restricted-execution mode.
5461
+ *
5462
+ */
5463
+ height: number;
5464
+ /**
5465
+ * @remarks
5466
+ * This property can't be edited in restricted-execution mode.
5467
+ *
5468
+ */
5469
+ radiusX: number;
5470
+ /**
5471
+ * @remarks
5472
+ * This property can't be edited in restricted-execution mode.
5473
+ *
5474
+ */
5475
+ radiusZ: number;
5476
+ /**
5477
+ * @remarks
5478
+ * This property can't be edited in restricted-execution mode.
5479
+ *
5480
+ */
5481
+ rotation?: minecraftserver.Vector3;
5482
+ constructor(
5483
+ center: minecraftserver.Vector3,
5484
+ radiusX: number,
5485
+ radiusZ: number,
5486
+ height: number,
5487
+ color: minecraftserver.RGBA,
5488
+ rotation?: minecraftserver.Vector3,
5489
+ alpha?: number,
5490
+ );
5491
+ }
5492
+
5493
+ // @ts-ignore Class inheritance allowed for native defined classes
5494
+ export class WidgetComponentRenderPrimitiveTypeDisc extends WidgetComponentRenderPrimitiveTypeBase {
5495
+ /**
5496
+ * @remarks
5497
+ * This property can't be edited in restricted-execution mode.
5498
+ *
5499
+ */
5500
+ center: minecraftserver.Vector3;
5501
+ /**
5502
+ * @remarks
5503
+ * This property can't be edited in restricted-execution mode.
5504
+ *
5505
+ */
5506
+ color: minecraftserver.RGBA;
5507
+ /**
5508
+ * @remarks
5509
+ * This property can't be edited in restricted-execution mode.
5510
+ *
5511
+ */
5512
+ radius: number;
5513
+ constructor(center: minecraftserver.Vector3, radius: number, color: minecraftserver.RGBA);
5514
+ }
5515
+
5516
+ // @ts-ignore Class inheritance allowed for native defined classes
5517
+ export class WidgetComponentRenderPrimitiveTypeEllipsoid extends WidgetComponentRenderPrimitiveTypeBase {
5518
+ /**
5519
+ * @remarks
5520
+ * This property can't be edited in restricted-execution mode.
5521
+ *
5522
+ */
5523
+ alpha?: number;
5524
+ /**
5525
+ * @remarks
5526
+ * This property can't be edited in restricted-execution mode.
5527
+ *
5528
+ */
5529
+ center: minecraftserver.Vector3;
5530
+ /**
5531
+ * @remarks
5532
+ * This property can't be edited in restricted-execution mode.
5533
+ *
5534
+ */
5535
+ color: minecraftserver.RGBA;
5536
+ /**
5537
+ * @remarks
5538
+ * This property can't be edited in restricted-execution mode.
5539
+ *
5540
+ */
5541
+ radii: minecraftserver.Vector3;
5542
+ /**
5543
+ * @remarks
5544
+ * This property can't be edited in restricted-execution mode.
5545
+ *
5546
+ */
5547
+ rotation?: minecraftserver.Vector3;
5548
+ constructor(
5549
+ center: minecraftserver.Vector3,
5550
+ radii: minecraftserver.Vector3,
5551
+ color: minecraftserver.RGBA,
5552
+ rotation?: minecraftserver.Vector3,
5553
+ alpha?: number,
5554
+ );
5555
+ }
5556
+
5557
+ // @ts-ignore Class inheritance allowed for native defined classes
5558
+ export class WidgetComponentRenderPrimitiveTypeLine extends WidgetComponentRenderPrimitiveTypeBase {
5559
+ /**
5560
+ * @remarks
5561
+ * This property can't be edited in restricted-execution mode.
5562
+ *
5563
+ */
5564
+ color: minecraftserver.RGBA;
5565
+ /**
5566
+ * @remarks
5567
+ * This property can't be edited in restricted-execution mode.
5568
+ *
5569
+ */
5570
+ end: minecraftserver.Vector3;
5571
+ /**
5572
+ * @remarks
5573
+ * This property can't be edited in restricted-execution mode.
5574
+ *
5575
+ */
5576
+ start: minecraftserver.Vector3;
5577
+ constructor(start: minecraftserver.Vector3, end: minecraftserver.Vector3, color: minecraftserver.RGBA);
5578
+ }
5579
+
5580
+ // @ts-ignore Class inheritance allowed for native defined classes
5581
+ export class WidgetComponentRenderPrimitiveTypePyramid extends WidgetComponentRenderPrimitiveTypeBase {
5582
+ /**
5583
+ * @remarks
5584
+ * This property can't be edited in restricted-execution mode.
5585
+ *
5586
+ */
5587
+ alpha?: number;
5588
+ /**
5589
+ * @remarks
5590
+ * This property can't be edited in restricted-execution mode.
5591
+ *
5592
+ */
5593
+ center: minecraftserver.Vector3;
5594
+ /**
5595
+ * @remarks
5596
+ * This property can't be edited in restricted-execution mode.
5597
+ *
5598
+ */
5599
+ color: minecraftserver.RGBA;
5600
+ /**
5601
+ * @remarks
5602
+ * This property can't be edited in restricted-execution mode.
5603
+ *
5604
+ */
5605
+ height: number;
5606
+ /**
5607
+ * @remarks
5608
+ * This property can't be edited in restricted-execution mode.
5609
+ *
5610
+ */
5611
+ rotation?: minecraftserver.Vector3;
5612
+ /**
5613
+ * @remarks
5614
+ * This property can't be edited in restricted-execution mode.
5615
+ *
5616
+ */
5617
+ widthX: number;
5618
+ /**
5619
+ * @remarks
5620
+ * This property can't be edited in restricted-execution mode.
5621
+ *
5622
+ */
5623
+ widthZ?: number;
5624
+ constructor(
5625
+ center: minecraftserver.Vector3,
5626
+ widthX: number,
5627
+ height: number,
5628
+ color: minecraftserver.RGBA,
5629
+ widthZ?: number,
5630
+ rotation?: minecraftserver.Vector3,
5631
+ alpha?: number,
5632
+ );
5633
+ }
5634
+
5635
+ // @ts-ignore Class inheritance allowed for native defined classes
5636
+ export class WidgetComponentSpline extends WidgetComponentBase {
5637
+ private constructor();
5638
+ /**
5639
+ * @remarks
5640
+ * This property can't be edited in restricted-execution mode.
5641
+ *
5642
+ */
5643
+ splineType: SplineType;
5644
+ /**
5645
+ * @remarks
5646
+ * This function can't be called in restricted-execution mode.
5647
+ *
5648
+ * @throws This function can throw errors.
5649
+ *
5650
+ * {@link Error}
5651
+ *
5652
+ * {@link InvalidWidgetComponentError}
5653
+ *
5654
+ * {@link InvalidWidgetError}
5655
+ */
5656
+ getControlPoints(): Widget[];
5657
+ /**
5658
+ * @remarks
5659
+ * This function can't be called in restricted-execution mode.
5660
+ *
5661
+ * @throws This function can throw errors.
5662
+ */
5663
+ getInterpolatedPoints(maxPointsPerControlSegment?: number): minecraftserver.Vector3[];
5664
+ /**
5665
+ * @remarks
5666
+ * This function can't be called in restricted-execution mode.
5667
+ *
5668
+ * @throws This function can throw errors.
5669
+ *
5670
+ * {@link InvalidWidgetComponentError}
5671
+ *
5672
+ * {@link InvalidWidgetError}
5673
+ */
5674
+ setControlPoints(widgetList: Widget[]): void;
5675
+ }
5676
+
5677
+ // @ts-ignore Class inheritance allowed for native defined classes
5678
+ export class WidgetComponentText extends WidgetComponentBase {
5679
+ private constructor();
5680
+ /**
5681
+ * @remarks
5682
+ * This property can't be edited in restricted-execution mode.
5683
+ *
5684
+ */
5685
+ color: minecraftserver.RGBA;
5686
+ /**
5687
+ * @remarks
5688
+ * This property can't be edited in restricted-execution mode.
5689
+ *
5690
+ */
5691
+ label: string;
5692
+ }
5693
+
5694
+ // @ts-ignore Class inheritance allowed for native defined classes
5695
+ export class WidgetComponentVolumeOutline extends WidgetComponentBase {
5696
+ private constructor();
5697
+ /**
5698
+ * @remarks
5699
+ * This property can't be edited in restricted-execution mode.
5700
+ *
5701
+ */
5702
+ highlightHullColor: minecraftserver.RGBA;
5034
5703
  /**
5035
5704
  * @remarks
5036
5705
  * This property can't be edited in restricted-execution mode.
@@ -5301,6 +5970,7 @@ export interface BuiltInUIManager {
5301
5970
  * is being written to the world
5302
5971
  */
5303
5972
  export interface ClipboardWriteOptions {
5973
+ excludeAirBlocks?: boolean;
5304
5974
  /**
5305
5975
  * @remarks
5306
5976
  * An enum which represents the axis (or combination of axis')
@@ -5334,7 +6004,9 @@ export interface ClipboardWriteOptions {
5334
6004
  export interface ConeBrushShapeSettings {
5335
6005
  depth: number;
5336
6006
  height: number;
6007
+ hollow: boolean;
5337
6008
  radius: number;
6009
+ thickness: number;
5338
6010
  uniform: boolean;
5339
6011
  width: number;
5340
6012
  xRotation: number;
@@ -5359,6 +6031,8 @@ export interface ContiguousSelectionProperties {
5359
6031
  export interface CuboidBrushShapeSettings {
5360
6032
  depth: number;
5361
6033
  height: number;
6034
+ hollow: boolean;
6035
+ thickness: number;
5362
6036
  uniform: boolean;
5363
6037
  width: number;
5364
6038
  xRotation: number;
@@ -5453,7 +6127,9 @@ export interface CursorRay {
5453
6127
  export interface CylinderBrushShapeSettings {
5454
6128
  depth: number;
5455
6129
  height: number;
6130
+ hollow: boolean;
5456
6131
  radius: number;
6132
+ thickness: number;
5457
6133
  uniform: boolean;
5458
6134
  width: number;
5459
6135
  xRotation: number;
@@ -5476,7 +6152,9 @@ export interface EditorStructureSearchOptions {
5476
6152
  export interface EllipsoidBrushShapeSettings {
5477
6153
  depth: number;
5478
6154
  height: number;
6155
+ hollow: boolean;
5479
6156
  radius: number;
6157
+ thickness: number;
5480
6158
  uniform: boolean;
5481
6159
  width: number;
5482
6160
  xRotation: number;
@@ -5568,9 +6246,9 @@ export interface GameOptions {
5568
6246
  immediateRespawn?: boolean;
5569
6247
  insomnia?: boolean;
5570
6248
  keepInventory?: boolean;
6249
+ keepPlayerData?: boolean;
5571
6250
  lanVisibility?: boolean;
5572
6251
  limitedCrafting?: boolean;
5573
- locatorBar?: boolean;
5574
6252
  maxCommandChainLength?: number;
5575
6253
  mobGriefing?: boolean;
5576
6254
  mobLoot?: boolean;
@@ -5579,6 +6257,7 @@ export interface GameOptions {
5579
6257
  naturalRegeneration?: boolean;
5580
6258
  playerAccess?: GamePublishSetting;
5581
6259
  playerPermissions?: minecraftserver.PlayerPermissionLevel;
6260
+ playerWaypoints?: minecraftserver.PlayerWaypointsMode;
5582
6261
  randomTickSpeed?: number;
5583
6262
  recipeUnlocking?: boolean;
5584
6263
  respawnBlocksExplode?: boolean;
@@ -5804,219 +6483,702 @@ export interface IBlockTablePropertyItem extends IPropertyItemBase {
5804
6483
  export interface IBlockTablePropertyItemOptions extends IPropertyItemOptionsBase {
5805
6484
  /**
5806
6485
  * @remarks
5807
- * Map of block entries in the block table.
6486
+ * Map of block entries in the block table.
6487
+ *
6488
+ */
6489
+ entries?: Map<string, IBlockTableEntryInfo>;
6490
+ /**
6491
+ * @remarks
6492
+ * If true label text will be hidden. It will be visible by
6493
+ * default.
6494
+ *
6495
+ */
6496
+ hiddenLabel?: boolean;
6497
+ /**
6498
+ * @remarks
6499
+ * This callback is called when UI control operation is
6500
+ * selected from the UI.
6501
+ *
6502
+ */
6503
+ onOperationClick?: (block: string, operation: BlockTableOperationType) => void;
6504
+ /**
6505
+ * @remarks
6506
+ * Localized title of the property item.
6507
+ *
6508
+ */
6509
+ title?: LocalizedString;
6510
+ /**
6511
+ * @remarks
6512
+ * Tooltip description of the property item.
6513
+ *
6514
+ */
6515
+ tooltip?: LocalizedString;
6516
+ }
6517
+
6518
+ /**
6519
+ * A property item which supports boolean properties
6520
+ */
6521
+ // @ts-ignore Class inheritance allowed for native defined classes
6522
+ export interface IBoolPropertyItem extends IPropertyItemBase {
6523
+ /**
6524
+ * @remarks
6525
+ * Current value of the property item.
6526
+ *
6527
+ */
6528
+ readonly value: boolean;
6529
+ /**
6530
+ * @remarks
6531
+ * Sets title of the property item.
6532
+ *
6533
+ */
6534
+ setTitle(title: LocalizedString | undefined): void;
6535
+ /**
6536
+ * @remarks
6537
+ * Sets tooltip description of the property item.
6538
+ *
6539
+ */
6540
+ setTooltip(tooltip: BasicTooltipContent | undefined): void;
6541
+ }
6542
+
6543
+ /**
6544
+ * Optional properties for Bool property item
6545
+ */
6546
+ // @ts-ignore Class inheritance allowed for native defined classes
6547
+ export interface IBoolPropertyItemOptions extends IPropertyItemOptionsBase {
6548
+ /**
6549
+ * @remarks
6550
+ * Changes checkbox variant to use a custom icon
6551
+ *
6552
+ */
6553
+ checkboxIcon?: string;
6554
+ /**
6555
+ * @remarks
6556
+ * If true label text will be hidden. It will be visible by
6557
+ * default.
6558
+ *
6559
+ */
6560
+ hiddenLabel?: boolean;
6561
+ /**
6562
+ * @remarks
6563
+ * This callback is called when UI control value is changed.
6564
+ *
6565
+ */
6566
+ onChange?: (newValue: boolean, oldValue: boolean) => void;
6567
+ /**
6568
+ * @remarks
6569
+ * Localized title of the text item.
6570
+ *
6571
+ */
6572
+ title?: LocalizedString;
6573
+ /**
6574
+ * @remarks
6575
+ * Tooltip description of the property item
6576
+ *
6577
+ */
6578
+ tooltip?: BasicTooltipContent;
6579
+ /**
6580
+ * @remarks
6581
+ * Determines how we display bool as a UI element. If
6582
+ * undefined, it will default to Checkbox.
6583
+ *
6584
+ */
6585
+ variant?: BoolPropertyItemVariant;
6586
+ }
6587
+
6588
+ /**
6589
+ * A property item pane which supports multiple buttons
6590
+ */
6591
+ // @ts-ignore Class inheritance allowed for native defined classes
6592
+ export interface IButtonPanePropertyItem extends IPropertyItemBase, IPane {
6593
+ /**
6594
+ * @remarks
6595
+ * Adds a button to the pane and binds the specified action to
6596
+ * the button interaction.
6597
+ *
6598
+ */
6599
+ addButton(
6600
+ action: ButtonPropertyItemSupportedActionTypes,
6601
+ options?: IButtonPropertyItemOptions,
6602
+ ): IButtonPropertyItem;
6603
+ }
6604
+
6605
+ /**
6606
+ * Optional properties for Button Pane property item
6607
+ */
6608
+ export interface IButtonPanePropertyItemOptions {
6609
+ /**
6610
+ * @remarks
6611
+ * Minimum width for each item within the layout. If undefined,
6612
+ * it will default to 6.
6613
+ *
6614
+ */
6615
+ itemMinWidth?: number;
6616
+ }
6617
+
6618
+ /**
6619
+ * A property item which supports Button properties
6620
+ */
6621
+ // @ts-ignore Class inheritance allowed for native defined classes
6622
+ export interface IButtonPropertyItem extends IPropertyItemBase {
6623
+ /**
6624
+ * @remarks
6625
+ * Replace action assigned to the button.
6626
+ *
6627
+ * @param action
6628
+ * New action to replace the existing with.
6629
+ */
6630
+ replaceAction(action: RegisteredAction<NoArgsAction>): void;
6631
+ /**
6632
+ * @remarks
6633
+ * Updates icon of the button.
6634
+ *
6635
+ * @param icon
6636
+ * New button icon.
6637
+ */
6638
+ setIcon(icon: string | undefined): void;
6639
+ /**
6640
+ * @remarks
6641
+ * Updates title of the button.
6642
+ *
6643
+ * @param title
6644
+ * New button title.
6645
+ */
6646
+ setTitle(title: LocalizedString | undefined): void;
6647
+ /**
6648
+ * @remarks
6649
+ * Updates tooltip description of the button.
6650
+ *
6651
+ * @param tooltip
6652
+ * New button tooltip.
6653
+ */
6654
+ setTooltip(tooltip: BasicTooltipContent | undefined): void;
6655
+ }
6656
+
6657
+ /**
6658
+ * Optional properties for Button property item
6659
+ */
6660
+ // @ts-ignore Class inheritance allowed for native defined classes
6661
+ export interface IButtonPropertyItemOptions extends IPropertyItemOptionsBase {
6662
+ /**
6663
+ * @remarks
6664
+ * If true label text will be hidden. It will be visible by
6665
+ * default.
6666
+ *
6667
+ */
6668
+ hiddenLabel?: boolean;
6669
+ /**
6670
+ * @remarks
6671
+ * Icon image of the property item.
6672
+ *
6673
+ */
6674
+ icon?: string;
6675
+ /**
6676
+ * @remarks
6677
+ * Shrinks button to icon size if button has an icon.
6678
+ *
6679
+ */
6680
+ shrinkToIcon?: boolean;
6681
+ /**
6682
+ * @remarks
6683
+ * Localized title of the property item.
6684
+ *
6685
+ */
6686
+ title?: LocalizedString;
6687
+ /**
6688
+ * @remarks
6689
+ * Tooltip description of the property item.
6690
+ *
6691
+ */
6692
+ tooltip?: BasicTooltipContent;
6693
+ /**
6694
+ * @remarks
6695
+ * The variant for the button. By default it is Primary.
6696
+ *
6697
+ */
6698
+ variant?: ButtonVariant;
6699
+ }
6700
+
6701
+ export interface ICollectionTreeEntry {
6702
+ /**
6703
+ * @remarks
6704
+ * Unique identifier for the entry.
6705
+ *
6706
+ */
6707
+ readonly id: string;
6708
+ /**
6709
+ * @remarks
6710
+ * Index of the entry in the folder
6711
+ *
6712
+ */
6713
+ readonly index: number;
6714
+ /**
6715
+ * @remarks
6716
+ * Parent folder of the entry.
6717
+ *
6718
+ */
6719
+ readonly parent: ICollectionTreeFolder;
6720
+ /**
6721
+ * @remarks
6722
+ * Selected state of the entry
6723
+ *
6724
+ */
6725
+ readonly selected: boolean;
6726
+ /**
6727
+ * @remarks
6728
+ * Adds a dropdown item to the entry
6729
+ *
6730
+ */
6731
+ addDropdownItem(params: ICollectionTreeEntryDropdownItemParams): ICollectionTreeEntryDropdownItem;
6732
+ /**
6733
+ * @remarks
6734
+ * Adds a number item to the entry
6735
+ *
6736
+ */
6737
+ addNumberItem(params: ICollectionTreeEntryNumberItemParams): ICollectionTreeEntryNumberItem;
6738
+ /**
6739
+ * @remarks
6740
+ * Adds a string item to the entry
6741
+ *
6742
+ */
6743
+ addStringItem(params: ICollectionTreeEntryStringItemParams): ICollectionTreeEntryStringItem;
6744
+ /**
6745
+ * @remarks
6746
+ * Gets the tree entry item by index
6747
+ *
6748
+ * @param index
6749
+ * Index of the entry item
6750
+ */
6751
+ getItemByIndex(index: number): ICollectionTreeEntryItem | undefined;
6752
+ /**
6753
+ * @remarks
6754
+ * Set color associated with the entry
6755
+ *
6756
+ */
6757
+ setColor(color: minecraftserver.RGBA | undefined): void;
6758
+ /**
6759
+ * @remarks
6760
+ * Set selected state of the entry.
6761
+ *
6762
+ * @param selected
6763
+ * New selected state
6764
+ */
6765
+ setSelected(selected: boolean): void;
6766
+ }
6767
+
6768
+ // @ts-ignore Class inheritance allowed for native defined classes
6769
+ export interface ICollectionTreeEntryDropdownItem extends ICollectionTreeEntryItem {
6770
+ /**
6771
+ * @remarks
6772
+ * Value of the entry item.
6773
+ *
6774
+ */
6775
+ readonly value: string;
6776
+ /**
6777
+ * @remarks
6778
+ * Update list of dropdown menu options.
6779
+ *
6780
+ * @param menuOptions
6781
+ * New list of updated menu options
6782
+ * @param newValue
6783
+ * New value value to use for the dropdown
6784
+ */
6785
+ updateMenuOptions(menuOptions: ICollectionTreeEntryDropdownItemMenuOption[], newValue?: string): void;
6786
+ }
6787
+
6788
+ export interface ICollectionTreeEntryItem {
6789
+ /**
6790
+ * @remarks
6791
+ * Enabled state of the entry.
6792
+ *
6793
+ */
6794
+ readonly enabled: boolean;
6795
+ /**
6796
+ * @remarks
6797
+ * Tree entry that owns the item.
6798
+ *
6799
+ */
6800
+ readonly parentEntry: ICollectionTreeEntry;
6801
+ /**
6802
+ * @remarks
6803
+ * Type of the item.
6804
+ *
6805
+ */
6806
+ readonly type: CollectionTreeEntryItemType;
6807
+ /**
6808
+ * @remarks
6809
+ * Visibility state of the entry.
6810
+ *
6811
+ */
6812
+ readonly visible: boolean;
6813
+ /**
6814
+ * @remarks
6815
+ * Updates enabled state of the item.
6816
+ *
6817
+ * @param enabled
6818
+ * New value.
6819
+ */
6820
+ setEnabled(enabled: boolean): void;
6821
+ /**
6822
+ * @remarks
6823
+ * Updates title of the item.
6824
+ *
6825
+ * @param title
6826
+ * New title.
6827
+ */
6828
+ setTitle(title: LocalizedString | undefined): void;
6829
+ /**
6830
+ * @remarks
6831
+ * Updates tooltip of the item.
6832
+ *
6833
+ */
6834
+ setTooltip(title: BasicTooltipContent | undefined): void;
6835
+ /**
6836
+ * @remarks
6837
+ * Updates visibility of the item.
6838
+ *
6839
+ * @param visible
6840
+ * New value.
6841
+ */
6842
+ setVisible(visible: boolean): void;
6843
+ }
6844
+
6845
+ // @ts-ignore Class inheritance allowed for native defined classes
6846
+ export interface ICollectionTreeEntryNumberItem extends ICollectionTreeEntryItem {
6847
+ /**
6848
+ * @remarks
6849
+ * Value of the entry item.
6850
+ *
6851
+ */
6852
+ readonly value: number;
6853
+ }
6854
+
6855
+ // @ts-ignore Class inheritance allowed for native defined classes
6856
+ export interface ICollectionTreeEntryStringItem extends ICollectionTreeEntryItem {
6857
+ /**
6858
+ * @remarks
6859
+ * Value of the entry item.
6860
+ *
6861
+ */
6862
+ readonly value: string;
6863
+ }
6864
+
6865
+ /**
6866
+ * Container for collection items
6867
+ */
6868
+ export interface ICollectionTreeFolder {
6869
+ /**
6870
+ * @remarks
6871
+ * Count of the entries
6872
+ *
6873
+ */
6874
+ readonly entryCount: number;
6875
+ /**
6876
+ * @remarks
6877
+ * Expanded state of the folder
6878
+ *
6879
+ */
6880
+ readonly expanded: boolean;
6881
+ /**
6882
+ * @remarks
6883
+ * Count of the child folders
6884
+ *
6885
+ */
6886
+ readonly folderCount: number;
6887
+ /**
6888
+ * @remarks
6889
+ * Unique identifier of the folder
6890
+ *
6891
+ */
6892
+ readonly id: string;
6893
+ /**
6894
+ * @remarks
6895
+ * Parent folder
6896
+ *
6897
+ */
6898
+ readonly parent: ICollectionTreeFolder | undefined;
6899
+ /**
6900
+ * @remarks
6901
+ * Selected state of the folder
6902
+ *
6903
+ */
6904
+ readonly selected: boolean;
6905
+ /**
6906
+ * @remarks
6907
+ * Title of the folder
6908
+ *
6909
+ */
6910
+ readonly title: LocalizedString;
6911
+ /**
6912
+ * @remarks
6913
+ * User data associated with the folder
6914
+ *
6915
+ */
6916
+ readonly userData: unknown;
6917
+ /**
6918
+ * @remarks
6919
+ * Adds a new entry to the folder
6920
+ *
6921
+ * @param options
6922
+ * Options to create a folder
6923
+ */
6924
+ addEntry(options: ICollectionTreeEntryOptions): ICollectionTreeEntry;
6925
+ /**
6926
+ * @remarks
6927
+ * Creates a new child folder
6928
+ *
6929
+ * @param options
6930
+ * Options to create a folder
6931
+ */
6932
+ addFolder(options: ICollectionTreeFolderOptions): ICollectionTreeFolder;
6933
+ /**
6934
+ * @remarks
6935
+ * Iterates over entries within the folder
6936
+ *
6937
+ * @param callback
6938
+ * Returning false will stop the iteration
6939
+ */
6940
+ forEachEntry(callback: (entry: ICollectionTreeEntry, index: number) => boolean): void;
6941
+ /**
6942
+ * @remarks
6943
+ * Iterates over the first layer of folders
6944
+ *
6945
+ * @param callback
6946
+ * Returning false will stop the iteration
6947
+ */
6948
+ forEachFolder(callback: (folder: ICollectionTreeFolder) => boolean): void;
6949
+ /**
6950
+ * @remarks
6951
+ * Iterates over the first layer of folders
6952
+ *
6953
+ * @param callback
6954
+ * Returning false will stop the iteration
6955
+ */
6956
+ forEachFolder(callback: (folder: ICollectionTreeFolder) => boolean): void;
6957
+ /**
6958
+ * @remarks
6959
+ * Gets the entry by its unique identifier
6960
+ *
6961
+ * @param id
6962
+ * Identifier of the folder
6963
+ */
6964
+ getEntryById(id: string): ICollectionTreeEntry | undefined;
6965
+ /**
6966
+ * @remarks
6967
+ * Gets the entry at the index
6968
+ *
6969
+ * @param index
6970
+ * Index of the entry
6971
+ */
6972
+ getEntryByIndex(index: number): ICollectionTreeEntry | undefined;
6973
+ /**
6974
+ * @remarks
6975
+ * Find the folder with the id if it exists
6976
+ *
6977
+ * @param id
6978
+ * Identifier of the folder
6979
+ */
6980
+ getFolder(id: string): ICollectionTreeFolder | undefined;
6981
+ /**
6982
+ * @remarks
6983
+ * Removes the entry by its unique identifier if it exists
6984
+ *
6985
+ * @param id
6986
+ * Identifier of the folder
6987
+ */
6988
+ removeEntryById(id: string): boolean;
6989
+ /**
6990
+ * @remarks
6991
+ * Removes the entry at the index if it exists
5808
6992
  *
6993
+ * @param index
6994
+ * Index of the entry
5809
6995
  */
5810
- entries?: Map<string, IBlockTableEntryInfo>;
6996
+ removeEntryByIndex(index: number): boolean;
5811
6997
  /**
5812
6998
  * @remarks
5813
- * If true label text will be hidden. It will be visible by
5814
- * default.
6999
+ * Removes the folder with the id if it exists at the root
5815
7000
  *
7001
+ * @param id
7002
+ * Identifier of the folder
5816
7003
  */
5817
- hiddenLabel?: boolean;
7004
+ removeFolder(id: string): boolean;
5818
7005
  /**
5819
7006
  * @remarks
5820
- * This callback is called when UI control operation is
5821
- * selected from the UI.
7007
+ * Set color of the entry.
5822
7008
  *
7009
+ * @param color
7010
+ * New color state
5823
7011
  */
5824
- onOperationClick?: (block: string, operation: BlockTableOperationType) => void;
7012
+ setColor(color: minecraftserver.RGBA | undefined): void;
5825
7013
  /**
5826
7014
  * @remarks
5827
- * Localized title of the property item.
7015
+ * Set expanded state of the entry.
5828
7016
  *
7017
+ * @param expanded
7018
+ * New expanded state
5829
7019
  */
5830
- title?: LocalizedString;
7020
+ setExpanded(expanded: boolean): void;
5831
7021
  /**
5832
7022
  * @remarks
5833
- * Tooltip description of the property item.
7023
+ * Updates the header action for the folder
5834
7024
  *
5835
7025
  */
5836
- tooltip?: LocalizedString;
5837
- }
5838
-
5839
- /**
5840
- * A property item which supports boolean properties
5841
- */
5842
- // @ts-ignore Class inheritance allowed for native defined classes
5843
- export interface IBoolPropertyItem extends IPropertyItemBase {
7026
+ setHeaderAction(actionParams: ICollectionTreeFolderHeaderActionParams | undefined): void;
5844
7027
  /**
5845
7028
  * @remarks
5846
- * Current value of the property item.
7029
+ * Updates menu items for the folder
5847
7030
  *
7031
+ * @param menu
7032
+ * New menu items
5848
7033
  */
5849
- readonly value: boolean;
7034
+ setMenu(menu: IMenuCreationParams[] | undefined): void;
5850
7035
  /**
5851
7036
  * @remarks
5852
- * Sets title of the property item.
7037
+ * Set selected state of the entry.
5853
7038
  *
7039
+ * @param selected
7040
+ * New selected state
5854
7041
  */
5855
- setTitle(title: LocalizedString | undefined): void;
7042
+ setSelected(selected: boolean): void;
5856
7043
  /**
5857
7044
  * @remarks
5858
- * Sets tooltip description of the property item.
7045
+ * Set title of the entry.
5859
7046
  *
7047
+ * @param title
7048
+ * New title state
5860
7049
  */
5861
- setTooltip(tooltip: BasicTooltipContent | undefined): void;
7050
+ setTitle(title: LocalizedString): void;
5862
7051
  }
5863
7052
 
5864
7053
  /**
5865
- * Optional properties for Bool property item
7054
+ * A property item which supports creating nested folders of
7055
+ * collection items
5866
7056
  */
5867
7057
  // @ts-ignore Class inheritance allowed for native defined classes
5868
- export interface IBoolPropertyItemOptions extends IPropertyItemOptionsBase {
5869
- /**
5870
- * @remarks
5871
- * Changes checkbox variant to use a custom icon
5872
- *
5873
- */
5874
- checkboxIcon?: string;
7058
+ export interface ICollectionTreePropertyItem extends IPropertyItemBase {
5875
7059
  /**
5876
7060
  * @remarks
5877
- * If true label text will be hidden. It will be visible by
5878
- * default.
7061
+ * Drag and drop support for the entries
5879
7062
  *
5880
7063
  */
5881
- hiddenLabel?: boolean;
7064
+ readonly canDragDropEntries: boolean;
5882
7065
  /**
5883
7066
  * @remarks
5884
- * This callback is called when UI control value is changed.
7067
+ * Count of the child folders
5885
7068
  *
5886
7069
  */
5887
- onChange?: (newValue: boolean, oldValue: boolean) => void;
7070
+ readonly folderCount: number;
5888
7071
  /**
5889
7072
  * @remarks
5890
- * Localized title of the text item.
7073
+ * View control pane for the collection tree
5891
7074
  *
5892
7075
  */
5893
- title?: LocalizedString;
7076
+ readonly viewControlPane: IListViewControlPane | undefined;
5894
7077
  /**
5895
7078
  * @remarks
5896
- * Tooltip description of the property item
7079
+ * Sort type for the folders.
5897
7080
  *
5898
7081
  */
5899
- tooltip?: BasicTooltipContent;
7082
+ readonly viewSortType: CollectionTreeSortType;
5900
7083
  /**
5901
7084
  * @remarks
5902
- * Determines how we display bool as a UI element. If
5903
- * undefined, it will default to Checkbox.
7085
+ * Creates a new folder at the root of the collection
5904
7086
  *
7087
+ * @param options
7088
+ * Options to create a folder
5905
7089
  */
5906
- variant?: BoolPropertyItemVariant;
5907
- }
5908
-
5909
- /**
5910
- * A property item pane which supports multiple buttons
5911
- */
5912
- // @ts-ignore Class inheritance allowed for native defined classes
5913
- export interface IButtonPanePropertyItem extends IPropertyItemBase, IPane {
7090
+ addFolder(options: ICollectionTreeFolderOptions): ICollectionTreeFolder;
5914
7091
  /**
5915
7092
  * @remarks
5916
- * Adds a button to the pane and binds the specified action to
5917
- * the button interaction.
7093
+ * Creates a pane that displays view and filtering
7094
+ * configurations for the collection tree if the parent
7095
+ * container supports it.
5918
7096
  *
5919
7097
  */
5920
- addButton(
5921
- action: ButtonPropertyItemSupportedActionTypes,
5922
- options?: IButtonPropertyItemOptions,
5923
- ): IButtonPropertyItem;
5924
- }
5925
-
5926
- /**
5927
- * Optional properties for Button Pane property item
5928
- */
5929
- export interface IButtonPanePropertyItemOptions {
7098
+ buildViewControl(options: ICollectionTreeViewControlPaneOptions): IListViewControlPane;
5930
7099
  /**
5931
7100
  * @remarks
5932
- * Minimum width for each item within the layout. If undefined,
5933
- * it will default to 6.
7101
+ * Iterates over the first layer of folders
5934
7102
  *
7103
+ * @param callback
7104
+ * Returning false will stop the iteration
5935
7105
  */
5936
- itemMinWidth?: number;
5937
- }
5938
-
5939
- /**
5940
- * A property item which supports Button properties
5941
- */
5942
- // @ts-ignore Class inheritance allowed for native defined classes
5943
- export interface IButtonPropertyItem extends IPropertyItemBase {
7106
+ forEachFolder(callback: (folder: ICollectionTreeFolder) => boolean): void;
5944
7107
  /**
5945
7108
  * @remarks
5946
- * Replace action assigned to the button.
7109
+ * Find the folder with the id if it exists at the root
5947
7110
  *
5948
- * @param action
5949
- * New action to replace the existing with.
7111
+ * @param id
7112
+ * Identifier of the folder
5950
7113
  */
5951
- replaceAction(action: RegisteredAction<NoArgsAction>): void;
7114
+ getFolder(id: string): ICollectionTreeFolder | undefined;
5952
7115
  /**
5953
7116
  * @remarks
5954
- * Updates icon of the button.
7117
+ * Removes the folder with the id if it exists at the root
5955
7118
  *
5956
- * @param icon
5957
- * New button icon.
7119
+ * @param id
7120
+ * Identifier of the folder
5958
7121
  */
5959
- setIcon(icon: string | undefined): void;
7122
+ removeFolder(id: string): boolean;
5960
7123
  /**
5961
7124
  * @remarks
5962
- * Updates title of the button.
7125
+ * Toggles drag and drop support for the entries
5963
7126
  *
5964
- * @param title
5965
- * New button title.
7127
+ * @param enabled
7128
+ * Whether to enable drag and drop
5966
7129
  */
5967
- setTitle(title: LocalizedString | undefined): void;
7130
+ setCanDragDropEntries(enabled: boolean): void;
5968
7131
  /**
5969
7132
  * @remarks
5970
- * Updates tooltip description of the button.
7133
+ * Updates the folder sort type for the whole view
5971
7134
  *
5972
- * @param tooltip
5973
- * New button tooltip.
7135
+ * @param sortType
7136
+ * New sort type
5974
7137
  */
5975
- setTooltip(tooltip: BasicTooltipContent | undefined): void;
7138
+ setViewSortType(sortType: CollectionTreeSortType | undefined): void;
5976
7139
  }
5977
7140
 
5978
7141
  /**
5979
- * Optional properties for Button property item
7142
+ * Optional properties for Collection Tree Pane property item
5980
7143
  */
5981
7144
  // @ts-ignore Class inheritance allowed for native defined classes
5982
- export interface IButtonPropertyItemOptions extends IPropertyItemOptionsBase {
5983
- /**
5984
- * @remarks
5985
- * If true label text will be hidden. It will be visible by
5986
- * default.
5987
- *
5988
- */
5989
- hiddenLabel?: boolean;
7145
+ export interface ICollectionTreePropertyItemOptions extends IPropertyItemOptionsBase {
5990
7146
  /**
5991
7147
  * @remarks
5992
- * Icon image of the property item.
7148
+ * Setting true will enable drag and drop support for entries.
5993
7149
  *
5994
7150
  */
5995
- icon?: string;
7151
+ canDragDropEntries?: boolean;
5996
7152
  /**
5997
7153
  * @remarks
5998
- * Shrinks button to icon size if button has an icon.
7154
+ * Localized title of the property item.
5999
7155
  *
6000
7156
  */
6001
- shrinkToIcon?: boolean;
7157
+ title?: LocalizedString;
6002
7158
  /**
6003
7159
  * @remarks
6004
- * Localized title of the property item.
7160
+ * Custom sort type for folders view.
6005
7161
  *
6006
7162
  */
6007
- title?: LocalizedString;
7163
+ viewSortType?: CollectionTreeSortType;
7164
+ }
7165
+
7166
+ // @ts-ignore Class inheritance allowed for native defined classes
7167
+ export interface ICollectionTreeViewControlPaneOptions extends IListViewControlPaneOptions {
6008
7168
  /**
6009
7169
  * @remarks
6010
- * Tooltip description of the property item.
7170
+ * This function will be called whenever the filter is changed
7171
+ * by the user
6011
7172
  *
6012
7173
  */
6013
- tooltip?: BasicTooltipContent;
7174
+ onFilterChanged?: (visibleFolders: string[]) => void;
6014
7175
  /**
6015
7176
  * @remarks
6016
- * The variant for the button. By default it is Primary.
7177
+ * Custom sort options. If undefined, collection tree sort
7178
+ * options will be used.
6017
7179
  *
6018
7180
  */
6019
- variant?: ButtonVariant;
7181
+ sortOptions?: CollectionTreeSortType[];
6020
7182
  }
6021
7183
 
6022
7184
  /**
@@ -6874,6 +8036,12 @@ export interface IListPanePropertyItem extends IPropertyItemBase, IPane {
6874
8036
  *
6875
8037
  */
6876
8038
  readonly slotCount: number;
8039
+ /**
8040
+ * @remarks
8041
+ * View control pane for the list
8042
+ *
8043
+ */
8044
+ readonly viewControlPane: IListViewControlPane | undefined;
6877
8045
  /**
6878
8046
  * @remarks
6879
8047
  * Current sorting type for the pane slots
@@ -6886,6 +8054,14 @@ export interface IListPanePropertyItem extends IPropertyItemBase, IPane {
6886
8054
  *
6887
8055
  */
6888
8056
  addSlot(params: ListPaneSlotCreationProps): IListPaneSlot;
8057
+ /**
8058
+ * @remarks
8059
+ * Creates a pane that displays view and filtering
8060
+ * configurations for the list if the parent container supports
8061
+ * it.
8062
+ *
8063
+ */
8064
+ buildViewControl(options: IListPaneViewControlPaneOptions): IListViewControlPane;
6889
8065
  /**
6890
8066
  * @remarks
6891
8067
  * Finds the slot with the identifier.
@@ -6959,7 +8135,8 @@ export interface IListPanePropertyItem extends IPropertyItemBase, IPane {
6959
8135
  export interface IListPanePropertyItemOptions extends IPropertyItemOptionsBase {
6960
8136
  /**
6961
8137
  * @remarks
6962
- * This will be the height of the list withing the pane
8138
+ * Default slots to initialize the list with. If undefined, the
8139
+ * list will be empty.
6963
8140
  *
6964
8141
  */
6965
8142
  defaultSlots?: ListPaneSlotCreationProps[];
@@ -6972,17 +8149,10 @@ export interface IListPanePropertyItemOptions extends IPropertyItemOptionsBase {
6972
8149
  fixedHeight?: boolean;
6973
8150
  /**
6974
8151
  * @remarks
6975
- * This will be the height of the list withing the pane
8152
+ * This will be the height of the list within the pane
6976
8153
  *
6977
8154
  */
6978
8155
  height?: number;
6979
- /**
6980
- * @remarks
6981
- * Layout for the list will need to be predefined, and using
6982
- * wrong layout shape while creating slots will throw
6983
- *
6984
- */
6985
- layout: ListPaneSlotLayout;
6986
8156
  /**
6987
8157
  * @remarks
6988
8158
  * This callback is fired whenever a clickable slot is pressed
@@ -6996,6 +8166,14 @@ export interface IListPanePropertyItemOptions extends IPropertyItemOptionsBase {
6996
8166
  *
6997
8167
  */
6998
8168
  onSlotSelectionChange?: (slot: IListPaneSlot, state: boolean) => void;
8169
+ /**
8170
+ * @remarks
8171
+ * Slot configuration for the list. The slot entry layout must
8172
+ * be predefined, and using an incorrect layout while creating
8173
+ * slots will throw an error.
8174
+ *
8175
+ */
8176
+ slotConfig: ListPaneSlotConfiguration;
6999
8177
  /**
7000
8178
  * @remarks
7001
8179
  * Localized title of the property item.
@@ -7161,6 +8339,117 @@ export interface IListPaneTextEntry extends IListPaneEntry {
7161
8339
  setValue(value: LocalizedString): void;
7162
8340
  }
7163
8341
 
8342
+ // @ts-ignore Class inheritance allowed for native defined classes
8343
+ export interface IListPaneViewControlPaneOptions extends IListViewControlPaneOptions {
8344
+ /**
8345
+ * @remarks
8346
+ * Flags to determine visible filters. If undefined it will be
8347
+ * All.
8348
+ *
8349
+ */
8350
+ filterFlags?: ListViewControlFilterFlags;
8351
+ /**
8352
+ * @remarks
8353
+ * This function will be called whenever the filter is changed
8354
+ * by the user
8355
+ *
8356
+ */
8357
+ onFilterChanged?: (visibleSlotIds: string[]) => void;
8358
+ /**
8359
+ * @remarks
8360
+ * Custom sort options. If undefined, list pane sort options
8361
+ * will be used.
8362
+ *
8363
+ */
8364
+ sortOptions?: ListPaneViewSortType[];
8365
+ }
8366
+
8367
+ export interface IListViewControlPane {
8368
+ /**
8369
+ * @remarks
8370
+ * Unique identifier
8371
+ *
8372
+ */
8373
+ readonly id: string;
8374
+ /**
8375
+ * @remarks
8376
+ * Active state of the filter
8377
+ *
8378
+ */
8379
+ readonly isFilterActive: boolean;
8380
+ /**
8381
+ * @remarks
8382
+ * Visible state of the pane
8383
+ *
8384
+ */
8385
+ readonly visible: boolean;
8386
+ /**
8387
+ * @remarks
8388
+ * Returns the state of an existing action
8389
+ *
8390
+ * @param id
8391
+ * Identifier for the action
8392
+ */
8393
+ getActionState(id: string): ListViewControlActionState | undefined;
8394
+ /**
8395
+ * @remarks
8396
+ * Updates enabled state of the existing action
8397
+ *
8398
+ * @param id
8399
+ * Identifier for the action
8400
+ * @param enabled
8401
+ * New action enabled state
8402
+ */
8403
+ setActionEnabledState(id: string, enabled: boolean): void;
8404
+ /**
8405
+ * @remarks
8406
+ * Updates existing actions
8407
+ *
8408
+ * @param newActions
8409
+ * New actions
8410
+ */
8411
+ setActionStates(newActions: ListViewControlAction[]): void;
8412
+ /**
8413
+ * @remarks
8414
+ * Updates visible state of the pane
8415
+ *
8416
+ * @param visible
8417
+ * New visibility state
8418
+ */
8419
+ setVisible(visible: boolean): void;
8420
+ /**
8421
+ * @remarks
8422
+ * Updates action item state for the view control
8423
+ *
8424
+ * @param id
8425
+ * Identifier for the action
8426
+ * @param newState
8427
+ * New action state
8428
+ */
8429
+ updateActionState(id: string, newState: ListViewControlActionState): void;
8430
+ }
8431
+
8432
+ export interface IListViewControlPaneOptions {
8433
+ /**
8434
+ * @remarks
8435
+ * Default actions
8436
+ *
8437
+ */
8438
+ actions?: ListViewControlAction[];
8439
+ /**
8440
+ * @remarks
8441
+ * This function will be called whenever user clicks an action
8442
+ *
8443
+ */
8444
+ onActionClicked?: (id: string) => void;
8445
+ /**
8446
+ * @remarks
8447
+ * Initial visibility state. It undefined, it will be false.
8448
+ *
8449
+ */
8450
+ visible?: boolean;
8451
+ }
8452
+
7164
8453
  export interface IMenu {
7165
8454
  /**
7166
8455
  * @remarks
@@ -7397,26 +8686,28 @@ export interface IMinimapPropertyItem extends IPropertyItemBase {
7397
8686
  readonly mapImageWidth: number;
7398
8687
  /**
7399
8688
  * @remarks
7400
- * Adds a marker to the minimap.
8689
+ * Get visibility for a specific marker type.
7401
8690
  *
7402
- * @param markerType
7403
- * The type of marker to add.
8691
+ * @param type
8692
+ * The marker type to query.
7404
8693
  */
7405
- assignMarker(markerType: MinimapMarkerType): void;
8694
+ isMarkerTypeVisible(type: MinimapMarkerType): boolean;
7406
8695
  /**
7407
8696
  * @remarks
7408
- * Refreshes the map.
8697
+ * Get me marker visibility.
7409
8698
  *
7410
8699
  */
7411
- refreshMap(): void;
8700
+ isMeMarkerShown(): boolean;
7412
8701
  /**
7413
8702
  * @remarks
7414
- * Removes a marker from the minimap.
8703
+ * Register a custom marker icon for UI rendering.
7415
8704
  *
7416
- * @param markerType
7417
- * The type of marker to remove.
8705
+ * @param iconIdentifier
8706
+ * The iconIdentifier string.
8707
+ * @param imagePath
8708
+ * The image resource path.
7418
8709
  */
7419
- removeMarker(markerType: MinimapMarkerType): void;
8710
+ registerCustomMarkerIcon(iconIdentifier: string, imagePath: string): void;
7420
8711
  /**
7421
8712
  * @remarks
7422
8713
  * Updates the size of the map image.
@@ -7427,6 +8718,30 @@ export interface IMinimapPropertyItem extends IPropertyItemBase {
7427
8718
  * New height of the image.
7428
8719
  */
7429
8720
  resizeMapImage(width: number, height: number): void;
8721
+ /**
8722
+ * @remarks
8723
+ * Set visibility for a specific marker type.
8724
+ *
8725
+ * @param type
8726
+ * The marker type to toggle.
8727
+ * @param visible
8728
+ * Whether the marker type should be visible.
8729
+ */
8730
+ setMarkerTypeVisible(type: MinimapMarkerType, visible: boolean): void;
8731
+ /**
8732
+ * @remarks
8733
+ * Set me marker visibility.
8734
+ *
8735
+ */
8736
+ setMeMarkerShown(shown: boolean): void;
8737
+ /**
8738
+ * @remarks
8739
+ * Unregister a custom marker icon.
8740
+ *
8741
+ * @param iconIdentifier
8742
+ * The iconIdentifier string.
8743
+ */
8744
+ unregisterCustomMarkerIcon(iconIdentifier: string): void;
7430
8745
  }
7431
8746
 
7432
8747
  /**
@@ -7443,18 +8758,28 @@ export interface IMinimapPropertyItemOptions extends IPropertyItemOptionsBase {
7443
8758
  alignment?: LayoutAlignment;
7444
8759
  /**
7445
8760
  * @remarks
7446
- * Whether to show me marker on the minimap. If undefined,
7447
- * defaults to true.
8761
+ * Whether the minimap is clickable. If undefined, defaults to
8762
+ * true.
7448
8763
  *
7449
8764
  */
7450
- isMeMarkerShown?: boolean;
8765
+ clickable?: boolean;
8766
+ /**
8767
+ * @remarks
8768
+ * Custom marker icon registration. Maps the iconIdentifier
8769
+ * (used when adding custom markers via addCustomMarker) to
8770
+ * image resource paths for UI rendering. Only needed for
8771
+ * Custom marker type. Multiplayer and Location use built-in
8772
+ * icons.
8773
+ *
8774
+ */
8775
+ customMarkerIcons?: Record<string, string>;
7451
8776
  /**
7452
8777
  * @remarks
7453
- * Whether to show multiplayer markers on the minimap. If
7454
- * undefined, defaults to false.
8778
+ * Whether to show me marker on the minimap. If undefined,
8779
+ * defaults to true.
7455
8780
  *
7456
8781
  */
7457
- isMultiplayerMarkerShown?: boolean;
8782
+ isMeMarkerShown?: boolean;
7458
8783
  /**
7459
8784
  * @remarks
7460
8785
  * Size of the map image. If undefined, defaults to 35.
@@ -7468,10 +8793,18 @@ export interface IMinimapPropertyItemOptions extends IPropertyItemOptionsBase {
7468
8793
  };
7469
8794
  /**
7470
8795
  * @remarks
7471
- * Called when map is clicked.
8796
+ * Called when the minimap is clicked.
7472
8797
  *
7473
8798
  */
7474
- onClick?: (x: number, y: number) => void;
8799
+ onClick?: (worldX: number, worldY: number, worldZ: number) => void;
8800
+ /**
8801
+ * @remarks
8802
+ * Per-type marker visibility. If omitted, no marker types are
8803
+ * shown. Only controls presentation. Markers must be added via
8804
+ * C++ API to exist.
8805
+ *
8806
+ */
8807
+ visibleMarkerTypes?: MinimapMarkerType[];
7475
8808
  }
7476
8809
 
7477
8810
  /**
@@ -8362,6 +9695,12 @@ export interface IPropertyPane extends IPane {
8362
9695
  *
8363
9696
  */
8364
9697
  addButtonPane(options?: IButtonPanePropertyItemOptions): IButtonPanePropertyItem;
9698
+ /**
9699
+ * @remarks
9700
+ * Adds a tree view for collections with folders and entries.
9701
+ *
9702
+ */
9703
+ addCollectionTree(options: ICollectionTreePropertyItemOptions): ICollectionTreePropertyItem;
8365
9704
  /**
8366
9705
  * @remarks
8367
9706
  * Adds a color picker item to the pane.
@@ -8477,6 +9816,12 @@ export interface IPropertyPane extends IPane {
8477
9816
  *
8478
9817
  */
8479
9818
  addString(value: IObservableProp<string>, options?: IStringPropertyItemOptions): IStringPropertyItem;
9819
+ /**
9820
+ * @remarks
9821
+ * Adds a tag container to the pane.
9822
+ *
9823
+ */
9824
+ addTagContainer(options?: ITagContainerPropertyItemOptions): ITagContainerPropertyItem;
8480
9825
  /**
8481
9826
  * @remarks
8482
9827
  * Adds a multiline Text item to the pane.
@@ -8507,6 +9852,15 @@ export interface IPropertyPane extends IPane {
8507
9852
  value: IObservableProp<minecraftserver.Vector3>,
8508
9853
  options?: IVector3PropertyItemOptions,
8509
9854
  ): IVector3PropertyItem;
9855
+ /**
9856
+ * @remarks
9857
+ * Adds a Vector3 Timeline item to the pane.
9858
+ *
9859
+ */
9860
+ addVector3Timeline(
9861
+ value: IObservableProp<number>,
9862
+ options?: IVector3TimelinePropertyItemOptions,
9863
+ ): IVector3TimelinePropertyItem;
8510
9864
  /**
8511
9865
  * @remarks
8512
9866
  * Begins pane construction for batching property item
@@ -8722,6 +10076,18 @@ export interface IRootPropertyPaneOptions extends IPropertyPaneOptions {
8722
10076
  *
8723
10077
  */
8724
10078
  headerAction?: IRootPropertyPaneHeaderAction;
10079
+ /**
10080
+ * @remarks
10081
+ * Pane icon shown in front of the pane header
10082
+ *
10083
+ */
10084
+ icon?: string;
10085
+ /**
10086
+ * @remarks
10087
+ * Determines how root pane will be displayed in the UI.
10088
+ *
10089
+ */
10090
+ location?: RootPaneLocation;
8725
10091
  }
8726
10092
 
8727
10093
  /**
@@ -8855,6 +10221,13 @@ export interface IStringPropertyItem extends IPropertyItemBase {
8855
10221
  */
8856
10222
  // @ts-ignore Class inheritance allowed for native defined classes
8857
10223
  export interface IStringPropertyItemOptions extends IPropertyItemOptionsBase {
10224
+ /**
10225
+ * @remarks
10226
+ * Shows clear button for the item. If undefined, it will be
10227
+ * true.
10228
+ *
10229
+ */
10230
+ hasClearButton?: boolean;
8858
10231
  /**
8859
10232
  * @remarks
8860
10233
  * If true label text will be hidden. If undefined, the label
@@ -8868,6 +10241,12 @@ export interface IStringPropertyItemOptions extends IPropertyItemOptionsBase {
8868
10241
  *
8869
10242
  */
8870
10243
  inlineLabel?: boolean;
10244
+ /**
10245
+ * @remarks
10246
+ * If defined, string will be handled as multiline input.
10247
+ *
10248
+ */
10249
+ multilineHeight?: number;
8871
10250
  /**
8872
10251
  * @remarks
8873
10252
  * This callback is called when UI control value is changed.
@@ -8948,6 +10327,12 @@ export interface ISubPanePropertyItemOptions extends IPropertyPaneOptions {
8948
10327
  *
8949
10328
  */
8950
10329
  hasMargins?: boolean;
10330
+ /**
10331
+ * @remarks
10332
+ * Pane icon shown in front of the pane header
10333
+ *
10334
+ */
10335
+ icon?: string;
8951
10336
  /**
8952
10337
  * @remarks
8953
10338
  * Determines layout of sub pane property items. If undefined,
@@ -8976,6 +10361,133 @@ export interface ISubPanePropertyItemOptions extends IPropertyPaneOptions {
8976
10361
  width?: number | LayoutSize;
8977
10362
  }
8978
10363
 
10364
+ /**
10365
+ * A property item which supports Tag Container properties
10366
+ */
10367
+ // @ts-ignore Class inheritance allowed for native defined classes
10368
+ export interface ITagContainerPropertyItem extends IPropertyItemBase {
10369
+ /**
10370
+ * @remarks
10371
+ * Current tags value of the property item.
10372
+ *
10373
+ */
10374
+ readonly tags: ReadonlyArray<string>;
10375
+ /**
10376
+ * @remarks
10377
+ * Current tags pool value of the property item.
10378
+ *
10379
+ */
10380
+ readonly tagsPool: ReadonlyArray<string>;
10381
+ /**
10382
+ * @remarks
10383
+ * Adds a tag to the current tags.
10384
+ *
10385
+ * @param tag
10386
+ * Tag to add.
10387
+ */
10388
+ addTag(tag: string): void;
10389
+ /**
10390
+ * @remarks
10391
+ * Adds a tag to the tags pool.
10392
+ *
10393
+ * @param tag
10394
+ * Tag to add to the pool.
10395
+ */
10396
+ addTagToPool(tag: string): void;
10397
+ /**
10398
+ * @remarks
10399
+ * Removes a tag from the current tags.
10400
+ *
10401
+ * @param tag
10402
+ * Tag to remove.
10403
+ */
10404
+ removeTag(tag: string): void;
10405
+ /**
10406
+ * @remarks
10407
+ * Removes a tag from the tags pool.
10408
+ *
10409
+ * @param tag
10410
+ * Tag to remove from the pool.
10411
+ */
10412
+ removeTagFromPool(tag: string): void;
10413
+ /**
10414
+ * @remarks
10415
+ * Updates all tags.
10416
+ *
10417
+ * @param tags
10418
+ * New tags array.
10419
+ */
10420
+ setTags(tags: string[] | undefined): void;
10421
+ /**
10422
+ * @remarks
10423
+ * Updates the tags pool.
10424
+ *
10425
+ * @param tagsPool
10426
+ * New tags pool array.
10427
+ */
10428
+ setTagsPool(tagsPool: string[] | undefined): void;
10429
+ /**
10430
+ * @remarks
10431
+ * Set title of the property item.
10432
+ *
10433
+ * @param title
10434
+ * New title.
10435
+ */
10436
+ setTitle(title: LocalizedString): void;
10437
+ /**
10438
+ * @remarks
10439
+ * Sets the visual variant of the tag container.
10440
+ *
10441
+ * @param variant
10442
+ * New variant.
10443
+ */
10444
+ setVariant(variant: TagContainerVariant | undefined): void;
10445
+ }
10446
+
10447
+ /**
10448
+ * Optional properties for Tag Container property item
10449
+ */
10450
+ // @ts-ignore Class inheritance allowed for native defined classes
10451
+ export interface ITagContainerPropertyItemOptions extends IPropertyItemOptionsBase {
10452
+ /**
10453
+ * @remarks
10454
+ * This callback is called when a tag is added.
10455
+ *
10456
+ */
10457
+ onTagAdded?: (tag: string) => void;
10458
+ /**
10459
+ * @remarks
10460
+ * This callback is called when a tag is removed.
10461
+ *
10462
+ */
10463
+ onTagRemoved?: (tag: string) => void;
10464
+ /**
10465
+ * @remarks
10466
+ * Initial tags for the container.
10467
+ *
10468
+ */
10469
+ tags?: string[];
10470
+ /**
10471
+ * @remarks
10472
+ * Available tags pool to select from.
10473
+ *
10474
+ */
10475
+ tagsPool?: string[];
10476
+ /**
10477
+ * @remarks
10478
+ * Localized title of the property item.
10479
+ *
10480
+ */
10481
+ title?: LocalizedString;
10482
+ /**
10483
+ * @remarks
10484
+ * Visual variant of the tag container. If undefined, it will
10485
+ * default to Inverted.
10486
+ *
10487
+ */
10488
+ variant?: TagContainerVariant;
10489
+ }
10490
+
8979
10491
  /**
8980
10492
  * A property item which supports Text properties
8981
10493
  */
@@ -9377,6 +10889,160 @@ export interface IVector3PropertyItemOptions extends IPropertyItemOptionsBase {
9377
10889
  tooltip?: BasicTooltipContent;
9378
10890
  }
9379
10891
 
10892
+ /**
10893
+ * A property item which supports Vector3 Timeline properties
10894
+ */
10895
+ // @ts-ignore Class inheritance allowed for native defined classes
10896
+ export interface IVector3TimelinePropertyItem extends IPropertyItemBase {
10897
+ /**
10898
+ * @remarks
10899
+ * Update vector3 timeline entry
10900
+ *
10901
+ * @param data
10902
+ * New vector3 node.
10903
+ */
10904
+ addNode(data: IVector3TimelinePropertyItemEntry): void;
10905
+ /**
10906
+ * @remarks
10907
+ * Get the list of nodes in the property item.
10908
+ *
10909
+ */
10910
+ getData(): IVector3TimelinePropertyItemEntry[];
10911
+ /**
10912
+ * @remarks
10913
+ * Get time current time value on the slider.
10914
+ *
10915
+ */
10916
+ getTime(): number;
10917
+ /**
10918
+ * @remarks
10919
+ * Remove vector3 node
10920
+ *
10921
+ * @param data
10922
+ * Node to be removed.
10923
+ */
10924
+ removeNode(data: IVector3TimelinePropertyItemEntry): void;
10925
+ /**
10926
+ * @remarks
10927
+ * Updates data entries value bounds.
10928
+ *
10929
+ */
10930
+ setBounds(bounds: { minValue: number; maxValue: number }): void;
10931
+ /**
10932
+ * @remarks
10933
+ * Set custom decimal precision for the calculations
10934
+ *
10935
+ */
10936
+ setPrecision(precision: number): void;
10937
+ /**
10938
+ * @remarks
10939
+ * Set time line slider value to a new value
10940
+ *
10941
+ * @param time
10942
+ * The new time value.
10943
+ */
10944
+ setTime(time: number): void;
10945
+ /**
10946
+ * @remarks
10947
+ * Updates title of the property item.
10948
+ *
10949
+ * @param title
10950
+ * New title.
10951
+ */
10952
+ setTitle(title: LocalizedString): void;
10953
+ /**
10954
+ * @remarks
10955
+ * Update node value
10956
+ *
10957
+ * @param data
10958
+ * Node to be updated.
10959
+ */
10960
+ updateNode(data: IVector3TimelinePropertyItemEntry): void;
10961
+ }
10962
+
10963
+ /**
10964
+ * Properties of vector3 timeline property item entry
10965
+ */
10966
+ export interface IVector3TimelinePropertyItemEntry {
10967
+ color?: minecraftserver.RGBA;
10968
+ id: string;
10969
+ time: number;
10970
+ value: minecraftserver.Vector3;
10971
+ }
10972
+
10973
+ /**
10974
+ * Optional properties for Vector3 Timeline property item
10975
+ */
10976
+ // @ts-ignore Class inheritance allowed for native defined classes
10977
+ export interface IVector3TimelinePropertyItemOptions extends IPropertyItemOptionsBase {
10978
+ /**
10979
+ * @remarks
10980
+ * The data bounds for the value node property
10981
+ *
10982
+ */
10983
+ bounds?: {
10984
+ minValue: number;
10985
+ maxValue: number;
10986
+ };
10987
+ /**
10988
+ * @remarks
10989
+ * Custom precision for the calculations
10990
+ *
10991
+ */
10992
+ decimalPrecision?: number;
10993
+ /**
10994
+ * @remarks
10995
+ * If true, nodes cannot be added or removed
10996
+ *
10997
+ */
10998
+ disableAddRemoveNodes?: boolean;
10999
+ /**
11000
+ * @remarks
11001
+ * List of nodes entries in the vector3 timeline.
11002
+ *
11003
+ */
11004
+ entries?: IVector3TimelinePropertyItemEntry[];
11005
+ /**
11006
+ * @remarks
11007
+ * True means nodes cannot be dragged or modified
11008
+ *
11009
+ */
11010
+ isGraphReadOnly?: boolean;
11011
+ /**
11012
+ * @remarks
11013
+ * Callback triggered when a new vector3 node is added to the
11014
+ * timeline.
11015
+ *
11016
+ */
11017
+ onNodeAdded?: (node: IVector3TimelinePropertyItemEntry) => void;
11018
+ /**
11019
+ * @remarks
11020
+ * Callback triggered when a timeline node's vector3 value
11021
+ * changes.
11022
+ *
11023
+ */
11024
+ onNodeChanged?: (node: IVector3TimelinePropertyItemEntry) => void;
11025
+ /**
11026
+ * @remarks
11027
+ * Callback triggered when a vector3 node is removed from the
11028
+ * timeline. *
11029
+ *
11030
+ */
11031
+ onNodeRemoved?: (node: IVector3TimelinePropertyItemEntry) => void;
11032
+ /**
11033
+ * @remarks
11034
+ * This callback is called when UI control time is changed.
11035
+ *
11036
+ */
11037
+ onTimeChanged?: (current: number, prev: number) => void;
11038
+ /**
11039
+ * @remarks
11040
+ * Localized title of the property item
11041
+ *
11042
+ */
11043
+ title?: LocalizedString;
11044
+ }
11045
+
9380
11046
  export interface LocalizationEntry {
9381
11047
  id: string;
9382
11048
  props?: string[];
@@ -9421,6 +11087,22 @@ export interface LogProperties {
9421
11087
  tags?: string[];
9422
11088
  }
9423
11089
 
11090
+ export interface MinimapCreateOptions {
11091
+ dataId?: string;
11092
+ freeCenter?: minecraftserver.VectorXZ;
11093
+ trackingMode?: MinimapTrackingMode;
11094
+ yLevel?: number;
11095
+ }
11096
+
11097
+ export interface MinimapMarkerData {
11098
+ clickable: boolean;
11099
+ color: minecraftserver.RGBA;
11100
+ label: string;
11101
+ position: minecraftserver.Vector3;
11102
+ rotation: number;
11103
+ tooltip: string;
11104
+ }
11105
+
9424
11106
  /**
9425
11107
  * Represents parameters to create a modal dialog
9426
11108
  */
@@ -9510,6 +11192,8 @@ export interface ProjectExportOptions {
9510
11192
  export interface PyramidBrushShapeSettings {
9511
11193
  depth: number;
9512
11194
  height: number;
11195
+ hollow: boolean;
11196
+ thickness: number;
9513
11197
  uniform: boolean;
9514
11198
  width: number;
9515
11199
  xRotation: number;
@@ -9679,6 +11363,11 @@ export class InvalidWidgetGroupError extends Error {
9679
11363
  private constructor();
9680
11364
  }
9681
11365
 
11366
+ // @ts-ignore Class inheritance allowed for native defined classes
11367
+ export class TransactionManagerNoChangesError extends Error {
11368
+ private constructor();
11369
+ }
11370
+
9682
11371
  /**
9683
11372
  * @remarks
9684
11373
  * Deserialize anything, defaults to the same behavior as