@azure/arm-labservices 3.0.0-beta.3 → 3.0.1-alpha.20220922.2

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 (109) hide show
  1. package/CHANGELOG.md +13 -3
  2. package/README.md +2 -2
  3. package/dist/index.js +787 -715
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.min.js +1 -1
  6. package/dist/index.min.js.map +1 -1
  7. package/dist-esm/samples-dev/imagesCreateOrUpdateSample.js +1 -1
  8. package/dist-esm/samples-dev/imagesGetSample.js +1 -1
  9. package/dist-esm/samples-dev/imagesListByLabPlanSample.js +1 -1
  10. package/dist-esm/samples-dev/imagesUpdateSample.js +1 -1
  11. package/dist-esm/samples-dev/labPlansCreateOrUpdateSample.js +4 -4
  12. package/dist-esm/samples-dev/labPlansCreateOrUpdateSample.js.map +1 -1
  13. package/dist-esm/samples-dev/labPlansDeleteSample.js +1 -1
  14. package/dist-esm/samples-dev/labPlansGetSample.js +1 -1
  15. package/dist-esm/samples-dev/labPlansListByResourceGroupSample.js +1 -1
  16. package/dist-esm/samples-dev/labPlansListBySubscriptionSample.js +1 -1
  17. package/dist-esm/samples-dev/labPlansSaveImageSample.js +1 -1
  18. package/dist-esm/samples-dev/labPlansUpdateSample.js +1 -1
  19. package/dist-esm/samples-dev/labsCreateOrUpdateSample.js +5 -5
  20. package/dist-esm/samples-dev/labsCreateOrUpdateSample.js.map +1 -1
  21. package/dist-esm/samples-dev/labsDeleteSample.js +1 -1
  22. package/dist-esm/samples-dev/labsGetSample.js +1 -1
  23. package/dist-esm/samples-dev/labsListByResourceGroupSample.js +1 -1
  24. package/dist-esm/samples-dev/labsListBySubscriptionSample.js +1 -1
  25. package/dist-esm/samples-dev/labsPublishSample.js +1 -1
  26. package/dist-esm/samples-dev/labsSyncGroupSample.js +1 -1
  27. package/dist-esm/samples-dev/labsUpdateSample.js +1 -1
  28. package/dist-esm/samples-dev/operationResultsGetSample.js +1 -1
  29. package/dist-esm/samples-dev/operationsListSample.js +1 -1
  30. package/dist-esm/samples-dev/schedulesCreateOrUpdateSample.js +2 -2
  31. package/dist-esm/samples-dev/schedulesCreateOrUpdateSample.js.map +1 -1
  32. package/dist-esm/samples-dev/schedulesDeleteSample.js +1 -1
  33. package/dist-esm/samples-dev/schedulesGetSample.js +1 -1
  34. package/dist-esm/samples-dev/schedulesListByLabSample.js +1 -1
  35. package/dist-esm/samples-dev/schedulesUpdateSample.js +2 -2
  36. package/dist-esm/samples-dev/schedulesUpdateSample.js.map +1 -1
  37. package/dist-esm/samples-dev/skusListSample.js +3 -3
  38. package/dist-esm/samples-dev/usagesListByLocationSample.js +2 -2
  39. package/dist-esm/samples-dev/usersCreateOrUpdateSample.js +2 -2
  40. package/dist-esm/samples-dev/usersDeleteSample.js +1 -1
  41. package/dist-esm/samples-dev/usersGetSample.js +1 -1
  42. package/dist-esm/samples-dev/usersInviteSample.js +1 -1
  43. package/dist-esm/samples-dev/usersListByLabSample.js +1 -1
  44. package/dist-esm/samples-dev/usersUpdateSample.js +2 -2
  45. package/dist-esm/samples-dev/virtualMachinesGetSample.js +1 -1
  46. package/dist-esm/samples-dev/virtualMachinesListByLabSample.js +1 -1
  47. package/dist-esm/samples-dev/virtualMachinesRedeploySample.js +1 -1
  48. package/dist-esm/samples-dev/virtualMachinesReimageSample.js +1 -1
  49. package/dist-esm/samples-dev/virtualMachinesResetPasswordSample.js +1 -1
  50. package/dist-esm/samples-dev/virtualMachinesStartSample.js +1 -1
  51. package/dist-esm/samples-dev/virtualMachinesStopSample.js +1 -1
  52. package/dist-esm/src/labServicesClient.d.ts +3 -3
  53. package/dist-esm/src/labServicesClient.d.ts.map +1 -1
  54. package/dist-esm/src/labServicesClient.js +23 -18
  55. package/dist-esm/src/labServicesClient.js.map +1 -1
  56. package/dist-esm/src/models/index.d.ts +221 -188
  57. package/dist-esm/src/models/index.d.ts.map +1 -1
  58. package/dist-esm/src/models/index.js +19 -5
  59. package/dist-esm/src/models/index.js.map +1 -1
  60. package/dist-esm/src/models/mappers.d.ts +10 -9
  61. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  62. package/dist-esm/src/models/mappers.js +284 -232
  63. package/dist-esm/src/models/mappers.js.map +1 -1
  64. package/dist-esm/src/models/parameters.d.ts +1 -1
  65. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  66. package/dist-esm/src/models/parameters.js +16 -16
  67. package/dist-esm/src/models/parameters.js.map +1 -1
  68. package/dist-esm/src/operations/index.d.ts +2 -2
  69. package/dist-esm/src/operations/index.d.ts.map +1 -1
  70. package/dist-esm/src/operations/index.js +2 -2
  71. package/dist-esm/src/operations/index.js.map +1 -1
  72. package/dist-esm/src/operations/labs.d.ts +22 -22
  73. package/dist-esm/src/operations/labs.js +22 -22
  74. package/dist-esm/src/operations/schedules.d.ts +16 -16
  75. package/dist-esm/src/operations/schedules.js +16 -16
  76. package/dist-esm/src/operations/skus.d.ts +2 -2
  77. package/dist-esm/src/operations/skus.js +2 -2
  78. package/dist-esm/src/operations/users.d.ts +24 -24
  79. package/dist-esm/src/operations/users.js +24 -24
  80. package/dist-esm/src/operations/virtualMachines.d.ts +28 -28
  81. package/dist-esm/src/operations/virtualMachines.js +28 -28
  82. package/dist-esm/src/operationsInterfaces/index.d.ts +2 -2
  83. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -1
  84. package/dist-esm/src/operationsInterfaces/index.js +2 -2
  85. package/dist-esm/src/operationsInterfaces/index.js.map +1 -1
  86. package/dist-esm/src/operationsInterfaces/labs.d.ts +22 -22
  87. package/dist-esm/src/operationsInterfaces/schedules.d.ts +12 -12
  88. package/dist-esm/src/operationsInterfaces/skus.d.ts +1 -1
  89. package/dist-esm/src/operationsInterfaces/users.d.ts +20 -20
  90. package/dist-esm/src/operationsInterfaces/virtualMachines.d.ts +24 -24
  91. package/package.json +6 -7
  92. package/review/arm-labservices.api.md +94 -97
  93. package/src/labServicesClient.ts +35 -28
  94. package/src/models/index.ts +244 -211
  95. package/src/models/mappers.ts +291 -236
  96. package/src/models/parameters.ts +17 -17
  97. package/src/operations/index.ts +2 -2
  98. package/src/operations/labs.ts +22 -22
  99. package/src/operations/schedules.ts +16 -16
  100. package/src/operations/skus.ts +2 -2
  101. package/src/operations/users.ts +24 -24
  102. package/src/operations/virtualMachines.ts +28 -28
  103. package/src/operationsInterfaces/index.ts +2 -2
  104. package/src/operationsInterfaces/labs.ts +22 -22
  105. package/src/operationsInterfaces/schedules.ts +12 -12
  106. package/src/operationsInterfaces/skus.ts +1 -1
  107. package/src/operationsInterfaces/users.ts +20 -20
  108. package/src/operationsInterfaces/virtualMachines.ts +24 -24
  109. package/types/arm-labservices.d.ts +149 -115
@@ -196,6 +196,22 @@ export interface SupportInfo {
196
196
  instructions?: string;
197
197
  }
198
198
 
199
+ /** Identity for the resource. */
200
+ export interface Identity {
201
+ /**
202
+ * The principal ID of resource identity.
203
+ * NOTE: This property will not be serialized. It can only be populated by the server.
204
+ */
205
+ readonly principalId?: string;
206
+ /**
207
+ * The tenant ID of resource.
208
+ * NOTE: This property will not be serialized. It can only be populated by the server.
209
+ */
210
+ readonly tenantId?: string;
211
+ /** The identity type. */
212
+ type?: "SystemAssigned";
213
+ }
214
+
199
215
  /** Base tracked resource type for all PATCH updates. */
200
216
  export interface TrackedResourceUpdate {
201
217
  /** Resource tags. */
@@ -493,135 +509,6 @@ export interface ScheduleUpdate {
493
509
  notes?: string;
494
510
  }
495
511
 
496
- /** Paged list of users. */
497
- export interface PagedUsers {
498
- /**
499
- * The array page of user results.
500
- * NOTE: This property will not be serialized. It can only be populated by the server.
501
- */
502
- readonly value?: User[];
503
- /**
504
- * The link to get the next page of image results.
505
- * NOTE: This property will not be serialized. It can only be populated by the server.
506
- */
507
- readonly nextLink?: string;
508
- }
509
-
510
- /** User resource properties used for updates. */
511
- export interface UserUpdateProperties {
512
- /** The amount of usage quota time the user gets in addition to the lab usage quota. */
513
- additionalUsageQuota?: string;
514
- }
515
-
516
- /** User of a lab that can register for and use virtual machines within the lab. Used for updates. */
517
- export interface UserUpdate {
518
- /** The amount of usage quota time the user gets in addition to the lab usage quota. */
519
- additionalUsageQuota?: string;
520
- }
521
-
522
- /** Body for a user invite request */
523
- export interface InviteBody {
524
- /** Custom text for the invite email. */
525
- text?: string;
526
- }
527
-
528
- /** Paged list of lab services virtual machines. */
529
- export interface PagedVirtualMachines {
530
- /**
531
- * The array page of virtual machine results.
532
- * NOTE: This property will not be serialized. It can only be populated by the server.
533
- */
534
- readonly value?: VirtualMachine[];
535
- /**
536
- * The link to get the next page of virtual machine results.
537
- * NOTE: This property will not be serialized. It can only be populated by the server.
538
- */
539
- readonly nextLink?: string;
540
- }
541
-
542
- /** The connection information for the virtual machine */
543
- export interface VirtualMachineConnectionProfile {
544
- /**
545
- * The private IP address of the virtual machine.
546
- * NOTE: This property will not be serialized. It can only be populated by the server.
547
- */
548
- readonly privateIpAddress?: string;
549
- /**
550
- * Port and host name separated by semicolon for connecting via SSH protocol to the virtual machine.
551
- * NOTE: This property will not be serialized. It can only be populated by the server.
552
- */
553
- readonly sshAuthority?: string;
554
- /**
555
- * URL for connecting via SSH protocol to the virtual machine in browser.
556
- * NOTE: This property will not be serialized. It can only be populated by the server.
557
- */
558
- readonly sshInBrowserUrl?: string;
559
- /**
560
- * Port and host name separated by semicolon for connecting via RDP protocol to the virtual machine.
561
- * NOTE: This property will not be serialized. It can only be populated by the server.
562
- */
563
- readonly rdpAuthority?: string;
564
- /**
565
- * URL for connecting via RDP protocol to the virtual machine in browser.
566
- * NOTE: This property will not be serialized. It can only be populated by the server.
567
- */
568
- readonly rdpInBrowserUrl?: string;
569
- /**
570
- * The username used to log on to the virtual machine as admin.
571
- * NOTE: This property will not be serialized. It can only be populated by the server.
572
- */
573
- readonly adminUsername?: string;
574
- /**
575
- * The username used to log on to the virtual machine as non-admin, if one exists.
576
- * NOTE: This property will not be serialized. It can only be populated by the server.
577
- */
578
- readonly nonAdminUsername?: string;
579
- }
580
-
581
- /** Body of a reset password request. */
582
- export interface ResetPasswordBody {
583
- /** The user whose password is being reset */
584
- username: string;
585
- /** The password */
586
- password: string;
587
- }
588
-
589
- /** List of Core Usages. */
590
- export interface ListUsagesResult {
591
- /**
592
- * The array page of Usages.
593
- * NOTE: This property will not be serialized. It can only be populated by the server.
594
- */
595
- readonly value?: Usage[];
596
- /**
597
- * The link to get the next page of Usage result.
598
- * NOTE: This property will not be serialized. It can only be populated by the server.
599
- */
600
- readonly nextLink?: string;
601
- }
602
-
603
- /** The core usage details. */
604
- export interface Usage {
605
- /** The current usage. */
606
- currentValue?: number;
607
- /** The limit integer. */
608
- limit?: number;
609
- /** The unit details. */
610
- unit?: UsageUnit;
611
- /** The name. */
612
- name?: UsageName;
613
- /** The fully qualified arm resource id. */
614
- id?: string;
615
- }
616
-
617
- /** The Usage Names. */
618
- export interface UsageName {
619
- /** The localized name of the resource. */
620
- localizedValue?: string;
621
- /** The name of the resource. */
622
- value?: string;
623
- }
624
-
625
512
  /** Paged list of lab services skus. */
626
513
  export interface PagedLabServicesSkus {
627
514
  /**
@@ -763,8 +650,136 @@ export interface LabServicesSkuRestrictions {
763
650
  readonly reasonCode?: RestrictionReasonCode;
764
651
  }
765
652
 
653
+ /** List of Core Usages. */
654
+ export interface ListUsagesResult {
655
+ /** The array page of Usages. */
656
+ value?: Usage[];
657
+ /**
658
+ * The link to get the next page of Usage result.
659
+ * NOTE: This property will not be serialized. It can only be populated by the server.
660
+ */
661
+ readonly nextLink?: string;
662
+ }
663
+
664
+ /** The core usage details. */
665
+ export interface Usage {
666
+ /** The current usage. */
667
+ currentValue?: number;
668
+ /** The limit integer. */
669
+ limit?: number;
670
+ /** The unit details. */
671
+ unit?: UsageUnit;
672
+ /** The name. */
673
+ name?: UsageName;
674
+ /** The fully qualified arm resource id. */
675
+ id?: string;
676
+ }
677
+
678
+ /** The Usage Names. */
679
+ export interface UsageName {
680
+ /** The localized name of the resource. */
681
+ localizedValue?: string;
682
+ /** The instances of the resource. */
683
+ skuInstances?: string[];
684
+ /** The name of the resource. */
685
+ value?: string;
686
+ }
687
+
688
+ /** Paged list of users. */
689
+ export interface PagedUsers {
690
+ /**
691
+ * The array page of user results.
692
+ * NOTE: This property will not be serialized. It can only be populated by the server.
693
+ */
694
+ readonly value?: User[];
695
+ /**
696
+ * The link to get the next page of image results.
697
+ * NOTE: This property will not be serialized. It can only be populated by the server.
698
+ */
699
+ readonly nextLink?: string;
700
+ }
701
+
702
+ /** User resource properties used for updates. */
703
+ export interface UserUpdateProperties {
704
+ /** The amount of usage quota time the user gets in addition to the lab usage quota. */
705
+ additionalUsageQuota?: string;
706
+ }
707
+
708
+ /** User of a lab that can register for and use virtual machines within the lab. Used for updates. */
709
+ export interface UserUpdate {
710
+ /** The amount of usage quota time the user gets in addition to the lab usage quota. */
711
+ additionalUsageQuota?: string;
712
+ }
713
+
714
+ /** Body for a user invite request */
715
+ export interface InviteBody {
716
+ /** Custom text for the invite email. */
717
+ text?: string;
718
+ }
719
+
720
+ /** Paged list of lab services virtual machines. */
721
+ export interface PagedVirtualMachines {
722
+ /**
723
+ * The array page of virtual machine results.
724
+ * NOTE: This property will not be serialized. It can only be populated by the server.
725
+ */
726
+ readonly value?: VirtualMachine[];
727
+ /**
728
+ * The link to get the next page of virtual machine results.
729
+ * NOTE: This property will not be serialized. It can only be populated by the server.
730
+ */
731
+ readonly nextLink?: string;
732
+ }
733
+
734
+ /** The connection information for the virtual machine */
735
+ export interface VirtualMachineConnectionProfile {
736
+ /**
737
+ * The private IP address of the virtual machine.
738
+ * NOTE: This property will not be serialized. It can only be populated by the server.
739
+ */
740
+ readonly privateIpAddress?: string;
741
+ /**
742
+ * Port and host name separated by semicolon for connecting via SSH protocol to the virtual machine.
743
+ * NOTE: This property will not be serialized. It can only be populated by the server.
744
+ */
745
+ readonly sshAuthority?: string;
746
+ /**
747
+ * URL for connecting via SSH protocol to the virtual machine in browser.
748
+ * NOTE: This property will not be serialized. It can only be populated by the server.
749
+ */
750
+ readonly sshInBrowserUrl?: string;
751
+ /**
752
+ * Port and host name separated by semicolon for connecting via RDP protocol to the virtual machine.
753
+ * NOTE: This property will not be serialized. It can only be populated by the server.
754
+ */
755
+ readonly rdpAuthority?: string;
756
+ /**
757
+ * URL for connecting via RDP protocol to the virtual machine in browser.
758
+ * NOTE: This property will not be serialized. It can only be populated by the server.
759
+ */
760
+ readonly rdpInBrowserUrl?: string;
761
+ /**
762
+ * The username used to log on to the virtual machine as admin.
763
+ * NOTE: This property will not be serialized. It can only be populated by the server.
764
+ */
765
+ readonly adminUsername?: string;
766
+ /**
767
+ * The username used to log on to the virtual machine as non-admin, if one exists.
768
+ * NOTE: This property will not be serialized. It can only be populated by the server.
769
+ */
770
+ readonly nonAdminUsername?: string;
771
+ }
772
+
773
+ /** Body of a reset password request. */
774
+ export interface ResetPasswordBody {
775
+ /** The user whose password is being reset */
776
+ username: string;
777
+ /** The password */
778
+ password: string;
779
+ }
780
+
766
781
  /** Properties of an image resource. */
767
- export type ImageProperties = ImageUpdateProperties & {
782
+ export interface ImageProperties extends ImageUpdateProperties {
768
783
  /**
769
784
  * Current provisioning state of the image.
770
785
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -837,30 +852,32 @@ export type ImageProperties = ImageUpdateProperties & {
837
852
  * NOTE: This property will not be serialized. It can only be populated by the server.
838
853
  */
839
854
  readonly osState?: OsState;
840
- };
855
+ }
841
856
 
842
857
  /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
843
- export type ProxyResource = Resource;
858
+ export interface ProxyResource extends Resource {}
844
859
 
845
860
  /** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */
846
- export type TrackedResource = Resource & {
861
+ export interface TrackedResource extends Resource {
847
862
  /** Resource tags. */
848
863
  tags?: { [propertyName: string]: string };
849
864
  /** The geo-location where the resource lives */
850
865
  location: string;
851
- };
866
+ }
852
867
 
853
868
  /** Lab plan resource properties */
854
- export type LabPlanProperties = LabPlanUpdateProperties & {
869
+ export interface LabPlanProperties extends LabPlanUpdateProperties {
855
870
  /**
856
871
  * Current provisioning state of the lab plan.
857
872
  * NOTE: This property will not be serialized. It can only be populated by the server.
858
873
  */
859
874
  readonly provisioningState?: ProvisioningState;
860
- };
875
+ }
861
876
 
862
877
  /** Contains lab configuration and default settings. This variant is used for PATCH. */
863
- export type LabPlanUpdate = TrackedResourceUpdate & {
878
+ export interface LabPlanUpdate extends TrackedResourceUpdate {
879
+ /** Managed Identity Information */
880
+ identity?: Identity;
864
881
  /** The default lab connection profile. This can be changed on a lab resource and only provides a default profile. */
865
882
  defaultConnectionProfile?: ConnectionProfile;
866
883
  /** The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile. */
@@ -875,10 +892,10 @@ export type LabPlanUpdate = TrackedResourceUpdate & {
875
892
  supportInfo?: SupportInfo;
876
893
  /** Base Url of the lms instance this lab plan can link lab rosters against. */
877
894
  linkedLmsInstance?: string;
878
- };
895
+ }
879
896
 
880
897
  /** The lab resource for updates. */
881
- export type LabUpdate = TrackedResourceUpdate & {
898
+ export interface LabUpdate extends TrackedResourceUpdate {
882
899
  /** The resource auto shutdown configuration for the lab. This controls whether actions are taken on resources that are sitting idle. */
883
900
  autoShutdownProfile?: AutoShutdownProfile;
884
901
  /** The connection profile for the lab. This controls settings such as web access to lab resources or whether RDP or SSH ports are open. */
@@ -895,10 +912,10 @@ export type LabUpdate = TrackedResourceUpdate & {
895
912
  title?: string;
896
913
  /** The description of the lab. */
897
914
  description?: string;
898
- };
915
+ }
899
916
 
900
917
  /** Properties of a lab resource. */
901
- export type LabProperties = LabUpdateProperties & {
918
+ export interface LabProperties extends LabUpdateProperties {
902
919
  /**
903
920
  * Current provisioning state of the lab.
904
921
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -911,19 +928,19 @@ export type LabProperties = LabUpdateProperties & {
911
928
  * NOTE: This property will not be serialized. It can only be populated by the server.
912
929
  */
913
930
  readonly state?: LabState;
914
- };
931
+ }
915
932
 
916
933
  /** Schedule resource properties */
917
- export type ScheduleProperties = ScheduleUpdateProperties & {
934
+ export interface ScheduleProperties extends ScheduleUpdateProperties {
918
935
  /**
919
936
  * Current provisioning state of the schedule.
920
937
  * NOTE: This property will not be serialized. It can only be populated by the server.
921
938
  */
922
939
  readonly provisioningState?: ProvisioningState;
923
- };
940
+ }
924
941
 
925
942
  /** User resource properties */
926
- export type UserProperties = UserUpdateProperties & {
943
+ export interface UserProperties extends UserUpdateProperties {
927
944
  /**
928
945
  * Current provisioning state of the user resource.
929
946
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -956,10 +973,10 @@ export type UserProperties = UserUpdateProperties & {
956
973
  * NOTE: This property will not be serialized. It can only be populated by the server.
957
974
  */
958
975
  readonly totalUsage?: string;
959
- };
976
+ }
960
977
 
961
978
  /** Lab services virtual machine image */
962
- export type Image = ProxyResource & {
979
+ export interface Image extends ProxyResource {
963
980
  /**
964
981
  * Metadata pertaining to creation and last modification of the image.
965
982
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1039,10 +1056,10 @@ export type Image = ProxyResource & {
1039
1056
  * NOTE: This property will not be serialized. It can only be populated by the server.
1040
1057
  */
1041
1058
  readonly osState?: OsState;
1042
- };
1059
+ }
1043
1060
 
1044
1061
  /** Schedule for automatically turning virtual machines in a lab on and off at specified times. */
1045
- export type Schedule = ProxyResource & {
1062
+ export interface Schedule extends ProxyResource {
1046
1063
  /**
1047
1064
  * Metadata pertaining to creation and last modification of the schedule.
1048
1065
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1063,10 +1080,10 @@ export type Schedule = ProxyResource & {
1063
1080
  * NOTE: This property will not be serialized. It can only be populated by the server.
1064
1081
  */
1065
1082
  readonly provisioningState?: ProvisioningState;
1066
- };
1083
+ }
1067
1084
 
1068
1085
  /** User of a lab that can register for and use virtual machines within the lab. */
1069
- export type User = ProxyResource & {
1086
+ export interface User extends ProxyResource {
1070
1087
  /**
1071
1088
  * Metadata pertaining to creation and last modification of the user resource.
1072
1089
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1106,10 +1123,10 @@ export type User = ProxyResource & {
1106
1123
  * NOTE: This property will not be serialized. It can only be populated by the server.
1107
1124
  */
1108
1125
  readonly totalUsage?: string;
1109
- };
1126
+ }
1110
1127
 
1111
1128
  /** A lab virtual machine resource. */
1112
- export type VirtualMachine = ProxyResource & {
1129
+ export interface VirtualMachine extends ProxyResource {
1113
1130
  /**
1114
1131
  * System data of the Lab virtual machine.
1115
1132
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1140,15 +1157,17 @@ export type VirtualMachine = ProxyResource & {
1140
1157
  * NOTE: This property will not be serialized. It can only be populated by the server.
1141
1158
  */
1142
1159
  readonly vmType?: VirtualMachineType;
1143
- };
1160
+ }
1144
1161
 
1145
1162
  /** Lab Plans act as a permission container for creating labs via labs.azure.com. Additionally, they can provide a set of default configurations that will apply at the time of creating a lab, but these defaults can still be overwritten. */
1146
- export type LabPlan = TrackedResource & {
1163
+ export interface LabPlan extends TrackedResource {
1147
1164
  /**
1148
1165
  * Metadata pertaining to creation and last modification of the lab plan.
1149
1166
  * NOTE: This property will not be serialized. It can only be populated by the server.
1150
1167
  */
1151
1168
  readonly systemData?: SystemData;
1169
+ /** Managed Identity Information */
1170
+ identity?: Identity;
1152
1171
  /** The default lab connection profile. This can be changed on a lab resource and only provides a default profile. */
1153
1172
  defaultConnectionProfile?: ConnectionProfile;
1154
1173
  /** The default lab shutdown profile. This can be changed on a lab resource and only provides a default profile. */
@@ -1168,10 +1187,10 @@ export type LabPlan = TrackedResource & {
1168
1187
  * NOTE: This property will not be serialized. It can only be populated by the server.
1169
1188
  */
1170
1189
  readonly provisioningState?: ProvisioningState;
1171
- };
1190
+ }
1172
1191
 
1173
1192
  /** The lab resource. */
1174
- export type Lab = TrackedResource & {
1193
+ export interface Lab extends TrackedResource {
1175
1194
  /**
1176
1195
  * Metadata pertaining to creation and last modification of the lab.
1177
1196
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -1205,13 +1224,17 @@ export type Lab = TrackedResource & {
1205
1224
  * NOTE: This property will not be serialized. It can only be populated by the server.
1206
1225
  */
1207
1226
  readonly state?: LabState;
1208
- };
1227
+ }
1209
1228
 
1210
1229
  /** Known values of {@link CreatedByType} that the service accepts. */
1211
1230
  export enum KnownCreatedByType {
1231
+ /** User */
1212
1232
  User = "User",
1233
+ /** Application */
1213
1234
  Application = "Application",
1235
+ /** ManagedIdentity */
1214
1236
  ManagedIdentity = "ManagedIdentity",
1237
+ /** Key */
1215
1238
  Key = "Key"
1216
1239
  }
1217
1240
 
@@ -1229,8 +1252,11 @@ export type CreatedByType = string;
1229
1252
 
1230
1253
  /** Known values of {@link Origin} that the service accepts. */
1231
1254
  export enum KnownOrigin {
1255
+ /** User */
1232
1256
  User = "user",
1257
+ /** System */
1233
1258
  System = "system",
1259
+ /** UserSystem */
1234
1260
  UserSystem = "user,system"
1235
1261
  }
1236
1262
 
@@ -1247,6 +1273,7 @@ export type Origin = string;
1247
1273
 
1248
1274
  /** Known values of {@link ActionType} that the service accepts. */
1249
1275
  export enum KnownActionType {
1276
+ /** Internal */
1250
1277
  Internal = "Internal"
1251
1278
  }
1252
1279
 
@@ -1259,23 +1286,11 @@ export enum KnownActionType {
1259
1286
  */
1260
1287
  export type ActionType = string;
1261
1288
 
1262
- /** Known values of {@link UsageUnit} that the service accepts. */
1263
- export enum KnownUsageUnit {
1264
- Count = "Count"
1265
- }
1266
-
1267
- /**
1268
- * Defines values for UsageUnit. \
1269
- * {@link KnownUsageUnit} can be used interchangeably with UsageUnit,
1270
- * this enum contains the known values that the service supports.
1271
- * ### Known values supported by the service
1272
- * **Count**
1273
- */
1274
- export type UsageUnit = string;
1275
-
1276
1289
  /** Known values of {@link LabServicesSkuTier} that the service accepts. */
1277
1290
  export enum KnownLabServicesSkuTier {
1291
+ /** Standard */
1278
1292
  Standard = "Standard",
1293
+ /** Premium */
1279
1294
  Premium = "Premium"
1280
1295
  }
1281
1296
 
@@ -1312,6 +1327,7 @@ export type ScaleType = string;
1312
1327
 
1313
1328
  /** Known values of {@link RestrictionType} that the service accepts. */
1314
1329
  export enum KnownRestrictionType {
1330
+ /** Location */
1315
1331
  Location = "Location"
1316
1332
  }
1317
1333
 
@@ -1326,7 +1342,9 @@ export type RestrictionType = string;
1326
1342
 
1327
1343
  /** Known values of {@link RestrictionReasonCode} that the service accepts. */
1328
1344
  export enum KnownRestrictionReasonCode {
1345
+ /** QuotaId */
1329
1346
  QuotaId = "QuotaId",
1347
+ /** NotAvailableForSubscription */
1330
1348
  NotAvailableForSubscription = "NotAvailableForSubscription"
1331
1349
  }
1332
1350
 
@@ -1339,6 +1357,21 @@ export enum KnownRestrictionReasonCode {
1339
1357
  * **NotAvailableForSubscription**
1340
1358
  */
1341
1359
  export type RestrictionReasonCode = string;
1360
+
1361
+ /** Known values of {@link UsageUnit} that the service accepts. */
1362
+ export enum KnownUsageUnit {
1363
+ /** Count */
1364
+ Count = "Count"
1365
+ }
1366
+
1367
+ /**
1368
+ * Defines values for UsageUnit. \
1369
+ * {@link KnownUsageUnit} can be used interchangeably with UsageUnit,
1370
+ * this enum contains the known values that the service supports.
1371
+ * ### Known values supported by the service
1372
+ * **Count**
1373
+ */
1374
+ export type UsageUnit = string;
1342
1375
  /** Defines values for ProvisioningState. */
1343
1376
  export type ProvisioningState =
1344
1377
  | "Creating"
@@ -1684,6 +1717,45 @@ export interface SchedulesListByLabNextOptionalParams
1684
1717
  /** Contains response data for the listByLabNext operation. */
1685
1718
  export type SchedulesListByLabNextResponse = PagedSchedules;
1686
1719
 
1720
+ /** Optional parameters. */
1721
+ export interface SkusListOptionalParams extends coreClient.OperationOptions {
1722
+ /** The filter to apply to the operation. */
1723
+ filter?: string;
1724
+ }
1725
+
1726
+ /** Contains response data for the list operation. */
1727
+ export type SkusListResponse = PagedLabServicesSkus;
1728
+
1729
+ /** Optional parameters. */
1730
+ export interface SkusListNextOptionalParams
1731
+ extends coreClient.OperationOptions {
1732
+ /** The filter to apply to the operation. */
1733
+ filter?: string;
1734
+ }
1735
+
1736
+ /** Contains response data for the listNext operation. */
1737
+ export type SkusListNextResponse = PagedLabServicesSkus;
1738
+
1739
+ /** Optional parameters. */
1740
+ export interface UsagesListByLocationOptionalParams
1741
+ extends coreClient.OperationOptions {
1742
+ /** The filter to apply to the operation. */
1743
+ filter?: string;
1744
+ }
1745
+
1746
+ /** Contains response data for the listByLocation operation. */
1747
+ export type UsagesListByLocationResponse = ListUsagesResult;
1748
+
1749
+ /** Optional parameters. */
1750
+ export interface UsagesListByLocationNextOptionalParams
1751
+ extends coreClient.OperationOptions {
1752
+ /** The filter to apply to the operation. */
1753
+ filter?: string;
1754
+ }
1755
+
1756
+ /** Contains response data for the listByLocationNext operation. */
1757
+ export type UsagesListByLocationNextResponse = ListUsagesResult;
1758
+
1687
1759
  /** Optional parameters. */
1688
1760
  export interface UsersListByLabOptionalParams
1689
1761
  extends coreClient.OperationOptions {
@@ -1821,45 +1893,6 @@ export interface VirtualMachinesListByLabNextOptionalParams
1821
1893
  /** Contains response data for the listByLabNext operation. */
1822
1894
  export type VirtualMachinesListByLabNextResponse = PagedVirtualMachines;
1823
1895
 
1824
- /** Optional parameters. */
1825
- export interface UsagesListByLocationOptionalParams
1826
- extends coreClient.OperationOptions {
1827
- /** The filter to apply to the operation. */
1828
- filter?: string;
1829
- }
1830
-
1831
- /** Contains response data for the listByLocation operation. */
1832
- export type UsagesListByLocationResponse = ListUsagesResult;
1833
-
1834
- /** Optional parameters. */
1835
- export interface UsagesListByLocationNextOptionalParams
1836
- extends coreClient.OperationOptions {
1837
- /** The filter to apply to the operation. */
1838
- filter?: string;
1839
- }
1840
-
1841
- /** Contains response data for the listByLocationNext operation. */
1842
- export type UsagesListByLocationNextResponse = ListUsagesResult;
1843
-
1844
- /** Optional parameters. */
1845
- export interface SkusListOptionalParams extends coreClient.OperationOptions {
1846
- /** The filter to apply to the operation. */
1847
- filter?: string;
1848
- }
1849
-
1850
- /** Contains response data for the list operation. */
1851
- export type SkusListResponse = PagedLabServicesSkus;
1852
-
1853
- /** Optional parameters. */
1854
- export interface SkusListNextOptionalParams
1855
- extends coreClient.OperationOptions {
1856
- /** The filter to apply to the operation. */
1857
- filter?: string;
1858
- }
1859
-
1860
- /** Contains response data for the listNext operation. */
1861
- export type SkusListNextResponse = PagedLabServicesSkus;
1862
-
1863
1896
  /** Optional parameters. */
1864
1897
  export interface LabServicesClientOptionalParams
1865
1898
  extends coreClient.ServiceClientOptions {