connected-spaces-platform.web 6.9.0 → 6.10.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.
@@ -327,6 +327,11 @@ function NumberFactory(nativePointer: NativePointer): number {
327
327
  }
328
328
  ProxyClassFactories["Number"] = NumberFactory;
329
329
 
330
+ function csp_EFeatureFlagFactory(nativePointer: NativePointer): EFeatureFlag {
331
+ return nativePointer.pointer as EFeatureFlag;
332
+ }
333
+ ProxyClassFactories["csp_EFeatureFlag"] = csp_EFeatureFlagFactory;
334
+
330
335
  function csp_common_EAssetChangeTypeFactory(
331
336
  nativePointer: NativePointer,
332
337
  ): Common.EAssetChangeType {
@@ -841,6 +846,14 @@ function csp_multiplayer_VideoPlayerSourceTypeFactory(
841
846
  ProxyClassFactories["csp_multiplayer_VideoPlayerSourceType"] =
842
847
  csp_multiplayer_VideoPlayerSourceTypeFactory;
843
848
 
849
+ function csp_multiplayer_StereoVideoTypeFactory(
850
+ nativePointer: NativePointer,
851
+ ): Multiplayer.StereoVideoType {
852
+ return nativePointer.pointer as Multiplayer.StereoVideoType;
853
+ }
854
+ ProxyClassFactories["csp_multiplayer_StereoVideoType"] =
855
+ csp_multiplayer_StereoVideoTypeFactory;
856
+
844
857
  function csp_multiplayer_VideoPlayerPropertyKeysFactory(
845
858
  nativePointer: NativePointer,
846
859
  ): Multiplayer.VideoPlayerPropertyKeys {
@@ -1002,6 +1015,13 @@ function csp_systems_EThirdPartyAuthenticationProvidersFactory(
1002
1015
  ProxyClassFactories["csp_systems_EThirdPartyAuthenticationProviders"] =
1003
1016
  csp_systems_EThirdPartyAuthenticationProvidersFactory;
1004
1017
 
1018
+ function csp_FeatureFlagFactory(
1019
+ nativePointer: NativePointer,
1020
+ ): NativeClassWrapper {
1021
+ return new FeatureFlag(nativePointer);
1022
+ }
1023
+ ProxyClassFactories["csp_FeatureFlag"] = csp_FeatureFlagFactory;
1024
+
1005
1025
  function csp_ServiceDefinitionFactory(
1006
1026
  nativePointer: NativePointer,
1007
1027
  ): NativeClassWrapper {
@@ -1702,6 +1722,14 @@ function csp_common_SequenceChangedNetworkEventDataFactory(
1702
1722
  ProxyClassFactories["csp_common_SequenceChangedNetworkEventData"] =
1703
1723
  csp_common_SequenceChangedNetworkEventDataFactory;
1704
1724
 
1725
+ function csp_common_AsyncCallCompletedEventDataFactory(
1726
+ nativePointer: NativePointer,
1727
+ ): NativeClassWrapper {
1728
+ return new Common.AsyncCallCompletedEventData(nativePointer);
1729
+ }
1730
+ ProxyClassFactories["csp_common_AsyncCallCompletedEventData"] =
1731
+ csp_common_AsyncCallCompletedEventDataFactory;
1732
+
1705
1733
  function csp_multiplayer_OfflineRealtimeEngineFactory(
1706
1734
  nativePointer: NativePointer,
1707
1735
  ): NativeClassWrapper {
@@ -2686,6 +2714,18 @@ function csp_common_Array_csp_multiplayer_ComponentUpdateInfoFactory(
2686
2714
  ProxyClassFactories["csp_common_Array_csp_multiplayer_ComponentUpdateInfo"] =
2687
2715
  csp_common_Array_csp_multiplayer_ComponentUpdateInfoFactory;
2688
2716
 
2717
+ function csp_common_Array_csp_FeatureFlagFactory(
2718
+ nativePointer: NativePointer,
2719
+ ): NativeClassWrapper {
2720
+ return new Common.Array<FeatureFlag>(
2721
+ nativePointer,
2722
+ csp_FeatureFlagFactory,
2723
+ "csp_FeatureFlag",
2724
+ );
2725
+ }
2726
+ ProxyClassFactories["csp_common_Array_csp_FeatureFlag"] =
2727
+ csp_common_Array_csp_FeatureFlagFactory;
2728
+
2689
2729
  function csp_common_Array_csp_common_ReplicatedValueFactory(
2690
2730
  nativePointer: NativePointer,
2691
2731
  ): NativeClassWrapper {
@@ -3342,6 +3382,10 @@ function csp_common_Map_String_csp_common_Array_StringFactory(
3342
3382
  ProxyClassFactories["csp_common_Map_String_csp_common_Array_String"] =
3343
3383
  csp_common_Map_String_csp_common_Array_StringFactory;
3344
3384
 
3385
+ export enum EFeatureFlag {
3386
+ Invalid = 0,
3387
+ }
3388
+
3345
3389
  export namespace Common {
3346
3390
  /**
3347
3391
  * @description Enum specifying the type of change that occured to an asset.
@@ -4436,6 +4480,18 @@ export namespace Multiplayer {
4436
4480
  }
4437
4481
  }
4438
4482
 
4483
+ export namespace Multiplayer {
4484
+ /**
4485
+ * @description Enumerates the type of stereo the video player supports.
4486
+ */
4487
+ export enum StereoVideoType {
4488
+ None = 0,
4489
+ SideBySide,
4490
+ TopBottom,
4491
+ Num,
4492
+ }
4493
+ }
4494
+
4439
4495
  export namespace Multiplayer {
4440
4496
  /**
4441
4497
  * @description Enumerates the list of properties that can be replicated for a video player component.
@@ -4462,6 +4518,7 @@ export namespace Multiplayer {
4462
4518
  MeshComponentId,
4463
4519
  IsEnabled,
4464
4520
  IsVirtualVisible,
4521
+ StereoVideoType,
4465
4522
  Num,
4466
4523
  }
4467
4524
  }
@@ -4632,6 +4689,7 @@ export namespace Systems {
4632
4689
  OpenAI,
4633
4690
  Shopify,
4634
4691
  TicketedSpace,
4692
+ GoogleGenAI,
4635
4693
  Invalid,
4636
4694
  }
4637
4695
  }
@@ -5013,6 +5071,101 @@ export namespace Systems {
5013
5071
  }
5014
5072
  }
5015
5073
 
5074
+ export class FeatureFlag extends NativeClassWrapper implements INativeResource {
5075
+ /** @internal */
5076
+ constructor(pointer: NativePointer) {
5077
+ super(pointer);
5078
+ }
5079
+
5080
+ static create(): FeatureFlag {
5081
+ var _ptr = Module._malloc(8);
5082
+ Module.ccall("csp_FeatureFlag_Ctor", "void", ["number"], [_ptr]);
5083
+ var _nPtr = getNativePointer(_ptr);
5084
+
5085
+ return new FeatureFlag(_nPtr);
5086
+ }
5087
+
5088
+ static create_type_isEnabled(
5089
+ type: EFeatureFlag,
5090
+ isEnabled: boolean,
5091
+ ): FeatureFlag {
5092
+ var _ptr = Module._malloc(8);
5093
+ Module.ccall(
5094
+ "csp_FeatureFlag_Ctor_EFeatureFlag_bool",
5095
+ "void",
5096
+ ["number", "number", "boolean"],
5097
+ [_ptr, type, isEnabled],
5098
+ );
5099
+ var _nPtr = getNativePointer(_ptr);
5100
+
5101
+ return new FeatureFlag(_nPtr);
5102
+ }
5103
+
5104
+ getDescription(): string {
5105
+ let _result = Module.ccall(
5106
+ "csp_FeatureFlag_GetDescription_StringRC",
5107
+ "number",
5108
+ ["number"],
5109
+ [this.pointer],
5110
+ );
5111
+
5112
+ const _resultString = Module.UTF8ToString(_result);
5113
+ free(_result);
5114
+
5115
+ _result = _resultString;
5116
+
5117
+ return _result;
5118
+ }
5119
+
5120
+ delete(): void {
5121
+ if (this.ownsPointer && !this.disposed) {
5122
+ Module.ccall("csp_FeatureFlag_Dtor", "void", ["number"], [this.pointer]);
5123
+
5124
+ this.disposed = true;
5125
+ }
5126
+ }
5127
+
5128
+ get type(): EFeatureFlag {
5129
+ let _result = Module.ccall(
5130
+ "csp_FeatureFlag__Get_Type",
5131
+ "number",
5132
+ ["number"],
5133
+ [this.pointer],
5134
+ );
5135
+
5136
+ return _result;
5137
+ }
5138
+
5139
+ set type(value: EFeatureFlag) {
5140
+ Module.ccall(
5141
+ "csp_FeatureFlag__Set_Type",
5142
+ "void",
5143
+ ["number", "number"],
5144
+ [this.pointer, value],
5145
+ );
5146
+ }
5147
+
5148
+ get enabled(): boolean {
5149
+ let _result = Module.ccall(
5150
+ "csp_FeatureFlag__Get_Enabled",
5151
+ "boolean",
5152
+ ["number"],
5153
+ [this.pointer],
5154
+ );
5155
+
5156
+ return _result;
5157
+ }
5158
+
5159
+ set enabled(value: boolean) {
5160
+ Module.ccall(
5161
+ "csp_FeatureFlag__Set_Enabled",
5162
+ "void",
5163
+ ["number", "boolean"],
5164
+ [this.pointer, value],
5165
+ );
5166
+ }
5167
+ }
5168
+
5016
5169
  /**
5017
5170
  * @description Represents definition for identifying and versioning an external service endpoint.
5018
5171
  */
@@ -5460,6 +5613,9 @@ export class CSPFoundation {
5460
5613
  * @param tenant - Tenant for Magnopus Services. Data is not shared between tenants so clients using separate tenants
5461
5614
  * cannot interact with each other.
5462
5615
  * @param clientUserAgentHeader - The Client Info data
5616
+ * @param featureFlagOverrides - Optional list of feature flags whose default
5617
+ * enabled state is to be overriden. The FeatureFlag.Description property can be ignored when passing in feature flags here as this is defined by
5618
+ * the developer who creates the flag.
5463
5619
  * @return True for successful initialisation.
5464
5620
  */
5465
5621
 
@@ -5467,12 +5623,18 @@ export class CSPFoundation {
5467
5623
  endpointRootURI: string,
5468
5624
  tenant: string,
5469
5625
  clientUserAgentHeader: ClientUserAgent,
5626
+ featureFlagOverrides: Common.Array<FeatureFlag>,
5470
5627
  ): boolean {
5471
5628
  let _result = Module.ccall(
5472
- "csp_CSPFoundation_Initialise_bool_StringRC_StringRC_ClientUserAgentRC",
5629
+ "csp_CSPFoundation_Initialise_bool_StringRC_StringRC_ClientUserAgentRC_ArrayRC",
5473
5630
  "boolean",
5474
- ["string", "string", "number"],
5475
- [endpointRootURI, tenant, clientUserAgentHeader.pointer],
5631
+ ["string", "string", "number", "number"],
5632
+ [
5633
+ endpointRootURI,
5634
+ tenant,
5635
+ clientUserAgentHeader.pointer,
5636
+ featureFlagOverrides.pointer,
5637
+ ],
5476
5638
  );
5477
5639
 
5478
5640
  return _result;
@@ -5710,6 +5872,69 @@ export class CSPFoundation {
5710
5872
 
5711
5873
  return _result;
5712
5874
  }
5875
+
5876
+ /**
5877
+ * @description Checks if a given feature flag is enabled.
5878
+ * @param flag - The feature flag to check
5879
+ * @return True if the feature flag is enabled, false otherwise
5880
+ */
5881
+
5882
+ static isFeatureEnabled(flag: EFeatureFlag): boolean {
5883
+ let _result = Module.ccall(
5884
+ "csp_CSPFoundation_IsFeatureEnabled_bool_EFeatureFlag",
5885
+ "boolean",
5886
+ ["number"],
5887
+ [flag],
5888
+ );
5889
+
5890
+ return _result;
5891
+ }
5892
+
5893
+ /**
5894
+ * @description Returns an array of feature flags.
5895
+ * @return An array of the defined feature flags
5896
+ */
5897
+
5898
+ static getFeatureFlags(): Common.Array<FeatureFlag> {
5899
+ var _ret = Module._malloc(8);
5900
+
5901
+ Module.ccall(
5902
+ "csp_CSPFoundation_GetFeatureFlags_ArrayRC",
5903
+ "void",
5904
+ ["number"],
5905
+ [_ret],
5906
+ );
5907
+ var _nPtr = new Common.Array<FeatureFlag>(
5908
+ getNativePointer(_ret),
5909
+ csp_FeatureFlagFactory,
5910
+ "csp_FeatureFlag",
5911
+ );
5912
+ Module._free(_ret);
5913
+
5914
+ return _nPtr;
5915
+ }
5916
+
5917
+ /**
5918
+ * @description Get the description of a feature flag.
5919
+ * @param flag - The feature flag whose description is to be retrieved
5920
+ * @return The description of the feature flag
5921
+ */
5922
+
5923
+ static getFeatureFlagDescription(flag: EFeatureFlag): string {
5924
+ let _result = Module.ccall(
5925
+ "csp_CSPFoundation_GetFeatureFlagDescription_String_EFeatureFlag",
5926
+ "number",
5927
+ ["number"],
5928
+ [flag],
5929
+ );
5930
+
5931
+ const _resultString = Module.UTF8ToString(_result);
5932
+ free(_result);
5933
+
5934
+ _result = _resultString;
5935
+
5936
+ return _result;
5937
+ }
5713
5938
  }
5714
5939
 
5715
5940
  export namespace Common {
@@ -27518,9 +27743,13 @@ export namespace Systems {
27518
27743
 
27519
27744
  export namespace Systems {
27520
27745
  /**
27521
- * @description Base class for all Connected Spaces Platform Systems, which enforces passing of a WebClient or NetworkEventBus instance in the constructor
27522
- * of each System.
27523
- */
27746
+ * @description Base class for all Connected Spaces Platform Systems, which enforces passing of a WebClient or NetworkEventBus instance in the constructor
27747
+ * of each System.
27748
+ @invariant EventBusPtr can never be null. The NetworkEventBus is owned by the MultiplayerConnection and persists for it's lifetime. It is passed
27749
+ * to each system (which derive from SystemBase) by reference to their ctor. This ref is dereferenced before being passed to the SystemBase ctor.
27750
+ @invariant LogSystem can never be null. The LogSystem is owned by the SystemsManager and persists for it's lifetime. It is passed to
27751
+ * each system (which derive from SystemBase) by reference to their ctor. This ref is dereferenced before being passed to the SystemBase ctor.
27752
+ */
27524
27753
  export class SystemBase extends NativeClassWrapper {
27525
27754
  /** @internal */
27526
27755
  constructor(pointer: NativePointer) {
@@ -27543,19 +27772,6 @@ export namespace Systems {
27543
27772
  [this.pointer],
27544
27773
  );
27545
27774
  }
27546
-
27547
- /**
27548
- * @description Deregisters the system from listening for the default event.
27549
- */
27550
-
27551
- deregisterSystemCallback(): void {
27552
- Module.ccall(
27553
- "csp_systems_SystemBase_DeregisterSystemCallback_void",
27554
- "void",
27555
- ["number"],
27556
- [this.pointer],
27557
- );
27558
- }
27559
27775
  }
27560
27776
  }
27561
27777
 
@@ -35261,6 +35477,116 @@ export namespace Common {
35261
35477
  }
35262
35478
  }
35263
35479
 
35480
+ export namespace Common {
35481
+ export class AsyncCallCompletedEventData
35482
+ extends Common.NetworkEventData
35483
+ implements INativeResource
35484
+ {
35485
+ /** @internal */
35486
+ constructor(pointer: NativePointer) {
35487
+ super(pointer);
35488
+ }
35489
+
35490
+ static fromNetworkEventData(
35491
+ baseInstance: Common.NetworkEventData,
35492
+ ): Common.AsyncCallCompletedEventData {
35493
+ const nativeClassWrapper = baseInstance as unknown as NativeClassWrapper;
35494
+ return new Common.AsyncCallCompletedEventData(
35495
+ new NativePointer(
35496
+ nativeClassWrapper.pointer,
35497
+ nativeClassWrapper.ownsPointer,
35498
+ ),
35499
+ );
35500
+ }
35501
+
35502
+ static create(): AsyncCallCompletedEventData {
35503
+ var _ptr = Module._malloc(8);
35504
+ Module.ccall(
35505
+ "csp_common_AsyncCallCompletedEventData_Ctor",
35506
+ "void",
35507
+ ["number"],
35508
+ [_ptr],
35509
+ );
35510
+ var _nPtr = getNativePointer(_ptr);
35511
+
35512
+ return new AsyncCallCompletedEventData(_nPtr);
35513
+ }
35514
+
35515
+ delete(): void {
35516
+ if (this.ownsPointer && !this.disposed) {
35517
+ Module.ccall(
35518
+ "csp_common_AsyncCallCompletedEventData_Dtor",
35519
+ "void",
35520
+ ["number"],
35521
+ [this.pointer],
35522
+ );
35523
+
35524
+ this.disposed = true;
35525
+ }
35526
+ }
35527
+
35528
+ get operationName(): string {
35529
+ let _result = Module.ccall(
35530
+ "csp_common_AsyncCallCompletedEventData__Get_OperationName",
35531
+ "string",
35532
+ ["number"],
35533
+ [this.pointer],
35534
+ );
35535
+
35536
+ return _result;
35537
+ }
35538
+
35539
+ set operationName(value: string) {
35540
+ Module.ccall(
35541
+ "csp_common_AsyncCallCompletedEventData__Set_OperationName",
35542
+ "void",
35543
+ ["number", "string"],
35544
+ [this.pointer, value],
35545
+ );
35546
+ }
35547
+
35548
+ get referenceId(): string {
35549
+ let _result = Module.ccall(
35550
+ "csp_common_AsyncCallCompletedEventData__Get_ReferenceId",
35551
+ "string",
35552
+ ["number"],
35553
+ [this.pointer],
35554
+ );
35555
+
35556
+ return _result;
35557
+ }
35558
+
35559
+ set referenceId(value: string) {
35560
+ Module.ccall(
35561
+ "csp_common_AsyncCallCompletedEventData__Set_ReferenceId",
35562
+ "void",
35563
+ ["number", "string"],
35564
+ [this.pointer, value],
35565
+ );
35566
+ }
35567
+
35568
+ get referenceType(): string {
35569
+ let _result = Module.ccall(
35570
+ "csp_common_AsyncCallCompletedEventData__Get_ReferenceType",
35571
+ "string",
35572
+ ["number"],
35573
+ [this.pointer],
35574
+ );
35575
+
35576
+ return _result;
35577
+ }
35578
+
35579
+ set referenceType(value: string) {
35580
+ Module.ccall(
35581
+ "csp_common_AsyncCallCompletedEventData__Set_ReferenceType",
35582
+ "void",
35583
+ ["number", "string"],
35584
+ [this.pointer, value],
35585
+ );
35586
+ }
35587
+ }
35588
+ }
35589
+
35264
35590
  export namespace Multiplayer {
35265
35591
  /**
35266
35592
  * @description Class for creating and managing objects in an offline context.
@@ -47565,6 +47891,36 @@ export namespace Multiplayer {
47565
47891
  );
47566
47892
  }
47567
47893
 
47894
+ /**
47895
+ * @description Gets the type of stereo the video of this component uses.
47896
+ * @return The type of stereo used by this video.
47897
+ */
47898
+
47899
+ getStereoVideoType(): Multiplayer.StereoVideoType {
47900
+ let _result = Module.ccall(
47901
+ "csp_multiplayer_VideoPlayerSpaceComponent_GetStereoVideoTypeC_StereoVideoType",
47902
+ "number",
47903
+ ["number"],
47904
+ [this.pointer],
47905
+ );
47906
+
47907
+ return _result;
47908
+ }
47909
+
47910
+ /**
47911
+ * @description Sets the type of stereo the video of this component uses.
47912
+ * @param value - The type of stereo used by this video.
47913
+ */
47914
+
47915
+ setStereoVideoType(value: Multiplayer.StereoVideoType): void {
47916
+ Module.ccall(
47917
+ "csp_multiplayer_VideoPlayerSpaceComponent_SetStereoVideoType_void_StereoVideoType",
47918
+ "void",
47919
+ ["number", "number"],
47920
+ [this.pointer, value],
47921
+ );
47922
+ }
47923
+
47568
47924
  /**
47569
47925
  * \addtogroup IVisibleComponent
47570
47926
  @{
@@ -51235,19 +51591,6 @@ export namespace Systems {
51235
51591
  [this.pointer],
51236
51592
  );
51237
51593
  }
51238
-
51239
- /**
51240
- * @description Deregisters the system from listening for the named event.
51241
- */
51242
-
51243
- deregisterSystemCallback(): void {
51244
- Module.ccall(
51245
- "csp_systems_AssetSystem_DeregisterSystemCallback_void",
51246
- "void",
51247
- ["number"],
51248
- [this.pointer],
51249
- );
51250
- }
51251
51594
  }
51252
51595
  }
51253
51596
 
@@ -54122,7 +54465,7 @@ export namespace Systems {
54122
54465
  ): HotspotSequenceSystem {
54123
54466
  var _ptr = Module._malloc(8);
54124
54467
  Module.ccall(
54125
- "csp_systems_HotspotSequenceSystem_Ctor_SequenceSystemP_SpaceSystemP_NetworkEventBusP_LogSystemR",
54468
+ "csp_systems_HotspotSequenceSystem_Ctor_SequenceSystemP_SpaceSystemP_NetworkEventBusR_LogSystemR",
54126
54469
  "void",
54127
54470
  ["number", "number", "number", "number", "number"],
54128
54471
  [
@@ -54476,19 +54819,6 @@ export namespace Systems {
54476
54819
  [this.pointer],
54477
54820
  );
54478
54821
  }
54479
-
54480
- /**
54481
- * @description Deregisters the system from listening for the named event.
54482
- */
54483
-
54484
- deregisterSystemCallback(): void {
54485
- Module.ccall(
54486
- "csp_systems_HotspotSequenceSystem_DeregisterSystemCallback_void",
54487
- "void",
54488
- ["number"],
54489
- [this.pointer],
54490
- );
54491
- }
54492
54822
  }
54493
54823
  }
54494
54824
 
@@ -55997,19 +56327,6 @@ export namespace Systems {
55997
56327
  [this.pointer],
55998
56328
  );
55999
56329
  }
56000
-
56001
- /**
56002
- * @description Deregisters the system from listening for the named event.
56003
- */
56004
-
56005
- deregisterSystemCallback(): void {
56006
- Module.ccall(
56007
- "csp_systems_SequenceSystem_DeregisterSystemCallback_void",
56008
- "void",
56009
- ["number"],
56010
- [this.pointer],
56011
- );
56012
- }
56013
56330
  }
56014
56331
  }
56015
56332
 
@@ -59684,14 +60001,19 @@ export namespace Systems {
59684
60001
  }
59685
60002
 
59686
60003
  /**
59687
- * @description Duplicate an existing space and assign it to the current user
60004
+ * @description Duplicate an existing space and assign it to the current user.
60005
+ * This is a synchronous operation and can have a high execution time for complex spaces. If the user disconnects while waiting for the operation
60006
+ * to complete, the duplicate space request will be cancelled.
60007
+ * \deprecated Use DuplicateSpaceAsync() instead. This method performs a synchronous duplication of a Space which can timeout and fail for
60008
+ * complex Spaces or if the backend services are under excessive load.
59688
60009
  * @param spaceId - Id of the space to duplicate.
59689
60010
  * @param newName - A unique name for the duplicated space.
59690
60011
  * @param newAttributes - Attributes to apply to the duplicated space.
59691
- * @param memberGroupIds - An optional array of group (space) IDs to copy users from.
60012
+ * @param memberGroupIds - An optional array of group (space) IDs. Members of these groups will be added
60013
+ * to the duplicated space with the same roles.
59692
60014
  * @param shallowCopy - If true, the duplicated space will reference the assets of the original space. Otherwise, all assets will be
59693
60015
  * duplicated.
59694
- * @param callback - Callback when asynchronous task finishes
60016
+ * @param callback - Callback when asynchronous task finishes.
59695
60017
  */
59696
60018
 
59697
60019
  async duplicateSpace(
@@ -59750,6 +60072,106 @@ export namespace Systems {
59750
60072
 
59751
60073
  return _promise;
59752
60074
  }
60075
+
60076
+ /**
60077
+ * @description Duplicate an existing space and assign it to the current user.
60078
+ * This is an asynchronous operation. If the user disconnects while waiting for the operation to complete it will continue unaffected. Please
60079
+ * subcribe to the AsyncCallCompletedCallback via @ref SpaceSystem::SetAsyncCallCompletedCallback() to be notified when the duplication operation
60080
+ * is complete. The AsyncCallCompletedEventData returned by the AsyncCallCompletedCallback will contain the following information:
60081
+ * - OperationName: "DuplicateSpaceAsync".
60082
+ * - ReferenceId: Id of the newly duplicated Space.
60083
+ * - ReferenceType: "GroupId".
60084
+ * @param spaceId - Id of the space to duplicate.
60085
+ * @param newName - A unique name for the duplicated space.
60086
+ * @param newAttributes - Attributes to apply to the duplicated space.
60087
+ * @param memberGroupIds - An optional array of group (space) IDs. Members of these groups will be added
60088
+ * to the duplicated space with the same roles.
60089
+ * @param shallowCopy - If true, the duplicated space will reference the assets of the original space. Otherwise, all assets will be
60090
+ * duplicated.
60091
+ * @param callback - Callback when asynchronous task is successfully received by the backend services.
60092
+ */
60093
+
60094
+ async duplicateSpaceAsync(
60095
+ spaceId: string,
60096
+ newName: string,
60097
+ newAttributes: Systems.SpaceAttributes,
60098
+ memberGroupIds: Common.Array<string> | null,
60099
+ shallowCopy: boolean,
60100
+ ): Promise<Systems.NullResult> {
60101
+ var _resolve;
60102
+
60103
+ var _promise = new Promise<Systems.NullResult>((_r) => {
60104
+ _resolve = _r;
60105
+ });
60106
+
60107
+ var _callbackPtr: number;
60108
+ var _callback = (_stateObject__: number, result) => {
60109
+ var _resultPtr = getNativePointer(result);
60110
+ var _resultInstance = new Systems.NullResult(_resultPtr);
60111
+
60112
+ if (_resultInstance.getResultCode() == Systems.EResultCode.InProgress) {
60113
+ return;
60114
+ }
60115
+
60116
+ _resolve(_resultInstance);
60117
+
60118
+ Module.removeFunction(_callbackPtr);
60119
+ };
60120
+
60121
+ _callbackPtr = Module.addFunction(_callback, "vii");
60122
+
60123
+ Module.ccall(
60124
+ "csp_systems_SpaceSystem_DuplicateSpaceAsync_void_StringRC_StringRC_SpaceAttributes_ArrayRC_bool_NullResultCallback",
60125
+ "void",
60126
+ [
60127
+ "number",
60128
+ "string",
60129
+ "string",
60130
+ "number",
60131
+ "number",
60132
+ "boolean",
60133
+ "number",
60134
+ "number",
60135
+ ],
60136
+ [
60137
+ this.pointer,
60138
+ spaceId,
60139
+ newName,
60140
+ newAttributes,
60141
+ memberGroupIds != null ? memberGroupIds.pointer : 0,
60142
+ shallowCopy,
60143
+ _callbackPtr,
60144
+ 0,
60145
+ ],
60146
+ );
60147
+
60148
+ return _promise;
60149
+ }
60150
+
60151
+ /**
60152
+ * @description Sets a callback for the async call completed event. Triggered when an async call to DuplicateSpace is completed.
60153
+ * @param callback - Callback to receive data concerning the Space duplication.
60154
+ */
60155
+ setAsyncCallCompletedCallback(
60156
+ callback: (arg1: Common.AsyncCallCompletedEventData) => void,
60157
+ ) {
60158
+ var _callback = (_stateObject__: number, arg1) => {
60159
+ var _arg1 = new Common.AsyncCallCompletedEventData(
60160
+ getNativePointer(arg1),
60161
+ );
60162
+
60163
+ callback(_arg1);
60164
+ };
60165
+
60166
+ var _callbackPtr = Module.addFunction(_callback, "vii");
60167
+
60168
+ Module.ccall(
60169
+ "csp_systems_SpaceSystem_SetAsyncCallCompletedCallback_void_AsyncCallCompletedCallbackHandler",
60170
+ "void",
60171
+ ["number", "number", "number"],
60172
+ [this.pointer, _callbackPtr, 0],
60173
+ );
60174
+ }
59753
60175
  }
59754
60176
  }
59755
60177
 
@@ -62660,19 +63082,6 @@ export namespace Systems {
62660
63082
  [this.pointer],
62661
63083
  );
62662
63084
  }
62663
-
62664
- /**
62665
- * @description Deregisters the system from listening for the named event.
62666
- */
62667
-
62668
- deregisterSystemCallback(): void {
62669
- Module.ccall(
62670
- "csp_systems_UserSystem_DeregisterSystemCallback_void",
62671
- "void",
62672
- ["number"],
62673
- [this.pointer],
62674
- );
62675
- }
62676
63085
  }
62677
63086
  }
62678
63087
 
@@ -62710,6 +63119,24 @@ export namespace Common {
62710
63119
  return _inst;
62711
63120
  }
62712
63121
 
63122
+ static ofcsp_FeatureFlag(): Array<FeatureFlag> {
63123
+ var _ret = Module._malloc(8);
63124
+ Module.ccall(
63125
+ "csp_common_Array_Ctor_csp_FeatureFlag",
63126
+ "void",
63127
+ ["number"],
63128
+ [_ret],
63129
+ );
63130
+ var _inst = new Array<FeatureFlag>(
63131
+ getNativePointer(_ret),
63132
+ csp_FeatureFlagFactory,
63133
+ "csp_FeatureFlag",
63134
+ );
63135
+ Module._free(_ret);
63136
+
63137
+ return _inst;
63138
+ }
63139
+
62713
63140
  static ofcsp_common_ReplicatedValue(): Array<Common.ReplicatedValue> {
62714
63141
  var _ret = Module._malloc(8);
62715
63142
  Module.ccall(
@@ -63489,6 +63916,24 @@ export namespace Common {
63489
63916
  return _inst;
63490
63917
  }
63491
63918
 
63919
+ static ofcsp_FeatureFlag_number(size: number): Array<FeatureFlag> {
63920
+ var _ret = Module._malloc(8);
63921
+ Module.ccall(
63922
+ "csp_common_Array_Conv_size_tC_csp_FeatureFlag",
63923
+ "void",
63924
+ ["number", "number"],
63925
+ [_ret, size],
63926
+ );
63927
+ var _inst = new Array<FeatureFlag>(
63928
+ getNativePointer(_ret),
63929
+ csp_FeatureFlagFactory,
63930
+ "csp_FeatureFlag",
63931
+ );
63932
+ Module._free(_ret);
63933
+
63934
+ return _inst;
63935
+ }
63936
+
63492
63937
  static ofcsp_common_ReplicatedValue_number(
63493
63938
  size: number,
63494
63939
  ): Array<Common.ReplicatedValue> {