@azure-tools/typespec-azure-resource-manager 0.59.0-dev.4 → 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.
@@ -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
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.4",
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",