@azure-tools/typespec-azure-resource-manager 0.59.0-dev.3 → 0.59.0-dev.6

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.
@@ -29,7 +29,7 @@ interface Operations<
29
29
  @get
30
30
  @list
31
31
  list(
32
- ...ApiVersionParameter,
32
+ ...CommonTypes.ApiVersionParameter,
33
33
 
34
34
  @path
35
35
  @segment("providers")
@@ -403,10 +403,10 @@ model ProviderParameter<Resource extends {}> {
403
403
  @doc("Update a {name}", Resource)
404
404
  @armResourceUpdate(Resource)
405
405
  @Private.enforceConstraint(Resource, Foundations.Resource)
406
- @patch(#{ implicitOptionality: true })
406
+ @patch(#{ implicitOptionality: false })
407
407
  op CustomPatchAsync<
408
408
  Resource extends Foundations.SimpleResource,
409
- PatchModel extends TypeSpec.Reflection.Model = TagsUpdateModel<Resource>,
409
+ PatchModel extends TypeSpec.Reflection.Model | void = TagsUpdateModel<Resource>,
410
410
  BaseParameters = DefaultBaseParameters<Resource>,
411
411
  LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader<
412
412
  Azure.Core.StatusMonitorPollingOptions<ArmOperationStatus>,
@@ -443,10 +443,10 @@ op CustomPatchAsync<
443
443
  @doc("Update a {name}", Resource)
444
444
  @armResourceUpdate(Resource)
445
445
  @Private.enforceConstraint(Resource, Foundations.Resource)
446
- @patch(#{ implicitOptionality: true })
446
+ @patch(#{ implicitOptionality: false })
447
447
  op CustomPatchSync<
448
448
  Resource extends Foundations.SimpleResource,
449
- PatchModel extends TypeSpec.Reflection.Model = TagsUpdateModel<Resource>,
449
+ PatchModel extends TypeSpec.Reflection.Model | void = TagsUpdateModel<Resource>,
450
450
  BaseParameters = DefaultBaseParameters<Resource>,
451
451
  Parameters extends {} = {},
452
452
  Response extends {} = ArmResponse<Resource>,
@@ -460,6 +460,96 @@ op CustomPatchSync<
460
460
  OptionalRequestBody
461
461
  >;
462
462
 
463
+ /**
464
+ * A long-running resource CreateOrUpdate (PUT)
465
+ * @template Resource the resource being created or updated
466
+ * @template Request The request body for the operation
467
+ * @template BaseParameters Optional. Allows overriding the operation parameters
468
+ * @template LroHeaders Optional. Allows overriding the lro headers returned on resource create
469
+ * @template Parameters Optional. Additional parameters after the path parameters
470
+ * @template Response Optional. The success response for the createOrUpdate operation
471
+ * @template Error Optional. The error response, if non-standard.
472
+ * @template OptionalRequestBody Optional. Indicates whether the request body is optional
473
+ */
474
+ @autoRoute
475
+ @doc("Create a {name}", Resource)
476
+ @armResourceCreateOrUpdate(Resource)
477
+ @Private.enforceConstraint(Resource, Foundations.Resource)
478
+ @Azure.Core.Foundations.Private.defaultFinalStateVia(#["location", "azure-async-operation"])
479
+ @put
480
+ op CreateOrUpdateAsync<
481
+ Resource extends Foundations.SimpleResource,
482
+ Request extends {} | void = Resource,
483
+ BaseParameters = DefaultBaseParameters<Resource>,
484
+ LroHeaders extends TypeSpec.Reflection.Model = ArmAsyncOperationHeader<FinalResult = Resource> &
485
+ Azure.Core.Foundations.RetryAfterHeader,
486
+ Parameters extends {} = {},
487
+ Response extends {} = ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedResponse<
488
+ Resource,
489
+ LroHeaders
490
+ >,
491
+ Error extends {} = ErrorResponse,
492
+ OptionalRequestBody extends valueof boolean = false
493
+ > is CreateOperation<
494
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
495
+ Request,
496
+ Response,
497
+ Error,
498
+ OptionalRequestBody
499
+ >;
500
+
501
+ /**
502
+ * Synchronous PUT operation for Azure Resource Manager resources
503
+ * @template Resource the resource being created or replaced
504
+ * @template Request The request body for the operation
505
+ * @template BaseParameters Optional. Allows overriding the operation parameters
506
+ * @template Parameters Optional. Additional parameters after the path parameters
507
+ * @template Response Optional. The success response for the createOrUpdate operation
508
+ * @template Error Optional. The error response, if non-standard.
509
+ * @template OptionalRequestBody Optional. Indicates whether the request body is optional
510
+ */
511
+ @autoRoute
512
+ @doc("Create a {name}", Resource)
513
+ @armResourceCreateOrUpdate(Resource)
514
+ @Private.enforceConstraint(Resource, Foundations.Resource)
515
+ @put
516
+ op CreateOrUpdateSync<
517
+ Resource extends Foundations.SimpleResource,
518
+ Request extends {} | void = Resource,
519
+ BaseParameters = DefaultBaseParameters<Resource>,
520
+ Parameters extends {} = {},
521
+ Response extends {} = ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedSyncResponse<Resource>,
522
+ Error extends {} = ErrorResponse,
523
+ OptionalRequestBody extends valueof boolean = false
524
+ > is CreateOperation<
525
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
526
+ Request,
527
+ Response,
528
+ Error,
529
+ OptionalRequestBody
530
+ >;
531
+
532
+ /**
533
+ * @dev The base template for Azure Resource Manager PUT Operations.
534
+ * @template HttpParameters The parameter object for the operation.
535
+ * @template BodyParameter The body parameter
536
+ * @template Response The response or union of responses for success.
537
+ * @template ErrorResponse The error response.
538
+ */
539
+ op CreateOperation<
540
+ HttpParameters extends {},
541
+ BodyParameter extends {} | void,
542
+ Response extends {},
543
+ ErrorResponse extends {},
544
+ OptionalRequestBody extends valueof boolean = false
545
+ >(
546
+ ...HttpParameters,
547
+
548
+ @doc("Resource create parameters.")
549
+ @armBodyRoot(OptionalRequestBody)
550
+ resource: BodyParameter,
551
+ ): Response | ErrorResponse;
552
+
463
553
  /**
464
554
  * @dev The base template for Legacy Azure Resource Manager PATCH Operations.
465
555
  * @template HttpParameters The parameter object for the operation.
@@ -470,7 +560,7 @@ op CustomPatchSync<
470
560
  */
471
561
  op UpdateOperation<
472
562
  HttpParameters extends {},
473
- BodyParameter extends {},
563
+ BodyParameter extends {} | void,
474
564
  Response extends {},
475
565
  ErrorResponse extends {},
476
566
  OptionalRequestBody extends valueof boolean = false
@@ -29,16 +29,16 @@ alias BaseParameters<Resource extends {}> = DefaultBaseParameters<Resource>;
29
29
  */
30
30
  @resourceBaseParametersOf(Resource)
31
31
  model DefaultBaseParameters<Resource extends {}> {
32
- ...ApiVersionParameter;
32
+ ...CommonTypes.ApiVersionParameter;
33
33
 
34
34
  // unless tenant or extension
35
- ...SubscriptionIdParameter;
35
+ ...CommonTypes.SubscriptionIdParameter;
36
36
 
37
37
  // deprecated, should not be used
38
- ...LocationParameter;
38
+ ...CommonTypes.LocationParameter;
39
39
 
40
40
  // unless tenant, subscription, location, or extension
41
- ...ResourceGroupParameter;
41
+ ...CommonTypes.ResourceGroupNameParameter;
42
42
 
43
43
  // unless tenant, subscription, location, or resourceGroup
44
44
  ...ResourceUriParameter;
@@ -59,14 +59,14 @@ model ArmTagsProperty {
59
59
  * The static parameters for a tenant-based resource
60
60
  */
61
61
  model TenantBaseParameters {
62
- ...ApiVersionParameter;
62
+ ...CommonTypes.ApiVersionParameter;
63
63
  }
64
64
 
65
65
  /**
66
66
  * The static parameters for a subscription based resource
67
67
  */
68
68
  model SubscriptionBaseParameters is TenantBaseParameters {
69
- ...SubscriptionIdParameter;
69
+ ...CommonTypes.SubscriptionIdParameter;
70
70
  }
71
71
 
72
72
  /**
@@ -80,7 +80,7 @@ model LocationBaseParameters is SubscriptionBaseParameters {
80
80
  * The static parameters for a resource-group based resource
81
81
  */
82
82
  model ResourceGroupBaseParameters is SubscriptionBaseParameters {
83
- ...ResourceGroupParameter;
83
+ ...CommonTypes.ResourceGroupNameParameter;
84
84
  }
85
85
 
86
86
  /**
@@ -234,7 +234,7 @@ op checkNameAvailability<
234
234
  Response extends TypeSpec.Reflection.Model = CheckNameAvailabilityResponse,
235
235
  AdditionalParams extends TypeSpec.Reflection.Model = {}
236
236
  >(
237
- ...ApiVersionParameter,
237
+ ...CommonTypes.ApiVersionParameter,
238
238
  ...ScopeParameters,
239
239
  ...AdditionalParams,
240
240
 
@@ -21,7 +21,7 @@ interface Operations {
21
21
  @get
22
22
  @list
23
23
  list(
24
- ...ApiVersionParameter,
24
+ ...CommonTypes.ApiVersionParameter,
25
25
 
26
26
  @path
27
27
  @segment("providers")
@@ -689,7 +689,7 @@ op checkGlobalNameAvailability<
689
689
  Response extends TypeSpec.Reflection.Model = CheckNameAvailabilityResponse,
690
690
  AdditionalParams extends TypeSpec.Reflection.Model = {}
691
691
  > is checkNameAvailability<
692
- SubscriptionIdParameter & DefaultProviderNamespace,
692
+ CommonTypes.SubscriptionIdParameter & DefaultProviderNamespace,
693
693
  Request,
694
694
  Response,
695
695
  AdditionalParams
@@ -709,7 +709,7 @@ op checkLocalNameAvailability<
709
709
  Response extends TypeSpec.Reflection.Model = CheckNameAvailabilityResponse,
710
710
  AdditionalParams extends TypeSpec.Reflection.Model = {}
711
711
  > is checkNameAvailability<
712
- SubscriptionIdParameter & DefaultProviderNamespace & LocationResourceParameter,
712
+ CommonTypes.SubscriptionIdParameter & DefaultProviderNamespace & LocationResourceParameter,
713
713
  Request,
714
714
  Response,
715
715
  AdditionalParams
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-resource-manager",
3
- "version": "0.59.0-dev.3",
3
+ "version": "0.59.0-dev.6",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Resource Manager library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",