diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index a0121f606644..d6de460bc107 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -2188,7 +2188,7 @@ packages: resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==} dependencies: '@types/connect': 3.4.35 - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/chai-as-promised/7.1.5: @@ -2210,7 +2210,7 @@ packages: /@types/connect/3.4.35: resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/cookie/0.4.1: @@ -2220,7 +2220,7 @@ packages: /@types/cors/2.8.13: resolution: {integrity: sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/debug/4.1.7: @@ -2232,7 +2232,7 @@ packages: /@types/decompress/4.2.4: resolution: {integrity: sha512-/C8kTMRTNiNuWGl5nEyKbPiMv6HA+0RbEXzFhFBEzASM6+oa4tJro9b8nj7eRlOFfuLdzUU+DS/GPDlvvzMOhA==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/eslint/8.4.10: @@ -2253,7 +2253,7 @@ packages: /@types/express-serve-static-core/4.17.34: resolution: {integrity: sha512-fvr49XlCGoUj2Pp730AItckfjat4WNb0lb3kfrLWffd+RLeoGAMsq7UOy04PAPtoL01uKwcp6u8nhzpgpDYr3w==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 '@types/qs': 6.9.7 '@types/range-parser': 1.2.4 '@types/send': 0.17.1 @@ -2271,13 +2271,13 @@ packages: /@types/fs-extra/8.1.2: resolution: {integrity: sha512-SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/fs-extra/9.0.13: resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/inquirer/8.2.6: @@ -2290,7 +2290,7 @@ packages: /@types/is-buffer/2.0.0: resolution: {integrity: sha512-0f7N/e3BAz32qDYvgB4d2cqv1DqUwvGxHkXsrucICn8la1Vb6Yl6Eg8mPScGwUiqHJeE7diXlzaK+QMA9m4Gxw==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/json-schema/7.0.11: @@ -2304,13 +2304,13 @@ packages: /@types/jsonwebtoken/9.0.2: resolution: {integrity: sha512-drE6uz7QBKq1fYqqoFKTDRdFCPHd5TCub75BM+D+cMx7NU9hUz7SESLfC2fSCXVFMO5Yj8sOWHuGqPgjc+fz0Q==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/jws/3.2.5: resolution: {integrity: sha512-xGTxZH34xOryaTN8CMsvhh9lfNqFuHiMoRvsLYWQdBJHqiECyfInXVl2eK8Jz2emxZWMIn5RBlmr3oDVPeWujw==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/linkify-it/3.0.2: @@ -2361,13 +2361,13 @@ packages: /@types/mysql/2.15.19: resolution: {integrity: sha512-wSRg2QZv14CWcZXkgdvHbbV2ACufNy5EgI8mBBxnJIptchv7DBy/h53VMa2jDhyo0C9MO4iowE6z9vF8Ja1DkQ==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/node-fetch/2.6.3: resolution: {integrity: sha512-ETTL1mOEdq/sxUtgtOhKjyB2Irra4cjxksvcMUR5Zr4n+PxVhsCD9WS46oPbHL3et9Zde7CNRr+WUNlcHvsX+w==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 form-data: 3.0.1 dev: false @@ -2392,7 +2392,7 @@ packages: /@types/pg/8.6.1: resolution: {integrity: sha512-1Kc4oAGzAl7uqUStZCDvaLFqZrW9qWSjXOmBfdgyBP5La7Us6Mg4GBvRlSoaZMhQF/zSj1C8CtKMBkoiT8eL8w==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 pg-protocol: 1.6.0 pg-types: 2.2.0 dev: false @@ -2420,7 +2420,7 @@ packages: /@types/resolve/1.17.1: resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/semaphore/1.1.1: @@ -2439,14 +2439,14 @@ packages: resolution: {integrity: sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==} dependencies: '@types/mime': 1.3.2 - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/serve-static/1.15.1: resolution: {integrity: sha512-NUo5XNiAdULrJENtJXZZ3fHtfMolzZwczzBbnAeBbqBwG+LaG6YaJtuwzwGSQZ2wsCrxjEhNNjAkKigy3n8teQ==} dependencies: '@types/mime': 3.0.1 - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/sinon/10.0.14: @@ -2468,13 +2468,13 @@ packages: /@types/stoppable/1.1.1: resolution: {integrity: sha512-b8N+fCADRIYYrGZOcmOR8ZNBOqhktWTB/bMUl5LvGtT201QKJZOOH5UsFyI3qtteM6ZAJbJqZoBcLqqxKIwjhw==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/through/0.0.30: resolution: {integrity: sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/tough-cookie/4.0.2: @@ -2488,7 +2488,7 @@ packages: /@types/tunnel/0.0.3: resolution: {integrity: sha512-sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/underscore/1.11.4: @@ -2506,19 +2506,19 @@ packages: /@types/ws/7.4.7: resolution: {integrity: sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/ws/8.5.4: resolution: {integrity: sha512-zdQDHKUgcX/zBc4GrwsE/7dVdAD8JR4EuiAXiiUhhfyIJXXb2+PrGshFyeXWQPMmmZ2XxgaqclgpIC7eTXc1mg==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/xml2js/0.4.11: resolution: {integrity: sha512-JdigeAKmCyoJUiQljjr7tQG3if9NkqGUgwEUqBvV0N7LM4HyQk7UXCnusRa1lnvXAEYJ8mw8GtZWioagNztOwA==} dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false /@types/yargs-parser/21.0.0: @@ -2535,7 +2535,7 @@ packages: resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==} requiresBuild: true dependencies: - '@types/node': 14.18.46 + '@types/node': 16.18.28 dev: false optional: true @@ -3540,7 +3540,7 @@ packages: resolution: {integrity: sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==} deprecated: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797) dependencies: - ms: 2.1.1 + ms: 2.1.3 dev: false /debug/3.2.7: @@ -3771,7 +3771,7 @@ packages: dependencies: semver: 7.5.0 shelljs: 0.8.5 - typescript: 5.1.0-dev.20230511 + typescript: 5.1.0-dev.20230515 dev: false /ecdsa-sig-formatter/1.0.11: @@ -3822,7 +3822,7 @@ packages: dependencies: '@types/cookie': 0.4.1 '@types/cors': 2.8.13 - '@types/node': 14.18.46 + '@types/node': 16.18.28 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.4.2 @@ -4746,7 +4746,7 @@ packages: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 3.0.4 + minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 dev: false @@ -7043,7 +7043,7 @@ packages: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 14.18.46 + '@types/node': 16.18.28 long: 5.2.3 dev: false @@ -8315,8 +8315,8 @@ packages: hasBin: true dev: false - /typescript/5.1.0-dev.20230511: - resolution: {integrity: sha512-T/GsNgbl4YWUZwSxCrj9uq2aIj7OC/5EyXqj4exIhRbwZEpjPIflv2TEqm6K5fFQhqKQpFATE8OBvY0Qzu8D1A==} + /typescript/5.1.0-dev.20230515: + resolution: {integrity: sha512-yn0MGsy6U0QAVF+lXW6LPupQmuRsyA0xUJetqw2tDqa+49231BpkhTuY6oEwLsc98tiEzCfIw7hzbLsiwVGFaA==} engines: {node: '>=14.17'} hasBin: true dev: false @@ -11587,7 +11587,7 @@ packages: dev: false file:projects/arm-eventgrid.tgz: - resolution: {integrity: sha512-KJwMcIjFGH+Xv8jgoCGdbFdtpKjR5d6IFrH2vG/UVjQaLp5I8cyD/q8dRYcNBFJgcxh4YjUAXhRgI1hBKn3ZTw==, tarball: file:projects/arm-eventgrid.tgz} + resolution: {integrity: sha512-0FgK7fuVb5DylI9LkhlaxoPBR5AvLFeAUCHsG/EOB2P6z0NhmG75Ts6gIEPaAZJb33TWli37Bk2MNobSYxCd/w==, tarball: file:projects/arm-eventgrid.tgz} name: '@rush-temp/arm-eventgrid' version: 0.0.0 dependencies: @@ -11602,13 +11602,13 @@ packages: chai: 4.3.7 cross-env: 7.0.3 dotenv: 16.0.3 - mkdirp: 1.0.4 + mkdirp: 2.1.6 mocha: 7.2.0 rimraf: 3.0.2 rollup: 2.79.1 rollup-plugin-sourcemaps: 0.6.3_m742s5qpci6ulntpyriekwplh4 tslib: 2.5.0 - typescript: 5.0.4 + typescript: 4.8.4 uglify-js: 3.17.4 transitivePeerDependencies: - supports-color diff --git a/sdk/eventgrid/arm-eventgrid/CHANGELOG.md b/sdk/eventgrid/arm-eventgrid/CHANGELOG.md index ebecbab34765..3aadcfbc453c 100644 --- a/sdk/eventgrid/arm-eventgrid/CHANGELOG.md +++ b/sdk/eventgrid/arm-eventgrid/CHANGELOG.md @@ -1,15 +1,321 @@ # Release History + +## 14.2.0-beta.1 (2023-05-15) + +**Features** -## 14.1.1 (Unreleased) - -### Features Added - -### Breaking Changes - -### Bugs Fixed - -### Other Changes - + - Added operation group CaCertificates + - Added operation group ClientGroups + - Added operation group Clients + - Added operation group Namespaces + - Added operation group NamespaceTopicEventSubscriptions + - Added operation group NamespaceTopics + - Added operation group PartnerDestinations + - Added operation group PermissionBindings + - Added operation group TopicSpaces + - Added Interface AzureADPartnerClientAuthentication + - Added Interface BoolEqualsFilter + - Added Interface CaCertificate + - Added Interface CaCertificatesCreateOrUpdateOptionalParams + - Added Interface CaCertificatesDeleteHeaders + - Added Interface CaCertificatesDeleteOptionalParams + - Added Interface CaCertificatesGetOptionalParams + - Added Interface CaCertificatesListByNamespaceNextOptionalParams + - Added Interface CaCertificatesListByNamespaceOptionalParams + - Added Interface CaCertificatesListResult + - Added Interface ChannelsDeleteHeaders + - Added Interface Client + - Added Interface ClientAuthentication + - Added Interface ClientAuthenticationSettings + - Added Interface ClientCertificateAuthentication + - Added Interface ClientCertificateSubjectDistinguishedName + - Added Interface ClientCertificateThumbprint + - Added Interface ClientGroup + - Added Interface ClientGroupsCreateOrUpdateOptionalParams + - Added Interface ClientGroupsDeleteHeaders + - Added Interface ClientGroupsDeleteOptionalParams + - Added Interface ClientGroupsGetOptionalParams + - Added Interface ClientGroupsListByNamespaceNextOptionalParams + - Added Interface ClientGroupsListByNamespaceOptionalParams + - Added Interface ClientGroupsListResult + - Added Interface ClientsCreateOrUpdateOptionalParams + - Added Interface ClientsDeleteHeaders + - Added Interface ClientsDeleteOptionalParams + - Added Interface ClientsGetOptionalParams + - Added Interface ClientsListByNamespaceNextOptionalParams + - Added Interface ClientsListByNamespaceOptionalParams + - Added Interface ClientsListResult + - Added Interface DeliveryConfiguration + - Added Interface DomainEventSubscriptionsDeleteHeaders + - Added Interface DomainsDeleteHeaders + - Added Interface DomainTopicEventSubscriptionsDeleteHeaders + - Added Interface DomainTopicsDeleteHeaders + - Added Interface DynamicRoutingEnrichment + - Added Interface ErrorAdditionalInfo + - Added Interface ErrorDetail + - Added Interface ErrorResponse + - Added Interface EventSubscriptionsDeleteHeaders + - Added Interface ExtendedLocation + - Added Interface Filter + - Added Interface FiltersConfiguration + - Added Interface IsNotNullFilter + - Added Interface IsNullOrUndefinedFilter + - Added Interface Namespace + - Added Interface NamespaceRegenerateKeyRequest + - Added Interface NamespacesCreateOrUpdateOptionalParams + - Added Interface NamespacesDeleteHeaders + - Added Interface NamespacesDeleteOptionalParams + - Added Interface NamespacesGetOptionalParams + - Added Interface NamespaceSharedAccessKeys + - Added Interface NamespaceSku + - Added Interface NamespacesListByResourceGroupNextOptionalParams + - Added Interface NamespacesListByResourceGroupOptionalParams + - Added Interface NamespacesListBySubscriptionNextOptionalParams + - Added Interface NamespacesListBySubscriptionOptionalParams + - Added Interface NamespacesListResult + - Added Interface NamespacesListSharedAccessKeysOptionalParams + - Added Interface NamespacesRegenerateKeyHeaders + - Added Interface NamespacesRegenerateKeyOptionalParams + - Added Interface NamespacesUpdateHeaders + - Added Interface NamespacesUpdateOptionalParams + - Added Interface NamespaceTopic + - Added Interface NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams + - Added Interface NamespaceTopicEventSubscriptionsDeleteHeaders + - Added Interface NamespaceTopicEventSubscriptionsDeleteOptionalParams + - Added Interface NamespaceTopicEventSubscriptionsGetOptionalParams + - Added Interface NamespaceTopicEventSubscriptionsListByNamespaceTopicNextOptionalParams + - Added Interface NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams + - Added Interface NamespaceTopicEventSubscriptionsUpdateHeaders + - Added Interface NamespaceTopicEventSubscriptionsUpdateOptionalParams + - Added Interface NamespaceTopicsCreateOrUpdateOptionalParams + - Added Interface NamespaceTopicsDeleteHeaders + - Added Interface NamespaceTopicsDeleteOptionalParams + - Added Interface NamespaceTopicsGetOptionalParams + - Added Interface NamespaceTopicsListByNamespaceNextOptionalParams + - Added Interface NamespaceTopicsListByNamespaceOptionalParams + - Added Interface NamespaceTopicsListResult + - Added Interface NamespaceTopicsListSharedAccessKeysOptionalParams + - Added Interface NamespaceTopicsRegenerateKeyHeaders + - Added Interface NamespaceTopicsRegenerateKeyOptionalParams + - Added Interface NamespaceTopicsUpdateHeaders + - Added Interface NamespaceTopicsUpdateOptionalParams + - Added Interface NamespaceTopicUpdateParameters + - Added Interface NamespaceUpdateParameters + - Added Interface NumberGreaterThanFilter + - Added Interface NumberGreaterThanOrEqualsFilter + - Added Interface NumberInFilter + - Added Interface NumberInRangeFilter + - Added Interface NumberLessThanFilter + - Added Interface NumberLessThanOrEqualsFilter + - Added Interface NumberNotInFilter + - Added Interface NumberNotInRangeFilter + - Added Interface PartnerClientAuthentication + - Added Interface PartnerConfigurationsDeleteHeaders + - Added Interface PartnerDestination + - Added Interface PartnerDestinationInfo + - Added Interface PartnerDestinationsActivateOptionalParams + - Added Interface PartnerDestinationsCreateOrUpdateOptionalParams + - Added Interface PartnerDestinationsDeleteHeaders + - Added Interface PartnerDestinationsDeleteOptionalParams + - Added Interface PartnerDestinationsGetOptionalParams + - Added Interface PartnerDestinationsListByResourceGroupNextOptionalParams + - Added Interface PartnerDestinationsListByResourceGroupOptionalParams + - Added Interface PartnerDestinationsListBySubscriptionNextOptionalParams + - Added Interface PartnerDestinationsListBySubscriptionOptionalParams + - Added Interface PartnerDestinationsListResult + - Added Interface PartnerDestinationsUpdateHeaders + - Added Interface PartnerDestinationsUpdateOptionalParams + - Added Interface PartnerDestinationUpdateParameters + - Added Interface PartnerEventSubscriptionDestination + - Added Interface PartnerNamespacesDeleteHeaders + - Added Interface PartnerRegistrationsCreateOrUpdateHeaders + - Added Interface PartnerRegistrationsDeleteHeaders + - Added Interface PartnerTopicEventSubscriptionsDeleteHeaders + - Added Interface PartnerTopicsDeleteHeaders + - Added Interface PartnerUpdateDestinationInfo + - Added Interface PermissionBinding + - Added Interface PermissionBindingsCreateOrUpdateOptionalParams + - Added Interface PermissionBindingsDeleteHeaders + - Added Interface PermissionBindingsDeleteOptionalParams + - Added Interface PermissionBindingsGetOptionalParams + - Added Interface PermissionBindingsListByNamespaceNextOptionalParams + - Added Interface PermissionBindingsListByNamespaceOptionalParams + - Added Interface PermissionBindingsListResult + - Added Interface PrivateEndpointConnectionsDeleteHeaders + - Added Interface QueueInfo + - Added Interface ResourceMoveChangeHistory + - Added Interface ResourceSku + - Added Interface RoutingEnrichments + - Added Interface RoutingIdentityInfo + - Added Interface StaticRoutingEnrichment + - Added Interface StringBeginsWithFilter + - Added Interface StringContainsFilter + - Added Interface StringEndsWithFilter + - Added Interface StringInFilter + - Added Interface StringNotBeginsWithFilter + - Added Interface StringNotContainsFilter + - Added Interface StringNotEndsWithFilter + - Added Interface StringNotInFilter + - Added Interface Subscription + - Added Interface SubscriptionsListResult + - Added Interface SubscriptionUpdateParameters + - Added Interface SystemTopicEventSubscriptionsDeleteHeaders + - Added Interface SystemTopicsDeleteHeaders + - Added Interface TopicEventSubscriptionsDeleteHeaders + - Added Interface TopicsConfiguration + - Added Interface TopicsDeleteHeaders + - Added Interface TopicSpace + - Added Interface TopicSpacesConfiguration + - Added Interface TopicSpacesCreateOrUpdateOptionalParams + - Added Interface TopicSpacesDeleteHeaders + - Added Interface TopicSpacesDeleteOptionalParams + - Added Interface TopicSpacesGetOptionalParams + - Added Interface TopicSpacesListByNamespaceNextOptionalParams + - Added Interface TopicSpacesListByNamespaceOptionalParams + - Added Interface TopicSpacesListResult + - Added Interface TopicsRegenerateKeyHeaders + - Added Interface UpdateTopicSpacesConfigurationInfo + - Added Interface WebhookPartnerDestinationInfo + - Added Interface WebhookUpdatePartnerDestinationInfo + - Added Type Alias AlternativeAuthenticationNameSource + - Added Type Alias CaCertificateProvisioningState + - Added Type Alias CaCertificatesCreateOrUpdateResponse + - Added Type Alias CaCertificatesGetResponse + - Added Type Alias CaCertificatesListByNamespaceNextResponse + - Added Type Alias CaCertificatesListByNamespaceResponse + - Added Type Alias ClientCertificateValidationScheme + - Added Type Alias ClientGroupProvisioningState + - Added Type Alias ClientGroupsCreateOrUpdateResponse + - Added Type Alias ClientGroupsGetResponse + - Added Type Alias ClientGroupsListByNamespaceNextResponse + - Added Type Alias ClientGroupsListByNamespaceResponse + - Added Type Alias ClientProvisioningState + - Added Type Alias ClientsCreateOrUpdateResponse + - Added Type Alias ClientsGetResponse + - Added Type Alias ClientsListByNamespaceNextResponse + - Added Type Alias ClientsListByNamespaceResponse + - Added Type Alias ClientState + - Added Type Alias DeliveryMode + - Added Type Alias DeliverySchema + - Added Type Alias EventInputSchema + - Added Type Alias FilterOperatorType + - Added Type Alias FilterUnion + - Added Type Alias NamespaceProvisioningState + - Added Type Alias NamespacesCreateOrUpdateResponse + - Added Type Alias NamespacesGetResponse + - Added Type Alias NamespacesListByResourceGroupNextResponse + - Added Type Alias NamespacesListByResourceGroupResponse + - Added Type Alias NamespacesListBySubscriptionNextResponse + - Added Type Alias NamespacesListBySubscriptionResponse + - Added Type Alias NamespacesListSharedAccessKeysResponse + - Added Type Alias NamespacesRegenerateKeyResponse + - Added Type Alias NamespacesUpdateResponse + - Added Type Alias NamespaceTopicEventSubscriptionsCreateOrUpdateResponse + - Added Type Alias NamespaceTopicEventSubscriptionsGetResponse + - Added Type Alias NamespaceTopicEventSubscriptionsListByNamespaceTopicNextResponse + - Added Type Alias NamespaceTopicEventSubscriptionsListByNamespaceTopicResponse + - Added Type Alias NamespaceTopicEventSubscriptionsUpdateResponse + - Added Type Alias NamespaceTopicProvisioningState + - Added Type Alias NamespaceTopicsCreateOrUpdateResponse + - Added Type Alias NamespaceTopicsGetResponse + - Added Type Alias NamespaceTopicsListByNamespaceNextResponse + - Added Type Alias NamespaceTopicsListByNamespaceResponse + - Added Type Alias NamespaceTopicsListSharedAccessKeysResponse + - Added Type Alias NamespaceTopicsRegenerateKeyResponse + - Added Type Alias NamespaceTopicsUpdateResponse + - Added Type Alias PartnerClientAuthenticationType + - Added Type Alias PartnerClientAuthenticationUnion + - Added Type Alias PartnerDestinationActivationState + - Added Type Alias PartnerDestinationInfoUnion + - Added Type Alias PartnerDestinationProvisioningState + - Added Type Alias PartnerDestinationsActivateResponse + - Added Type Alias PartnerDestinationsCreateOrUpdateResponse + - Added Type Alias PartnerDestinationsGetResponse + - Added Type Alias PartnerDestinationsListByResourceGroupNextResponse + - Added Type Alias PartnerDestinationsListByResourceGroupResponse + - Added Type Alias PartnerDestinationsListBySubscriptionNextResponse + - Added Type Alias PartnerDestinationsListBySubscriptionResponse + - Added Type Alias PartnerDestinationsUpdateResponse + - Added Type Alias PartnerEndpointType + - Added Type Alias PartnerUpdateDestinationInfoUnion + - Added Type Alias PermissionBindingProvisioningState + - Added Type Alias PermissionBindingsCreateOrUpdateResponse + - Added Type Alias PermissionBindingsGetResponse + - Added Type Alias PermissionBindingsListByNamespaceNextResponse + - Added Type Alias PermissionBindingsListByNamespaceResponse + - Added Type Alias PermissionType + - Added Type Alias PrivateEndpointConnectionsDeleteResponse + - Added Type Alias PublisherType + - Added Type Alias ResourceKind + - Added Type Alias RoutingIdentityType + - Added Type Alias Sku + - Added Type Alias SkuName + - Added Type Alias StaticRoutingEnrichmentType + - Added Type Alias SubscriptionProvisioningState + - Added Type Alias TlsVersion + - Added Type Alias TopicsDeleteResponse + - Added Type Alias TopicSpaceProvisioningState + - Added Type Alias TopicSpacesConfigurationState + - Added Type Alias TopicSpacesCreateOrUpdateResponse + - Added Type Alias TopicSpacesGetResponse + - Added Type Alias TopicSpacesListByNamespaceNextResponse + - Added Type Alias TopicSpacesListByNamespaceResponse + - Interface Channel has a new optional parameter partnerDestinationInfo + - Interface ChannelUpdateParameters has a new optional parameter partnerDestinationInfo + - Interface Domain has a new optional parameter eventTypeInfo + - Interface Domain has a new optional parameter minimumTlsVersionAllowed + - Interface Domain has a new optional parameter sku + - Interface DomainUpdateParameters has a new optional parameter eventTypeInfo + - Interface DomainUpdateParameters has a new optional parameter minimumTlsVersionAllowed + - Interface DomainUpdateParameters has a new optional parameter sku + - Interface PartnerNamespace has a new optional parameter minimumTlsVersionAllowed + - Interface PartnerNamespaceUpdateParameters has a new optional parameter minimumTlsVersionAllowed + - Interface Topic has a new optional parameter eventTypeInfo + - Interface Topic has a new optional parameter extendedLocation + - Interface Topic has a new optional parameter kind + - Interface Topic has a new optional parameter minimumTlsVersionAllowed + - Interface Topic has a new optional parameter sku + - Interface TopicTypeInfo has a new optional parameter areRegionalAndGlobalSourcesSupported + - Interface TopicUpdateParameters has a new optional parameter eventTypeInfo + - Interface TopicUpdateParameters has a new optional parameter minimumTlsVersionAllowed + - Interface TopicUpdateParameters has a new optional parameter sku + - Interface VerifiedPartner has a new optional parameter partnerDestinationDetails + - Interface WebHookEventSubscriptionDestination has a new optional parameter minimumTlsVersionAllowed + - Type of parameter endpointType of interface EventSubscriptionDestination is changed from "WebHook" | "EventHub" | "StorageQueue" | "HybridConnection" | "ServiceBusQueue" | "ServiceBusTopic" | "AzureFunction" to "WebHook" | "EventHub" | "StorageQueue" | "HybridConnection" | "ServiceBusQueue" | "ServiceBusTopic" | "AzureFunction" | "PartnerDestination" + - Added Enum KnownAlternativeAuthenticationNameSource + - Added Enum KnownCaCertificateProvisioningState + - Added Enum KnownClientCertificateValidationScheme + - Added Enum KnownClientGroupProvisioningState + - Added Enum KnownClientProvisioningState + - Added Enum KnownClientState + - Added Enum KnownDeliveryMode + - Added Enum KnownDeliverySchema + - Added Enum KnownEventInputSchema + - Added Enum KnownFilterOperatorType + - Added Enum KnownNamespaceProvisioningState + - Added Enum KnownNamespaceTopicProvisioningState + - Added Enum KnownPartnerClientAuthenticationType + - Added Enum KnownPartnerDestinationActivationState + - Added Enum KnownPartnerDestinationProvisioningState + - Added Enum KnownPartnerEndpointType + - Added Enum KnownPermissionBindingProvisioningState + - Added Enum KnownPermissionType + - Added Enum KnownPublisherType + - Added Enum KnownResourceKind + - Added Enum KnownRoutingIdentityType + - Added Enum KnownSku + - Added Enum KnownSkuName + - Added Enum KnownStaticRoutingEnrichmentType + - Added Enum KnownSubscriptionProvisioningState + - Added Enum KnownTlsVersion + - Added Enum KnownTopicSpaceProvisioningState + - Added Enum KnownTopicSpacesConfigurationState + - Enum KnownChannelProvisioningState has a new value IdleDueToMirroredPartnerDestinationDeletion + - Enum KnownChannelType has a new value PartnerDestination + - Enum KnownEndpointType has a new value PartnerDestination + - Enum KnownPrivateEndpointConnectionsParentType has a new value Namespaces + + ## 14.1.0 (2023-01-10) **Features** diff --git a/sdk/eventgrid/arm-eventgrid/README.md b/sdk/eventgrid/arm-eventgrid/README.md index b0f9205f12ed..7000f260cf36 100644 --- a/sdk/eventgrid/arm-eventgrid/README.md +++ b/sdk/eventgrid/arm-eventgrid/README.md @@ -6,7 +6,7 @@ Azure EventGrid Management Client [Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/arm-eventgrid) | [Package (NPM)](https://www.npmjs.com/package/@azure/arm-eventgrid) | -[API reference documentation](https://docs.microsoft.com/javascript/api/@azure/arm-eventgrid) | +[API reference documentation](https://docs.microsoft.com/javascript/api/@azure/arm-eventgrid?view=azure-node-preview) | [Samples](https://github.com/Azure-Samples/azure-samples-js-management) ## Getting started diff --git a/sdk/eventgrid/arm-eventgrid/_meta.json b/sdk/eventgrid/arm-eventgrid/_meta.json index 375984882970..c7761ba5de95 100644 --- a/sdk/eventgrid/arm-eventgrid/_meta.json +++ b/sdk/eventgrid/arm-eventgrid/_meta.json @@ -1,8 +1,8 @@ { - "commit": "cc8796418bed73e7e3755d8a6a2d84abcb3ec7f4", - "readme": "specification\\eventgrid\\resource-manager\\readme.md", - "autorest_command": "autorest --version=3.9.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=F:\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\eventgrid\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-rc.6.20221226.1 --generate-sample=true", + "commit": "8163fa6dbbf887d00413dba28f17cfc6e5fab167", + "readme": "specification/eventgrid/resource-manager/readme.md", + "autorest_command": "autorest --version=3.9.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/eventgrid/resource-manager/readme.md --use=@autorest/typescript@6.0.0-rc.10", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.5.4", - "use": "@autorest/typescript@6.0.0-rc.6.20221226.1" + "release_tool": "@azure-tools/js-sdk-release-tools@2.7.0", + "use": "@autorest/typescript@6.0.0-rc.10" } \ No newline at end of file diff --git a/sdk/eventgrid/arm-eventgrid/package.json b/sdk/eventgrid/arm-eventgrid/package.json index 54b6f0625187..fbd7f09303ed 100644 --- a/sdk/eventgrid/arm-eventgrid/package.json +++ b/sdk/eventgrid/arm-eventgrid/package.json @@ -3,15 +3,15 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for EventGridManagementClient.", - "version": "14.1.1", + "version": "14.2.0-beta.1", "engines": { "node": ">=14.0.0" }, "dependencies": { - "@azure/core-lro": "^2.2.0", + "@azure/core-lro": "^2.5.0", "@azure/abort-controller": "^1.0.0", "@azure/core-paging": "^1.2.0", - "@azure/core-client": "^1.6.1", + "@azure/core-client": "^1.7.0", "@azure/core-auth": "^1.3.0", "@azure/core-rest-pipeline": "^1.8.0", "tslib": "^2.2.0" @@ -33,10 +33,10 @@ "@rollup/plugin-json": "^6.0.0", "@rollup/plugin-multi-entry": "^6.0.0", "@rollup/plugin-node-resolve": "^13.1.3", - "mkdirp": "^1.0.4", + "mkdirp": "^2.1.2", "rollup": "^2.66.1", "rollup-plugin-sourcemaps": "^0.6.3", - "typescript": "~5.0.0", + "typescript": "~4.8.0", "uglify-js": "^3.4.9", "rimraf": "^3.0.0", "dotenv": "^16.0.0", @@ -111,13 +111,5 @@ ] }, "autoPublish": true, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/arm-eventgrid", - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-eventgrid?view=azure-node-preview" - } -} + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/eventgrid/arm-eventgrid" +} \ No newline at end of file diff --git a/sdk/eventgrid/arm-eventgrid/review/arm-eventgrid.api.md b/sdk/eventgrid/arm-eventgrid/review/arm-eventgrid.api.md index b31374601cd4..5c5b9b885f28 100644 --- a/sdk/eventgrid/arm-eventgrid/review/arm-eventgrid.api.md +++ b/sdk/eventgrid/arm-eventgrid/review/arm-eventgrid.api.md @@ -6,9 +6,9 @@ import * as coreAuth from '@azure/core-auth'; import * as coreClient from '@azure/core-client'; +import { OperationState } from '@azure/core-lro'; import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { PollerLike } from '@azure/core-lro'; -import { PollOperationState } from '@azure/core-lro'; +import { SimplePollerLike } from '@azure/core-lro'; // @public export interface AdvancedFilter { @@ -22,6 +22,16 @@ export type AdvancedFilterOperatorType = string; // @public (undocumented) export type AdvancedFilterUnion = AdvancedFilter | NumberInAdvancedFilter | NumberNotInAdvancedFilter | NumberLessThanAdvancedFilter | NumberGreaterThanAdvancedFilter | NumberLessThanOrEqualsAdvancedFilter | NumberGreaterThanOrEqualsAdvancedFilter | BoolEqualsAdvancedFilter | StringInAdvancedFilter | StringNotInAdvancedFilter | StringBeginsWithAdvancedFilter | StringEndsWithAdvancedFilter | StringContainsAdvancedFilter | NumberInRangeAdvancedFilter | NumberNotInRangeAdvancedFilter | StringNotBeginsWithAdvancedFilter | StringNotEndsWithAdvancedFilter | StringNotContainsAdvancedFilter | IsNullOrUndefinedAdvancedFilter | IsNotNullAdvancedFilter; +// @public +export type AlternativeAuthenticationNameSource = string; + +// @public +export interface AzureADPartnerClientAuthentication extends PartnerClientAuthentication { + azureActiveDirectoryApplicationIdOrUri?: string; + azureActiveDirectoryTenantId?: string; + clientAuthenticationType: "AzureAD"; +} + // @public export interface AzureFunctionEventSubscriptionDestination extends EventSubscriptionDestination { deliveryAttributeMappings?: DeliveryAttributeMappingUnion[]; @@ -37,11 +47,91 @@ export interface BoolEqualsAdvancedFilter extends AdvancedFilter { value?: boolean; } +// @public +export interface BoolEqualsFilter extends Filter { + operatorType: "BoolEquals"; + value?: boolean; +} + +// @public +export interface CaCertificate extends Resource { + description?: string; + encodedCertificate?: string; + readonly expiryTimeInUtc?: Date; + readonly issueTimeInUtc?: Date; + readonly provisioningState?: CaCertificateProvisioningState; + readonly systemData?: SystemData; +} + +// @public +export type CaCertificateProvisioningState = string; + +// @public +export interface CaCertificates { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, caCertificateName: string, caCertificateInfo: CaCertificate, options?: CaCertificatesCreateOrUpdateOptionalParams): Promise, CaCertificatesCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, caCertificateName: string, caCertificateInfo: CaCertificate, options?: CaCertificatesCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, caCertificateName: string, options?: CaCertificatesDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, caCertificateName: string, options?: CaCertificatesDeleteOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, caCertificateName: string, options?: CaCertificatesGetOptionalParams): Promise; + listByNamespace(resourceGroupName: string, namespaceName: string, options?: CaCertificatesListByNamespaceOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface CaCertificatesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type CaCertificatesCreateOrUpdateResponse = CaCertificate; + +// @public +export interface CaCertificatesDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface CaCertificatesDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface CaCertificatesGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type CaCertificatesGetResponse = CaCertificate; + +// @public +export interface CaCertificatesListByNamespaceNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type CaCertificatesListByNamespaceNextResponse = CaCertificatesListResult; + +// @public +export interface CaCertificatesListByNamespaceOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type CaCertificatesListByNamespaceResponse = CaCertificatesListResult; + +// @public +export interface CaCertificatesListResult { + nextLink?: string; + value?: CaCertificate[]; +} + // @public export interface Channel extends Resource { channelType?: ChannelType; expirationTimeIfNotActivatedUtc?: Date; messageForActivation?: string; + partnerDestinationInfo?: PartnerDestinationInfoUnion; partnerTopicInfo?: PartnerTopicInfo; provisioningState?: ChannelProvisioningState; readinessState?: ReadinessState; @@ -53,7 +143,7 @@ export type ChannelProvisioningState = string; // @public export interface Channels { - beginDelete(resourceGroupName: string, partnerNamespaceName: string, channelName: string, options?: ChannelsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, partnerNamespaceName: string, channelName: string, options?: ChannelsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, partnerNamespaceName: string, channelName: string, options?: ChannelsDeleteOptionalParams): Promise; createOrUpdate(resourceGroupName: string, partnerNamespaceName: string, channelName: string, channelInfo: Channel, options?: ChannelsCreateOrUpdateOptionalParams): Promise; get(resourceGroupName: string, partnerNamespaceName: string, channelName: string, options?: ChannelsGetOptionalParams): Promise; @@ -69,6 +159,12 @@ export interface ChannelsCreateOrUpdateOptionalParams extends coreClient.Operati // @public export type ChannelsCreateOrUpdateResponse = Channel; +// @public +export interface ChannelsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface ChannelsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -121,9 +217,195 @@ export type ChannelType = string; // @public export interface ChannelUpdateParameters { expirationTimeIfNotActivatedUtc?: Date; + partnerDestinationInfo?: PartnerUpdateDestinationInfoUnion; partnerTopicInfo?: PartnerUpdateTopicInfo; } +// @public +export interface Client extends Resource { + attributes?: { + [propertyName: string]: any; + }; + authentication?: ClientAuthentication; + authenticationName?: string; + clientCertificateAuthentication?: ClientCertificateAuthentication; + description?: string; + readonly provisioningState?: ClientProvisioningState; + state?: ClientState; + readonly systemData?: SystemData; +} + +// @public +export interface ClientAuthentication { + certificateSubject?: ClientCertificateSubjectDistinguishedName; + certificateThumbprint?: ClientCertificateThumbprint; +} + +// @public +export interface ClientAuthenticationSettings { + alternativeAuthenticationNameSources?: AlternativeAuthenticationNameSource[]; +} + +// @public +export interface ClientCertificateAuthentication { + allowedThumbprints?: string[]; + validationScheme?: ClientCertificateValidationScheme; +} + +// @public +export interface ClientCertificateSubjectDistinguishedName { + commonName?: string; + countryCode?: string; + organization?: string; + organizationUnit?: string; +} + +// @public +export interface ClientCertificateThumbprint { + primary?: string; + secondary?: string; +} + +// @public +export type ClientCertificateValidationScheme = string; + +// @public +export interface ClientGroup extends Resource { + description?: string; + readonly provisioningState?: ClientGroupProvisioningState; + query?: string; + readonly systemData?: SystemData; +} + +// @public +export type ClientGroupProvisioningState = string; + +// @public +export interface ClientGroups { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, clientGroupName: string, clientGroupInfo: ClientGroup, options?: ClientGroupsCreateOrUpdateOptionalParams): Promise, ClientGroupsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, clientGroupName: string, clientGroupInfo: ClientGroup, options?: ClientGroupsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, clientGroupName: string, options?: ClientGroupsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, clientGroupName: string, options?: ClientGroupsDeleteOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, clientGroupName: string, options?: ClientGroupsGetOptionalParams): Promise; + listByNamespace(resourceGroupName: string, namespaceName: string, options?: ClientGroupsListByNamespaceOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ClientGroupsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ClientGroupsCreateOrUpdateResponse = ClientGroup; + +// @public +export interface ClientGroupsDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface ClientGroupsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ClientGroupsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClientGroupsGetResponse = ClientGroup; + +// @public +export interface ClientGroupsListByNamespaceNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClientGroupsListByNamespaceNextResponse = ClientGroupsListResult; + +// @public +export interface ClientGroupsListByNamespaceOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type ClientGroupsListByNamespaceResponse = ClientGroupsListResult; + +// @public +export interface ClientGroupsListResult { + nextLink?: string; + value?: ClientGroup[]; +} + +// @public +export type ClientProvisioningState = string; + +// @public +export interface Clients { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, clientName: string, clientInfo: Client, options?: ClientsCreateOrUpdateOptionalParams): Promise, ClientsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, clientName: string, clientInfo: Client, options?: ClientsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, clientName: string, options?: ClientsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, clientName: string, options?: ClientsDeleteOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, clientName: string, options?: ClientsGetOptionalParams): Promise; + listByNamespace(resourceGroupName: string, namespaceName: string, options?: ClientsListByNamespaceOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface ClientsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type ClientsCreateOrUpdateResponse = Client; + +// @public +export interface ClientsDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface ClientsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface ClientsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClientsGetResponse = Client; + +// @public +export interface ClientsListByNamespaceNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type ClientsListByNamespaceNextResponse = ClientsListResult; + +// @public +export interface ClientsListByNamespaceOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type ClientsListByNamespaceResponse = ClientsListResult; + +// @public +export interface ClientsListResult { + nextLink?: string; + value?: Client[]; +} + +// @public +export type ClientState = string; + // @public export interface ConnectionState { actionsRequired?: string; @@ -171,6 +453,18 @@ export type DeliveryAttributeMappingType = string; // @public (undocumented) export type DeliveryAttributeMappingUnion = DeliveryAttributeMapping | StaticDeliveryAttributeMapping | DynamicDeliveryAttributeMapping; +// @public +export interface DeliveryConfiguration { + deliveryMode?: DeliveryMode; + queue?: QueueInfo; +} + +// @public +export type DeliveryMode = string; + +// @public +export type DeliverySchema = string; + // @public export interface DeliveryWithResourceIdentity { destination?: EventSubscriptionDestinationUnion; @@ -184,24 +478,27 @@ export interface Domain extends TrackedResource { dataResidencyBoundary?: DataResidencyBoundary; disableLocalAuth?: boolean; readonly endpoint?: string; + eventTypeInfo?: EventTypeInfo; identity?: IdentityInfo; inboundIpRules?: InboundIpRule[]; inputSchema?: InputSchema; inputSchemaMapping?: InputSchemaMappingUnion; readonly metricResourceId?: string; + minimumTlsVersionAllowed?: TlsVersion; readonly privateEndpointConnections?: PrivateEndpointConnection[]; readonly provisioningState?: DomainProvisioningState; publicNetworkAccess?: PublicNetworkAccess; + sku?: ResourceSku; readonly systemData?: SystemData; } // @public export interface DomainEventSubscriptions { - beginCreateOrUpdate(resourceGroupName: string, domainName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: DomainEventSubscriptionsCreateOrUpdateOptionalParams): Promise, DomainEventSubscriptionsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, domainName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: DomainEventSubscriptionsCreateOrUpdateOptionalParams): Promise, DomainEventSubscriptionsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, domainName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: DomainEventSubscriptionsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, domainName: string, eventSubscriptionName: string, options?: DomainEventSubscriptionsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, domainName: string, eventSubscriptionName: string, options?: DomainEventSubscriptionsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, domainName: string, eventSubscriptionName: string, options?: DomainEventSubscriptionsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, domainName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainEventSubscriptionsUpdateOptionalParams): Promise, DomainEventSubscriptionsUpdateResponse>>; + beginUpdate(resourceGroupName: string, domainName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainEventSubscriptionsUpdateOptionalParams): Promise, DomainEventSubscriptionsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, domainName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainEventSubscriptionsUpdateOptionalParams): Promise; get(resourceGroupName: string, domainName: string, eventSubscriptionName: string, options?: DomainEventSubscriptionsGetOptionalParams): Promise; getDeliveryAttributes(resourceGroupName: string, domainName: string, eventSubscriptionName: string, options?: DomainEventSubscriptionsGetDeliveryAttributesOptionalParams): Promise; @@ -218,6 +515,12 @@ export interface DomainEventSubscriptionsCreateOrUpdateOptionalParams extends co // @public export type DomainEventSubscriptionsCreateOrUpdateResponse = EventSubscription; +// @public +export interface DomainEventSubscriptionsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface DomainEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -280,11 +583,11 @@ export interface DomainRegenerateKeyRequest { // @public export interface Domains { - beginCreateOrUpdate(resourceGroupName: string, domainName: string, domainInfo: Domain, options?: DomainsCreateOrUpdateOptionalParams): Promise, DomainsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, domainName: string, domainInfo: Domain, options?: DomainsCreateOrUpdateOptionalParams): Promise, DomainsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, domainName: string, domainInfo: Domain, options?: DomainsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, domainName: string, options?: DomainsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, domainName: string, options?: DomainsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, domainName: string, options?: DomainsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, domainName: string, domainUpdateParameters: DomainUpdateParameters, options?: DomainsUpdateOptionalParams): Promise, void>>; + beginUpdate(resourceGroupName: string, domainName: string, domainUpdateParameters: DomainUpdateParameters, options?: DomainsUpdateOptionalParams): Promise, void>>; beginUpdateAndWait(resourceGroupName: string, domainName: string, domainUpdateParameters: DomainUpdateParameters, options?: DomainsUpdateOptionalParams): Promise; get(resourceGroupName: string, domainName: string, options?: DomainsGetOptionalParams): Promise; listByResourceGroup(resourceGroupName: string, options?: DomainsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; @@ -302,6 +605,12 @@ export interface DomainsCreateOrUpdateOptionalParams extends coreClient.Operatio // @public export type DomainsCreateOrUpdateResponse = Domain; +// @public +export interface DomainsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface DomainsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -387,11 +696,11 @@ export interface DomainTopic extends Resource { // @public export interface DomainTopicEventSubscriptions { - beginCreateOrUpdate(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, DomainTopicEventSubscriptionsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, DomainTopicEventSubscriptionsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainTopicEventSubscriptionsUpdateOptionalParams): Promise, DomainTopicEventSubscriptionsUpdateResponse>>; + beginUpdate(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainTopicEventSubscriptionsUpdateOptionalParams): Promise, DomainTopicEventSubscriptionsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainTopicEventSubscriptionsUpdateOptionalParams): Promise; get(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsGetOptionalParams): Promise; getDeliveryAttributes(resourceGroupName: string, domainName: string, topicName: string, eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams): Promise; @@ -408,6 +717,12 @@ export interface DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams exten // @public export type DomainTopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; +// @public +export interface DomainTopicEventSubscriptionsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface DomainTopicEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -465,9 +780,9 @@ export type DomainTopicProvisioningState = string; // @public export interface DomainTopics { - beginCreateOrUpdate(resourceGroupName: string, domainName: string, domainTopicName: string, options?: DomainTopicsCreateOrUpdateOptionalParams): Promise, DomainTopicsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, domainName: string, domainTopicName: string, options?: DomainTopicsCreateOrUpdateOptionalParams): Promise, DomainTopicsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, domainName: string, domainTopicName: string, options?: DomainTopicsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, domainName: string, domainTopicName: string, options?: DomainTopicsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, domainName: string, domainTopicName: string, options?: DomainTopicsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, domainName: string, domainTopicName: string, options?: DomainTopicsDeleteOptionalParams): Promise; get(resourceGroupName: string, domainName: string, domainTopicName: string, options?: DomainTopicsGetOptionalParams): Promise; listByDomain(resourceGroupName: string, domainName: string, options?: DomainTopicsListByDomainOptionalParams): PagedAsyncIterableIterator; @@ -482,6 +797,12 @@ export interface DomainTopicsCreateOrUpdateOptionalParams extends coreClient.Ope // @public export type DomainTopicsCreateOrUpdateResponse = DomainTopic; +// @public +export interface DomainTopicsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface DomainTopicsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -523,9 +844,12 @@ export interface DomainUpdateParameters { autoDeleteTopicWithLastSubscription?: boolean; dataResidencyBoundary?: DataResidencyBoundary; disableLocalAuth?: boolean; + eventTypeInfo?: EventTypeInfo; identity?: IdentityInfo; inboundIpRules?: InboundIpRule[]; + minimumTlsVersionAllowed?: TlsVersion; publicNetworkAccess?: PublicNetworkAccess; + sku?: ResourceSku; tags?: { [propertyName: string]: string; }; @@ -537,9 +861,35 @@ export interface DynamicDeliveryAttributeMapping extends DeliveryAttributeMappin type: "Dynamic"; } +// @public (undocumented) +export interface DynamicRoutingEnrichment { + key?: string; + value?: string; +} + // @public export type EndpointType = string; +// @public +export interface ErrorAdditionalInfo { + readonly info?: Record; + readonly type?: string; +} + +// @public +export interface ErrorDetail { + readonly additionalInfo?: ErrorAdditionalInfo[]; + readonly code?: string; + readonly details?: ErrorDetail[]; + readonly message?: string; + readonly target?: string; +} + +// @public +export interface ErrorResponse { + error?: ErrorDetail; +} + // @public export type EventDefinitionKind = string; @@ -554,8 +904,14 @@ export class EventGridManagementClient extends coreClient.ServiceClient { // (undocumented) apiVersion: string; // (undocumented) + caCertificates: CaCertificates; + // (undocumented) channels: Channels; // (undocumented) + clientGroups: ClientGroups; + // (undocumented) + clients: Clients; + // (undocumented) domainEventSubscriptions: DomainEventSubscriptions; // (undocumented) domains: Domains; @@ -568,10 +924,18 @@ export class EventGridManagementClient extends coreClient.ServiceClient { // (undocumented) extensionTopics: ExtensionTopics; // (undocumented) + namespaces: Namespaces; + // (undocumented) + namespaceTopicEventSubscriptions: NamespaceTopicEventSubscriptions; + // (undocumented) + namespaceTopics: NamespaceTopics; + // (undocumented) operations: Operations; // (undocumented) partnerConfigurations: PartnerConfigurations; // (undocumented) + partnerDestinations: PartnerDestinations; + // (undocumented) partnerNamespaces: PartnerNamespaces; // (undocumented) partnerRegistrations: PartnerRegistrations; @@ -580,6 +944,8 @@ export class EventGridManagementClient extends coreClient.ServiceClient { // (undocumented) partnerTopics: PartnerTopics; // (undocumented) + permissionBindings: PermissionBindings; + // (undocumented) privateEndpointConnections: PrivateEndpointConnections; // (undocumented) privateLinkResources: PrivateLinkResources; @@ -594,6 +960,8 @@ export class EventGridManagementClient extends coreClient.ServiceClient { // (undocumented) topics: Topics; // (undocumented) + topicSpaces: TopicSpaces; + // (undocumented) topicTypes: TopicTypes; // (undocumented) verifiedPartners: VerifiedPartners; @@ -613,6 +981,9 @@ export interface EventHubEventSubscriptionDestination extends EventSubscriptionD resourceId?: string; } +// @public +export type EventInputSchema = string; + // @public export interface EventSubscription extends Resource { deadLetterDestination?: DeadLetterDestinationUnion; @@ -631,11 +1002,11 @@ export interface EventSubscription extends Resource { // @public export interface EventSubscriptionDestination { - endpointType: "WebHook" | "EventHub" | "StorageQueue" | "HybridConnection" | "ServiceBusQueue" | "ServiceBusTopic" | "AzureFunction"; + endpointType: "WebHook" | "EventHub" | "StorageQueue" | "HybridConnection" | "ServiceBusQueue" | "ServiceBusTopic" | "AzureFunction" | "PartnerDestination"; } // @public (undocumented) -export type EventSubscriptionDestinationUnion = EventSubscriptionDestination | WebHookEventSubscriptionDestination | EventHubEventSubscriptionDestination | StorageQueueEventSubscriptionDestination | HybridConnectionEventSubscriptionDestination | ServiceBusQueueEventSubscriptionDestination | ServiceBusTopicEventSubscriptionDestination | AzureFunctionEventSubscriptionDestination; +export type EventSubscriptionDestinationUnion = EventSubscriptionDestination | WebHookEventSubscriptionDestination | EventHubEventSubscriptionDestination | StorageQueueEventSubscriptionDestination | HybridConnectionEventSubscriptionDestination | ServiceBusQueueEventSubscriptionDestination | ServiceBusTopicEventSubscriptionDestination | AzureFunctionEventSubscriptionDestination | PartnerEventSubscriptionDestination; // @public export interface EventSubscriptionFilter { @@ -666,11 +1037,11 @@ export type EventSubscriptionProvisioningState = string; // @public export interface EventSubscriptions { - beginCreateOrUpdate(scope: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: EventSubscriptionsCreateOrUpdateOptionalParams): Promise, EventSubscriptionsCreateOrUpdateResponse>>; + beginCreateOrUpdate(scope: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: EventSubscriptionsCreateOrUpdateOptionalParams): Promise, EventSubscriptionsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(scope: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: EventSubscriptionsCreateOrUpdateOptionalParams): Promise; - beginDelete(scope: string, eventSubscriptionName: string, options?: EventSubscriptionsDeleteOptionalParams): Promise, void>>; + beginDelete(scope: string, eventSubscriptionName: string, options?: EventSubscriptionsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(scope: string, eventSubscriptionName: string, options?: EventSubscriptionsDeleteOptionalParams): Promise; - beginUpdate(scope: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: EventSubscriptionsUpdateOptionalParams): Promise, EventSubscriptionsUpdateResponse>>; + beginUpdate(scope: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: EventSubscriptionsUpdateOptionalParams): Promise, EventSubscriptionsUpdateResponse>>; beginUpdateAndWait(scope: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: EventSubscriptionsUpdateOptionalParams): Promise; get(scope: string, eventSubscriptionName: string, options?: EventSubscriptionsGetOptionalParams): Promise; getDeliveryAttributes(scope: string, eventSubscriptionName: string, options?: EventSubscriptionsGetDeliveryAttributesOptionalParams): Promise; @@ -696,6 +1067,12 @@ export interface EventSubscriptionsCreateOrUpdateOptionalParams extends coreClie // @public export type EventSubscriptionsCreateOrUpdateResponse = EventSubscription; +// @public +export interface EventSubscriptionsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface EventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -932,6 +1309,12 @@ export interface EventTypesListResult { value?: EventType[]; } +// @public +export interface ExtendedLocation { + name?: string; + type?: string; +} + // @public export interface ExtensionTopic extends Resource { description?: string; @@ -952,17 +1335,35 @@ export interface ExtensionTopicsGetOptionalParams extends coreClient.OperationOp export type ExtensionTopicsGetResponse = ExtensionTopic; // @public -export function getContinuationToken(page: unknown): string | undefined; +export interface Filter { + key?: string; + operatorType: "NumberIn" | "NumberNotIn" | "NumberLessThan" | "NumberGreaterThan" | "NumberLessThanOrEquals" | "NumberGreaterThanOrEquals" | "BoolEquals" | "StringIn" | "StringNotIn" | "StringBeginsWith" | "StringEndsWith" | "StringContains" | "NumberInRange" | "NumberNotInRange" | "StringNotBeginsWith" | "StringNotEndsWith" | "StringNotContains" | "IsNullOrUndefined" | "IsNotNull"; +} // @public -export interface HybridConnectionEventSubscriptionDestination extends EventSubscriptionDestination { - deliveryAttributeMappings?: DeliveryAttributeMappingUnion[]; - endpointType: "HybridConnection"; - resourceId?: string; -} +export type FilterOperatorType = string; // @public -export interface IdentityInfo { +export interface FiltersConfiguration { + filters?: FilterUnion[]; + includedEventTypes?: string[]; +} + +// @public (undocumented) +export type FilterUnion = Filter | NumberInFilter | NumberNotInFilter | NumberLessThanFilter | NumberGreaterThanFilter | NumberLessThanOrEqualsFilter | NumberGreaterThanOrEqualsFilter | BoolEqualsFilter | StringInFilter | StringNotInFilter | StringBeginsWithFilter | StringEndsWithFilter | StringContainsFilter | NumberInRangeFilter | NumberNotInRangeFilter | StringNotBeginsWithFilter | StringNotEndsWithFilter | StringNotContainsFilter | IsNullOrUndefinedFilter | IsNotNullFilter; + +// @public +export function getContinuationToken(page: unknown): string | undefined; + +// @public +export interface HybridConnectionEventSubscriptionDestination extends EventSubscriptionDestination { + deliveryAttributeMappings?: DeliveryAttributeMappingUnion[]; + endpointType: "HybridConnection"; + resourceId?: string; +} + +// @public +export interface IdentityInfo { principalId?: string; tenantId?: string; type?: IdentityType; @@ -1010,11 +1411,21 @@ export interface IsNotNullAdvancedFilter extends AdvancedFilter { operatorType: "IsNotNull"; } +// @public +export interface IsNotNullFilter extends Filter { + operatorType: "IsNotNull"; +} + // @public export interface IsNullOrUndefinedAdvancedFilter extends AdvancedFilter { operatorType: "IsNullOrUndefined"; } +// @public +export interface IsNullOrUndefinedFilter extends Filter { + operatorType: "IsNullOrUndefined"; +} + // @public export interface JsonField { sourceField?: string; @@ -1060,12 +1471,33 @@ export enum KnownAdvancedFilterOperatorType { StringNotIn = "StringNotIn" } +// @public +export enum KnownAlternativeAuthenticationNameSource { + ClientCertificateDns = "ClientCertificateDns", + ClientCertificateEmail = "ClientCertificateEmail", + ClientCertificateIp = "ClientCertificateIp", + ClientCertificateSubject = "ClientCertificateSubject", + ClientCertificateUri = "ClientCertificateUri" +} + +// @public +export enum KnownCaCertificateProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleted = "Deleted", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + // @public export enum KnownChannelProvisioningState { Canceled = "Canceled", Creating = "Creating", Deleting = "Deleting", Failed = "Failed", + IdleDueToMirroredPartnerDestinationDeletion = "IdleDueToMirroredPartnerDestinationDeletion", IdleDueToMirroredPartnerTopicDeletion = "IdleDueToMirroredPartnerTopicDeletion", Succeeded = "Succeeded", Updating = "Updating" @@ -1073,9 +1505,48 @@ export enum KnownChannelProvisioningState { // @public export enum KnownChannelType { + PartnerDestination = "PartnerDestination", PartnerTopic = "PartnerTopic" } +// @public +export enum KnownClientCertificateValidationScheme { + DnsMatchesAuthenticationName = "DnsMatchesAuthenticationName", + EmailMatchesAuthenticationName = "EmailMatchesAuthenticationName", + IpMatchesAuthenticationName = "IpMatchesAuthenticationName", + SubjectMatchesAuthenticationName = "SubjectMatchesAuthenticationName", + ThumbprintMatch = "ThumbprintMatch", + UriMatchesAuthenticationName = "UriMatchesAuthenticationName" +} + +// @public +export enum KnownClientGroupProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleted = "Deleted", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownClientProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleted = "Deleted", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownClientState { + Disabled = "Disabled", + Enabled = "Enabled" +} + // @public export enum KnownCreatedByType { Application = "Application", @@ -1101,6 +1572,16 @@ export enum KnownDeliveryAttributeMappingType { Static = "Static" } +// @public +export enum KnownDeliveryMode { + Queue = "Queue" +} + +// @public +export enum KnownDeliverySchema { + CloudEventSchemaV10 = "CloudEventSchemaV1_0" +} + // @public export enum KnownDomainProvisioningState { Canceled = "Canceled", @@ -1126,6 +1607,7 @@ export enum KnownEndpointType { AzureFunction = "AzureFunction", EventHub = "EventHub", HybridConnection = "HybridConnection", + PartnerDestination = "PartnerDestination", ServiceBusQueue = "ServiceBusQueue", ServiceBusTopic = "ServiceBusTopic", StorageQueue = "StorageQueue", @@ -1144,6 +1626,11 @@ export enum KnownEventDeliverySchema { EventGridSchema = "EventGridSchema" } +// @public +export enum KnownEventInputSchema { + CloudEventSchemaV10 = "CloudEventSchemaV1_0" +} + // @public export enum KnownEventSubscriptionIdentityType { SystemAssigned = "SystemAssigned", @@ -1161,6 +1648,29 @@ export enum KnownEventSubscriptionProvisioningState { Updating = "Updating" } +// @public +export enum KnownFilterOperatorType { + BoolEquals = "BoolEquals", + IsNotNull = "IsNotNull", + IsNullOrUndefined = "IsNullOrUndefined", + NumberGreaterThan = "NumberGreaterThan", + NumberGreaterThanOrEquals = "NumberGreaterThanOrEquals", + NumberIn = "NumberIn", + NumberInRange = "NumberInRange", + NumberLessThan = "NumberLessThan", + NumberLessThanOrEquals = "NumberLessThanOrEquals", + NumberNotIn = "NumberNotIn", + NumberNotInRange = "NumberNotInRange", + StringBeginsWith = "StringBeginsWith", + StringContains = "StringContains", + StringEndsWith = "StringEndsWith", + StringIn = "StringIn", + StringNotBeginsWith = "StringNotBeginsWith", + StringNotContains = "StringNotContains", + StringNotEndsWith = "StringNotEndsWith", + StringNotIn = "StringNotIn" +} + // @public export enum KnownIdentityType { None = "None", @@ -1186,6 +1696,39 @@ export enum KnownIpActionType { Allow = "Allow" } +// @public +export enum KnownNamespaceProvisioningState { + Canceled = "Canceled", + CreateFailed = "CreateFailed", + Creating = "Creating", + Deleted = "Deleted", + DeleteFailed = "DeleteFailed", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + UpdatedFailed = "UpdatedFailed", + Updating = "Updating" +} + +// @public +export enum KnownNamespaceTopicProvisioningState { + Canceled = "Canceled", + CreateFailed = "CreateFailed", + Creating = "Creating", + Deleted = "Deleted", + DeleteFailed = "DeleteFailed", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + UpdatedFailed = "UpdatedFailed", + Updating = "Updating" +} + +// @public +export enum KnownPartnerClientAuthenticationType { + AzureAD = "AzureAD" +} + // @public export enum KnownPartnerConfigurationProvisioningState { Canceled = "Canceled", @@ -1196,6 +1739,28 @@ export enum KnownPartnerConfigurationProvisioningState { Updating = "Updating" } +// @public +export enum KnownPartnerDestinationActivationState { + Activated = "Activated", + NeverActivated = "NeverActivated" +} + +// @public +export enum KnownPartnerDestinationProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + IdleDueToMirroredChannelResourceDeletion = "IdleDueToMirroredChannelResourceDeletion", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownPartnerEndpointType { + WebHook = "WebHook" +} + // @public export enum KnownPartnerNamespaceProvisioningState { Canceled = "Canceled", @@ -1235,90 +1800,538 @@ export enum KnownPartnerTopicProvisioningState { } // @public -export enum KnownPartnerTopicRoutingMode { - ChannelNameHeader = "ChannelNameHeader", - SourceEventAttribute = "SourceEventAttribute" -} +export enum KnownPartnerTopicRoutingMode { + ChannelNameHeader = "ChannelNameHeader", + SourceEventAttribute = "SourceEventAttribute" +} + +// @public +export enum KnownPermissionBindingProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleted = "Deleted", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownPermissionType { + Publisher = "Publisher", + Subscriber = "Subscriber" +} + +// @public +export enum KnownPersistedConnectionStatus { + Approved = "Approved", + Disconnected = "Disconnected", + Pending = "Pending", + Rejected = "Rejected" +} + +// @public +export enum KnownPrivateEndpointConnectionsParentType { + Domains = "domains", + Namespaces = "namespaces", + PartnerNamespaces = "partnerNamespaces", + Topics = "topics" +} + +// @public +export enum KnownPublicNetworkAccess { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownPublisherType { + Custom = "Custom" +} + +// @public +export enum KnownReadinessState { + Activated = "Activated", + NeverActivated = "NeverActivated" +} + +// @public +export enum KnownResourceKind { + Azure = "Azure", + AzureArc = "AzureArc" +} + +// @public +export enum KnownResourceProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownResourceRegionType { + GlobalResource = "GlobalResource", + RegionalResource = "RegionalResource" +} + +// @public +export enum KnownRoutingIdentityType { + None = "None", + SystemAssigned = "SystemAssigned", + UserAssigned = "UserAssigned" +} + +// @public +export enum KnownSku { + Basic = "Basic", + Premium = "Premium" +} + +// @public +export enum KnownSkuName { + Standard = "Standard" +} + +// @public +export enum KnownStaticRoutingEnrichmentType { + String = "String" +} + +// @public +export enum KnownSubscriptionProvisioningState { + AwaitingManualAction = "AwaitingManualAction", + Canceled = "Canceled", + CreateFailed = "CreateFailed", + Creating = "Creating", + Deleted = "Deleted", + DeleteFailed = "DeleteFailed", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + UpdatedFailed = "UpdatedFailed", + Updating = "Updating" +} + +// @public +export enum KnownTlsVersion { + One0 = "1.0", + One1 = "1.1", + One2 = "1.2" +} + +// @public +export enum KnownTopicProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownTopicSpaceProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleted = "Deleted", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownTopicSpacesConfigurationState { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownTopicTypeProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownTopicTypeSourceScope { + AzureSubscription = "AzureSubscription", + ManagementGroup = "ManagementGroup", + Resource = "Resource", + ResourceGroup = "ResourceGroup" +} + +// @public +export enum KnownVerifiedPartnerProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export interface Namespace extends TrackedResource { + identity?: IdentityInfo; + inboundIpRules?: InboundIpRule[]; + isZoneRedundant?: boolean; + minimumTlsVersionAllowed?: TlsVersion; + // (undocumented) + privateEndpointConnections?: PrivateEndpointConnection[]; + readonly provisioningState?: NamespaceProvisioningState; + publicNetworkAccess?: PublicNetworkAccess; + sku?: NamespaceSku; + readonly systemData?: SystemData; + topicsConfiguration?: TopicsConfiguration; + topicSpacesConfiguration?: TopicSpacesConfiguration; +} + +// @public +export type NamespaceProvisioningState = string; + +// @public +export interface NamespaceRegenerateKeyRequest { + keyName: string; +} + +// @public +export interface Namespaces { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, namespaceInfo: Namespace, options?: NamespacesCreateOrUpdateOptionalParams): Promise, NamespacesCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, namespaceInfo: Namespace, options?: NamespacesCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, options?: NamespacesDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, options?: NamespacesDeleteOptionalParams): Promise; + beginRegenerateKey(resourceGroupName: string, namespaceName: string, regenerateKeyRequest: NamespaceRegenerateKeyRequest, options?: NamespacesRegenerateKeyOptionalParams): Promise, NamespacesRegenerateKeyResponse>>; + beginRegenerateKeyAndWait(resourceGroupName: string, namespaceName: string, regenerateKeyRequest: NamespaceRegenerateKeyRequest, options?: NamespacesRegenerateKeyOptionalParams): Promise; + beginUpdate(resourceGroupName: string, namespaceName: string, namespaceUpdateParameters: NamespaceUpdateParameters, options?: NamespacesUpdateOptionalParams): Promise, NamespacesUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, namespaceName: string, namespaceUpdateParameters: NamespaceUpdateParameters, options?: NamespacesUpdateOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, options?: NamespacesGetOptionalParams): Promise; + listByResourceGroup(resourceGroupName: string, options?: NamespacesListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listBySubscription(options?: NamespacesListBySubscriptionOptionalParams): PagedAsyncIterableIterator; + listSharedAccessKeys(resourceGroupName: string, namespaceName: string, options?: NamespacesListSharedAccessKeysOptionalParams): Promise; +} + +// @public +export interface NamespacesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type NamespacesCreateOrUpdateResponse = Namespace; + +// @public +export interface NamespacesDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface NamespacesDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface NamespacesGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespacesGetResponse = Namespace; + +// @public +export interface NamespaceSharedAccessKeys { + key1?: string; + key2?: string; +} + +// @public +export interface NamespaceSku { + capacity?: number; + name?: SkuName; +} + +// @public +export interface NamespacesListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespacesListByResourceGroupNextResponse = NamespacesListResult; + +// @public +export interface NamespacesListByResourceGroupOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type NamespacesListByResourceGroupResponse = NamespacesListResult; + +// @public +export interface NamespacesListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespacesListBySubscriptionNextResponse = NamespacesListResult; + +// @public +export interface NamespacesListBySubscriptionOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type NamespacesListBySubscriptionResponse = NamespacesListResult; + +// @public +export interface NamespacesListResult { + nextLink?: string; + value?: Namespace[]; +} + +// @public +export interface NamespacesListSharedAccessKeysOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespacesListSharedAccessKeysResponse = NamespaceSharedAccessKeys; + +// @public +export interface NamespacesRegenerateKeyHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface NamespacesRegenerateKeyOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type NamespacesRegenerateKeyResponse = NamespaceSharedAccessKeys; + +// @public +export interface NamespacesUpdateHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface NamespacesUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type NamespacesUpdateResponse = Namespace; + +// @public +export interface NamespaceTopic extends Resource { + eventRetentionInDays?: number; + inputSchema?: EventInputSchema; + readonly provisioningState?: NamespaceTopicProvisioningState; + publisherType?: PublisherType; + readonly systemData?: SystemData; +} + +// @public +export interface NamespaceTopicEventSubscriptions { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: Subscription, options?: NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, NamespaceTopicEventSubscriptionsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: Subscription, options?: NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, topicName: string, eventSubscriptionName: string, options?: NamespaceTopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, topicName: string, eventSubscriptionName: string, options?: NamespaceTopicEventSubscriptionsDeleteOptionalParams): Promise; + beginUpdate(resourceGroupName: string, namespaceName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: SubscriptionUpdateParameters, options?: NamespaceTopicEventSubscriptionsUpdateOptionalParams): Promise, NamespaceTopicEventSubscriptionsUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, namespaceName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: SubscriptionUpdateParameters, options?: NamespaceTopicEventSubscriptionsUpdateOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, topicName: string, eventSubscriptionName: string, options?: NamespaceTopicEventSubscriptionsGetOptionalParams): Promise; + listByNamespaceTopic(resourceGroupName: string, namespaceName: string, topicName: string, options?: NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type NamespaceTopicEventSubscriptionsCreateOrUpdateResponse = Subscription; + +// @public +export interface NamespaceTopicEventSubscriptionsDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface NamespaceTopicEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface NamespaceTopicEventSubscriptionsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespaceTopicEventSubscriptionsGetResponse = Subscription; + +// @public +export interface NamespaceTopicEventSubscriptionsListByNamespaceTopicNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespaceTopicEventSubscriptionsListByNamespaceTopicNextResponse = SubscriptionsListResult; + +// @public +export interface NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type NamespaceTopicEventSubscriptionsListByNamespaceTopicResponse = SubscriptionsListResult; + +// @public +export interface NamespaceTopicEventSubscriptionsUpdateHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface NamespaceTopicEventSubscriptionsUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type NamespaceTopicEventSubscriptionsUpdateResponse = Subscription; + +// @public +export type NamespaceTopicProvisioningState = string; + +// @public +export interface NamespaceTopics { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, topicName: string, namespaceTopicInfo: NamespaceTopic, options?: NamespaceTopicsCreateOrUpdateOptionalParams): Promise, NamespaceTopicsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, topicName: string, namespaceTopicInfo: NamespaceTopic, options?: NamespaceTopicsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, topicName: string, options?: NamespaceTopicsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, topicName: string, options?: NamespaceTopicsDeleteOptionalParams): Promise; + beginRegenerateKey(resourceGroupName: string, namespaceName: string, topicName: string, regenerateKeyRequest: TopicRegenerateKeyRequest, options?: NamespaceTopicsRegenerateKeyOptionalParams): Promise, NamespaceTopicsRegenerateKeyResponse>>; + beginRegenerateKeyAndWait(resourceGroupName: string, namespaceName: string, topicName: string, regenerateKeyRequest: TopicRegenerateKeyRequest, options?: NamespaceTopicsRegenerateKeyOptionalParams): Promise; + beginUpdate(resourceGroupName: string, namespaceName: string, topicName: string, namespaceTopicUpdateParameters: NamespaceTopicUpdateParameters, options?: NamespaceTopicsUpdateOptionalParams): Promise, NamespaceTopicsUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, namespaceName: string, topicName: string, namespaceTopicUpdateParameters: NamespaceTopicUpdateParameters, options?: NamespaceTopicsUpdateOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, topicName: string, options?: NamespaceTopicsGetOptionalParams): Promise; + listByNamespace(resourceGroupName: string, namespaceName: string, options?: NamespaceTopicsListByNamespaceOptionalParams): PagedAsyncIterableIterator; + listSharedAccessKeys(resourceGroupName: string, namespaceName: string, topicName: string, options?: NamespaceTopicsListSharedAccessKeysOptionalParams): Promise; +} + +// @public +export interface NamespaceTopicsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type NamespaceTopicsCreateOrUpdateResponse = NamespaceTopic; + +// @public +export interface NamespaceTopicsDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface NamespaceTopicsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface NamespaceTopicsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespaceTopicsGetResponse = NamespaceTopic; + +// @public +export interface NamespaceTopicsListByNamespaceNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type NamespaceTopicsListByNamespaceNextResponse = NamespaceTopicsListResult; // @public -export enum KnownPersistedConnectionStatus { - Approved = "Approved", - Disconnected = "Disconnected", - Pending = "Pending", - Rejected = "Rejected" +export interface NamespaceTopicsListByNamespaceOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; } // @public -export enum KnownPrivateEndpointConnectionsParentType { - Domains = "domains", - PartnerNamespaces = "partnerNamespaces", - Topics = "topics" -} +export type NamespaceTopicsListByNamespaceResponse = NamespaceTopicsListResult; // @public -export enum KnownPublicNetworkAccess { - Disabled = "Disabled", - Enabled = "Enabled" +export interface NamespaceTopicsListResult { + nextLink?: string; + value?: NamespaceTopic[]; } // @public -export enum KnownReadinessState { - Activated = "Activated", - NeverActivated = "NeverActivated" +export interface NamespaceTopicsListSharedAccessKeysOptionalParams extends coreClient.OperationOptions { } // @public -export enum KnownResourceProvisioningState { - Canceled = "Canceled", - Creating = "Creating", - Deleting = "Deleting", - Failed = "Failed", - Succeeded = "Succeeded", - Updating = "Updating" +export type NamespaceTopicsListSharedAccessKeysResponse = TopicSharedAccessKeys; + +// @public +export interface NamespaceTopicsRegenerateKeyHeaders { + // (undocumented) + location?: string; } // @public -export enum KnownResourceRegionType { - GlobalResource = "GlobalResource", - RegionalResource = "RegionalResource" +export interface NamespaceTopicsRegenerateKeyOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; } // @public -export enum KnownTopicProvisioningState { - Canceled = "Canceled", - Creating = "Creating", - Deleting = "Deleting", - Failed = "Failed", - Succeeded = "Succeeded", - Updating = "Updating" +export type NamespaceTopicsRegenerateKeyResponse = TopicSharedAccessKeys; + +// @public +export interface NamespaceTopicsUpdateHeaders { + // (undocumented) + location?: string; } // @public -export enum KnownTopicTypeProvisioningState { - Canceled = "Canceled", - Creating = "Creating", - Deleting = "Deleting", - Failed = "Failed", - Succeeded = "Succeeded", - Updating = "Updating" +export interface NamespaceTopicsUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; } // @public -export enum KnownTopicTypeSourceScope { - AzureSubscription = "AzureSubscription", - ManagementGroup = "ManagementGroup", - Resource = "Resource", - ResourceGroup = "ResourceGroup" +export type NamespaceTopicsUpdateResponse = NamespaceTopic; + +// @public +export interface NamespaceTopicUpdateParameters { + eventRetentionInDays?: number; } // @public -export enum KnownVerifiedPartnerProvisioningState { - Canceled = "Canceled", - Creating = "Creating", - Deleting = "Deleting", - Failed = "Failed", - Succeeded = "Succeeded", - Updating = "Updating" +export interface NamespaceUpdateParameters { + identity?: IdentityInfo; + inboundIpRules?: InboundIpRule[]; + publicNetworkAccess?: PublicNetworkAccess; + sku?: NamespaceSku; + tags?: { + [propertyName: string]: string; + }; + topicSpacesConfiguration?: UpdateTopicSpacesConfigurationInfo; } // @public @@ -1327,48 +2340,96 @@ export interface NumberGreaterThanAdvancedFilter extends AdvancedFilter { value?: number; } +// @public +export interface NumberGreaterThanFilter extends Filter { + operatorType: "NumberGreaterThan"; + value?: number; +} + // @public export interface NumberGreaterThanOrEqualsAdvancedFilter extends AdvancedFilter { operatorType: "NumberGreaterThanOrEquals"; value?: number; } +// @public +export interface NumberGreaterThanOrEqualsFilter extends Filter { + operatorType: "NumberGreaterThanOrEquals"; + value?: number; +} + // @public export interface NumberInAdvancedFilter extends AdvancedFilter { operatorType: "NumberIn"; values?: number[]; } +// @public +export interface NumberInFilter extends Filter { + operatorType: "NumberIn"; + values?: number[]; +} + // @public export interface NumberInRangeAdvancedFilter extends AdvancedFilter { operatorType: "NumberInRange"; values?: number[][]; } +// @public +export interface NumberInRangeFilter extends Filter { + operatorType: "NumberInRange"; + values?: number[][]; +} + // @public export interface NumberLessThanAdvancedFilter extends AdvancedFilter { operatorType: "NumberLessThan"; value?: number; } +// @public +export interface NumberLessThanFilter extends Filter { + operatorType: "NumberLessThan"; + value?: number; +} + // @public export interface NumberLessThanOrEqualsAdvancedFilter extends AdvancedFilter { operatorType: "NumberLessThanOrEquals"; value?: number; } +// @public +export interface NumberLessThanOrEqualsFilter extends Filter { + operatorType: "NumberLessThanOrEquals"; + value?: number; +} + // @public export interface NumberNotInAdvancedFilter extends AdvancedFilter { operatorType: "NumberNotIn"; values?: number[]; } +// @public +export interface NumberNotInFilter extends Filter { + operatorType: "NumberNotIn"; + values?: number[]; +} + // @public export interface NumberNotInRangeAdvancedFilter extends AdvancedFilter { operatorType: "NumberNotInRange"; values?: number[][]; } +// @public +export interface NumberNotInRangeFilter extends Filter { + operatorType: "NumberNotInRange"; + values?: number[][]; +} + // @public export interface Operation { display?: OperationInfo; @@ -1416,6 +2477,17 @@ export interface PartnerAuthorization { defaultMaximumExpirationTimeInDays?: number; } +// @public +export interface PartnerClientAuthentication { + clientAuthenticationType: "AzureAD"; +} + +// @public +export type PartnerClientAuthenticationType = string; + +// @public (undocumented) +export type PartnerClientAuthenticationUnion = PartnerClientAuthentication | AzureADPartnerClientAuthentication; + // @public export interface PartnerConfiguration extends Resource { location?: string; @@ -1433,11 +2505,11 @@ export type PartnerConfigurationProvisioningState = string; // @public export interface PartnerConfigurations { authorizePartner(resourceGroupName: string, partnerInfo: Partner, options?: PartnerConfigurationsAuthorizePartnerOptionalParams): Promise; - beginCreateOrUpdate(resourceGroupName: string, partnerConfigurationInfo: PartnerConfiguration, options?: PartnerConfigurationsCreateOrUpdateOptionalParams): Promise, PartnerConfigurationsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, partnerConfigurationInfo: PartnerConfiguration, options?: PartnerConfigurationsCreateOrUpdateOptionalParams): Promise, PartnerConfigurationsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, partnerConfigurationInfo: PartnerConfiguration, options?: PartnerConfigurationsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, options?: PartnerConfigurationsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, options?: PartnerConfigurationsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, options?: PartnerConfigurationsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, partnerConfigurationUpdateParameters: PartnerConfigurationUpdateParameters, options?: PartnerConfigurationsUpdateOptionalParams): Promise, PartnerConfigurationsUpdateResponse>>; + beginUpdate(resourceGroupName: string, partnerConfigurationUpdateParameters: PartnerConfigurationUpdateParameters, options?: PartnerConfigurationsUpdateOptionalParams): Promise, PartnerConfigurationsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, partnerConfigurationUpdateParameters: PartnerConfigurationUpdateParameters, options?: PartnerConfigurationsUpdateOptionalParams): Promise; get(resourceGroupName: string, options?: PartnerConfigurationsGetOptionalParams): Promise; listByResourceGroup(resourceGroupName: string, options?: PartnerConfigurationsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; @@ -1461,6 +2533,12 @@ export interface PartnerConfigurationsCreateOrUpdateOptionalParams extends coreC // @public export type PartnerConfigurationsCreateOrUpdateResponse = PartnerConfiguration; +// @public +export interface PartnerConfigurationsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface PartnerConfigurationsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -1527,6 +2605,146 @@ export interface PartnerConfigurationUpdateParameters { }; } +// @public +export interface PartnerDestination extends TrackedResource { + activationState?: PartnerDestinationActivationState; + endpointBaseUrl?: string; + endpointServiceContext?: string; + expirationTimeIfNotActivatedUtc?: Date; + messageForActivation?: string; + partnerRegistrationImmutableId?: string; + readonly provisioningState?: PartnerDestinationProvisioningState; + readonly systemData?: SystemData; +} + +// @public +export type PartnerDestinationActivationState = string; + +// @public +export interface PartnerDestinationInfo { + azureSubscriptionId?: string; + endpointServiceContext?: string; + endpointType: "WebHook"; + name?: string; + resourceGroupName?: string; + resourceMoveChangeHistory?: ResourceMoveChangeHistory[]; +} + +// @public (undocumented) +export type PartnerDestinationInfoUnion = PartnerDestinationInfo | WebhookPartnerDestinationInfo; + +// @public +export type PartnerDestinationProvisioningState = string; + +// @public +export interface PartnerDestinations { + activate(resourceGroupName: string, partnerDestinationName: string, options?: PartnerDestinationsActivateOptionalParams): Promise; + beginCreateOrUpdate(resourceGroupName: string, partnerDestinationName: string, partnerDestination: PartnerDestination, options?: PartnerDestinationsCreateOrUpdateOptionalParams): Promise, PartnerDestinationsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, partnerDestinationName: string, partnerDestination: PartnerDestination, options?: PartnerDestinationsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, partnerDestinationName: string, options?: PartnerDestinationsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, partnerDestinationName: string, options?: PartnerDestinationsDeleteOptionalParams): Promise; + beginUpdate(resourceGroupName: string, partnerDestinationName: string, partnerDestinationUpdateParameters: PartnerDestinationUpdateParameters, options?: PartnerDestinationsUpdateOptionalParams): Promise, PartnerDestinationsUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, partnerDestinationName: string, partnerDestinationUpdateParameters: PartnerDestinationUpdateParameters, options?: PartnerDestinationsUpdateOptionalParams): Promise; + get(resourceGroupName: string, partnerDestinationName: string, options?: PartnerDestinationsGetOptionalParams): Promise; + listByResourceGroup(resourceGroupName: string, options?: PartnerDestinationsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listBySubscription(options?: PartnerDestinationsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface PartnerDestinationsActivateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type PartnerDestinationsActivateResponse = PartnerDestination; + +// @public +export interface PartnerDestinationsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type PartnerDestinationsCreateOrUpdateResponse = PartnerDestination; + +// @public +export interface PartnerDestinationsDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface PartnerDestinationsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface PartnerDestinationsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type PartnerDestinationsGetResponse = PartnerDestination; + +// @public +export interface PartnerDestinationsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type PartnerDestinationsListByResourceGroupNextResponse = PartnerDestinationsListResult; + +// @public +export interface PartnerDestinationsListByResourceGroupOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type PartnerDestinationsListByResourceGroupResponse = PartnerDestinationsListResult; + +// @public +export interface PartnerDestinationsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type PartnerDestinationsListBySubscriptionNextResponse = PartnerDestinationsListResult; + +// @public +export interface PartnerDestinationsListBySubscriptionOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type PartnerDestinationsListBySubscriptionResponse = PartnerDestinationsListResult; + +// @public +export interface PartnerDestinationsListResult { + nextLink?: string; + value?: PartnerDestination[]; +} + +// @public +export interface PartnerDestinationsUpdateHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface PartnerDestinationsUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type PartnerDestinationsUpdateResponse = PartnerDestination; + +// @public +export interface PartnerDestinationUpdateParameters { + tags?: { + [propertyName: string]: string; + }; +} + // @public export interface PartnerDetails { description?: string; @@ -1534,11 +2752,21 @@ export interface PartnerDetails { setupUri?: string; } +// @public +export type PartnerEndpointType = string; + +// @public (undocumented) +export interface PartnerEventSubscriptionDestination extends EventSubscriptionDestination { + endpointType: "PartnerDestination"; + resourceId?: string; +} + // @public export interface PartnerNamespace extends TrackedResource { disableLocalAuth?: boolean; readonly endpoint?: string; inboundIpRules?: InboundIpRule[]; + minimumTlsVersionAllowed?: TlsVersion; partnerRegistrationFullyQualifiedId?: string; partnerTopicRoutingMode?: PartnerTopicRoutingMode; readonly privateEndpointConnections?: PrivateEndpointConnection[]; @@ -1557,11 +2785,11 @@ export interface PartnerNamespaceRegenerateKeyRequest { // @public export interface PartnerNamespaces { - beginCreateOrUpdate(resourceGroupName: string, partnerNamespaceName: string, partnerNamespaceInfo: PartnerNamespace, options?: PartnerNamespacesCreateOrUpdateOptionalParams): Promise, PartnerNamespacesCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, partnerNamespaceName: string, partnerNamespaceInfo: PartnerNamespace, options?: PartnerNamespacesCreateOrUpdateOptionalParams): Promise, PartnerNamespacesCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, partnerNamespaceName: string, partnerNamespaceInfo: PartnerNamespace, options?: PartnerNamespacesCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, partnerNamespaceName: string, options?: PartnerNamespacesDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, partnerNamespaceName: string, options?: PartnerNamespacesDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, partnerNamespaceName: string, options?: PartnerNamespacesDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, partnerNamespaceName: string, partnerNamespaceUpdateParameters: PartnerNamespaceUpdateParameters, options?: PartnerNamespacesUpdateOptionalParams): Promise, void>>; + beginUpdate(resourceGroupName: string, partnerNamespaceName: string, partnerNamespaceUpdateParameters: PartnerNamespaceUpdateParameters, options?: PartnerNamespacesUpdateOptionalParams): Promise, void>>; beginUpdateAndWait(resourceGroupName: string, partnerNamespaceName: string, partnerNamespaceUpdateParameters: PartnerNamespaceUpdateParameters, options?: PartnerNamespacesUpdateOptionalParams): Promise; get(resourceGroupName: string, partnerNamespaceName: string, options?: PartnerNamespacesGetOptionalParams): Promise; listByResourceGroup(resourceGroupName: string, options?: PartnerNamespacesListByResourceGroupOptionalParams): PagedAsyncIterableIterator; @@ -1579,6 +2807,12 @@ export interface PartnerNamespacesCreateOrUpdateOptionalParams extends coreClien // @public export type PartnerNamespacesCreateOrUpdateResponse = PartnerNamespace; +// @public +export interface PartnerNamespacesDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface PartnerNamespacesDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -1660,6 +2894,7 @@ export interface PartnerNamespacesUpdateOptionalParams extends coreClient.Operat export interface PartnerNamespaceUpdateParameters { disableLocalAuth?: boolean; inboundIpRules?: InboundIpRule[]; + minimumTlsVersionAllowed?: TlsVersion; publicNetworkAccess?: PublicNetworkAccess; tags?: { [propertyName: string]: string; @@ -1678,17 +2913,23 @@ export type PartnerRegistrationProvisioningState = string; // @public export interface PartnerRegistrations { - beginCreateOrUpdate(resourceGroupName: string, partnerRegistrationName: string, partnerRegistrationInfo: PartnerRegistration, options?: PartnerRegistrationsCreateOrUpdateOptionalParams): Promise, PartnerRegistrationsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, partnerRegistrationName: string, partnerRegistrationInfo: PartnerRegistration, options?: PartnerRegistrationsCreateOrUpdateOptionalParams): Promise, PartnerRegistrationsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, partnerRegistrationName: string, partnerRegistrationInfo: PartnerRegistration, options?: PartnerRegistrationsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, partnerRegistrationName: string, options?: PartnerRegistrationsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, partnerRegistrationName: string, options?: PartnerRegistrationsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, partnerRegistrationName: string, options?: PartnerRegistrationsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, partnerRegistrationName: string, partnerRegistrationUpdateParameters: PartnerRegistrationUpdateParameters, options?: PartnerRegistrationsUpdateOptionalParams): Promise, void>>; + beginUpdate(resourceGroupName: string, partnerRegistrationName: string, partnerRegistrationUpdateParameters: PartnerRegistrationUpdateParameters, options?: PartnerRegistrationsUpdateOptionalParams): Promise, void>>; beginUpdateAndWait(resourceGroupName: string, partnerRegistrationName: string, partnerRegistrationUpdateParameters: PartnerRegistrationUpdateParameters, options?: PartnerRegistrationsUpdateOptionalParams): Promise; get(resourceGroupName: string, partnerRegistrationName: string, options?: PartnerRegistrationsGetOptionalParams): Promise; listByResourceGroup(resourceGroupName: string, options?: PartnerRegistrationsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; listBySubscription(options?: PartnerRegistrationsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; } +// @public +export interface PartnerRegistrationsCreateOrUpdateHeaders { + // (undocumented) + location?: string; +} + // @public export interface PartnerRegistrationsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -1698,6 +2939,12 @@ export interface PartnerRegistrationsCreateOrUpdateOptionalParams extends coreCl // @public export type PartnerRegistrationsCreateOrUpdateResponse = PartnerRegistration; +// @public +export interface PartnerRegistrationsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface PartnerRegistrationsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -1781,11 +3028,11 @@ export type PartnerTopicActivationState = string; // @public export interface PartnerTopicEventSubscriptions { - beginCreateOrUpdate(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, PartnerTopicEventSubscriptionsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, PartnerTopicEventSubscriptionsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, options?: PartnerTopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, options?: PartnerTopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, options?: PartnerTopicEventSubscriptionsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: PartnerTopicEventSubscriptionsUpdateOptionalParams): Promise, PartnerTopicEventSubscriptionsUpdateResponse>>; + beginUpdate(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: PartnerTopicEventSubscriptionsUpdateOptionalParams): Promise, PartnerTopicEventSubscriptionsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: PartnerTopicEventSubscriptionsUpdateOptionalParams): Promise; get(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, options?: PartnerTopicEventSubscriptionsGetOptionalParams): Promise; getDeliveryAttributes(resourceGroupName: string, partnerTopicName: string, eventSubscriptionName: string, options?: PartnerTopicEventSubscriptionsGetDeliveryAttributesOptionalParams): Promise; @@ -1802,6 +3049,12 @@ export interface PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams exte // @public export type PartnerTopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; +// @public +export interface PartnerTopicEventSubscriptionsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface PartnerTopicEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -1872,7 +3125,7 @@ export type PartnerTopicRoutingMode = string; // @public export interface PartnerTopics { activate(resourceGroupName: string, partnerTopicName: string, options?: PartnerTopicsActivateOptionalParams): Promise; - beginDelete(resourceGroupName: string, partnerTopicName: string, options?: PartnerTopicsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, partnerTopicName: string, options?: PartnerTopicsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, partnerTopicName: string, options?: PartnerTopicsDeleteOptionalParams): Promise; createOrUpdate(resourceGroupName: string, partnerTopicName: string, partnerTopicInfo: PartnerTopic, options?: PartnerTopicsCreateOrUpdateOptionalParams): Promise; deactivate(resourceGroupName: string, partnerTopicName: string, options?: PartnerTopicsDeactivateOptionalParams): Promise; @@ -1903,6 +3156,12 @@ export interface PartnerTopicsDeactivateOptionalParams extends coreClient.Operat // @public export type PartnerTopicsDeactivateResponse = PartnerTopic; +// @public +export interface PartnerTopicsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface PartnerTopicsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -1969,11 +3228,95 @@ export interface PartnerTopicUpdateParameters { }; } +// @public +export interface PartnerUpdateDestinationInfo { + endpointType: "WebHook"; +} + +// @public (undocumented) +export type PartnerUpdateDestinationInfoUnion = PartnerUpdateDestinationInfo | WebhookUpdatePartnerDestinationInfo; + // @public export interface PartnerUpdateTopicInfo { eventTypeInfo?: EventTypeInfo; } +// @public +export interface PermissionBinding extends Resource { + clientGroupName?: string; + description?: string; + permission?: PermissionType; + readonly provisioningState?: PermissionBindingProvisioningState; + readonly systemData?: SystemData; + topicSpaceName?: string; +} + +// @public +export type PermissionBindingProvisioningState = string; + +// @public +export interface PermissionBindings { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, permissionBindingName: string, permissionBindingInfo: PermissionBinding, options?: PermissionBindingsCreateOrUpdateOptionalParams): Promise, PermissionBindingsCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, permissionBindingName: string, permissionBindingInfo: PermissionBinding, options?: PermissionBindingsCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, permissionBindingName: string, options?: PermissionBindingsDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, permissionBindingName: string, options?: PermissionBindingsDeleteOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, permissionBindingName: string, options?: PermissionBindingsGetOptionalParams): Promise; + listByNamespace(resourceGroupName: string, namespaceName: string, options?: PermissionBindingsListByNamespaceOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface PermissionBindingsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type PermissionBindingsCreateOrUpdateResponse = PermissionBinding; + +// @public +export interface PermissionBindingsDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface PermissionBindingsDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface PermissionBindingsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type PermissionBindingsGetResponse = PermissionBinding; + +// @public +export interface PermissionBindingsListByNamespaceNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type PermissionBindingsListByNamespaceNextResponse = PermissionBindingsListResult; + +// @public +export interface PermissionBindingsListByNamespaceOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type PermissionBindingsListByNamespaceResponse = PermissionBindingsListResult; + +// @public +export interface PermissionBindingsListResult { + nextLink?: string; + value?: PermissionBinding[]; +} + +// @public +export type PermissionType = string; + // @public export type PersistedConnectionStatus = string; @@ -1998,20 +3341,29 @@ export interface PrivateEndpointConnectionListResult { // @public export interface PrivateEndpointConnections { - beginDelete(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams): Promise, void>>; - beginDeleteAndWait(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, privateEndpointConnection: PrivateEndpointConnection, options?: PrivateEndpointConnectionsUpdateOptionalParams): Promise, PrivateEndpointConnectionsUpdateResponse>>; + beginDelete(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams): Promise, PrivateEndpointConnectionsDeleteResponse>>; + beginDeleteAndWait(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams): Promise; + beginUpdate(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, privateEndpointConnection: PrivateEndpointConnection, options?: PrivateEndpointConnectionsUpdateOptionalParams): Promise, PrivateEndpointConnectionsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, privateEndpointConnection: PrivateEndpointConnection, options?: PrivateEndpointConnectionsUpdateOptionalParams): Promise; get(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsGetOptionalParams): Promise; listByResource(resourceGroupName: string, parentType: PrivateEndpointConnectionsParentType, parentName: string, options?: PrivateEndpointConnectionsListByResourceOptionalParams): PagedAsyncIterableIterator; } +// @public +export interface PrivateEndpointConnectionsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface PrivateEndpointConnectionsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; updateIntervalInMs?: number; } +// @public +export type PrivateEndpointConnectionsDeleteResponse = PrivateEndpointConnectionsDeleteHeaders; + // @public export interface PrivateEndpointConnectionsGetOptionalParams extends coreClient.OperationOptions { } @@ -2100,6 +3452,17 @@ export interface PrivateLinkResourcesListResult { // @public export type PublicNetworkAccess = string; +// @public +export type PublisherType = string; + +// @public +export interface QueueInfo { + deadLetterDestinationWithResourceIdentity?: DeadLetterWithResourceIdentity; + eventTimeToLive?: string; + maxDeliveryCount?: number; + receiveLockDurationInSeconds?: number; +} + // @public export type ReadinessState = string; @@ -2110,18 +3473,52 @@ export interface Resource { readonly type?: string; } +// @public +export type ResourceKind = string; + +// @public +export interface ResourceMoveChangeHistory { + azureSubscriptionId?: string; + changedTimeUtc?: Date; + resourceGroupName?: string; +} + // @public export type ResourceProvisioningState = string; // @public export type ResourceRegionType = string; +// @public +export interface ResourceSku { + name?: Sku; +} + // @public export interface RetryPolicy { eventTimeToLiveInMinutes?: number; maxDeliveryAttempts?: number; } +// @public (undocumented) +export interface RoutingEnrichments { + // (undocumented) + dynamic?: DynamicRoutingEnrichment[]; + // (undocumented) + static?: StaticRoutingEnrichment[]; +} + +// @public +export interface RoutingIdentityInfo { + // (undocumented) + type?: RoutingIdentityType; + // (undocumented) + userAssignedIdentity?: string; +} + +// @public +export type RoutingIdentityType = string; + // @public export interface ServiceBusQueueEventSubscriptionDestination extends EventSubscriptionDestination { deliveryAttributeMappings?: DeliveryAttributeMappingUnion[]; @@ -2136,6 +3533,12 @@ export interface ServiceBusTopicEventSubscriptionDestination extends EventSubscr resourceId?: string; } +// @public +export type Sku = string; + +// @public +export type SkuName = string; + // @public export interface StaticDeliveryAttributeMapping extends DeliveryAttributeMapping { isSecret?: boolean; @@ -2143,6 +3546,15 @@ export interface StaticDeliveryAttributeMapping extends DeliveryAttributeMapping value?: string; } +// @public (undocumented) +export interface StaticRoutingEnrichment { + key?: string; + valueType?: StaticRoutingEnrichmentType; +} + +// @public +export type StaticRoutingEnrichmentType = string; + // @public export interface StorageBlobDeadLetterDestination extends DeadLetterDestination { blobContainerName?: string; @@ -2164,48 +3576,121 @@ export interface StringBeginsWithAdvancedFilter extends AdvancedFilter { values?: string[]; } +// @public +export interface StringBeginsWithFilter extends Filter { + operatorType: "StringBeginsWith"; + values?: string[]; +} + // @public export interface StringContainsAdvancedFilter extends AdvancedFilter { operatorType: "StringContains"; values?: string[]; } +// @public +export interface StringContainsFilter extends Filter { + operatorType: "StringContains"; + values?: string[]; +} + // @public export interface StringEndsWithAdvancedFilter extends AdvancedFilter { operatorType: "StringEndsWith"; values?: string[]; } +// @public +export interface StringEndsWithFilter extends Filter { + operatorType: "StringEndsWith"; + values?: string[]; +} + // @public export interface StringInAdvancedFilter extends AdvancedFilter { operatorType: "StringIn"; values?: string[]; } +// @public +export interface StringInFilter extends Filter { + operatorType: "StringIn"; + values?: string[]; +} + // @public export interface StringNotBeginsWithAdvancedFilter extends AdvancedFilter { operatorType: "StringNotBeginsWith"; values?: string[]; } +// @public +export interface StringNotBeginsWithFilter extends Filter { + operatorType: "StringNotBeginsWith"; + values?: string[]; +} + // @public export interface StringNotContainsAdvancedFilter extends AdvancedFilter { operatorType: "StringNotContains"; values?: string[]; } +// @public +export interface StringNotContainsFilter extends Filter { + operatorType: "StringNotContains"; + values?: string[]; +} + // @public export interface StringNotEndsWithAdvancedFilter extends AdvancedFilter { operatorType: "StringNotEndsWith"; values?: string[]; } +// @public +export interface StringNotEndsWithFilter extends Filter { + operatorType: "StringNotEndsWith"; + values?: string[]; +} + // @public export interface StringNotInAdvancedFilter extends AdvancedFilter { operatorType: "StringNotIn"; values?: string[]; } +// @public +export interface StringNotInFilter extends Filter { + operatorType: "StringNotIn"; + values?: string[]; +} + +// @public +export interface Subscription extends Resource { + deliveryConfiguration?: DeliveryConfiguration; + eventDeliverySchema?: DeliverySchema; + filtersConfiguration?: FiltersConfiguration; + readonly provisioningState?: SubscriptionProvisioningState; + readonly systemData?: SystemData; +} + +// @public +export type SubscriptionProvisioningState = string; + +// @public +export interface SubscriptionsListResult { + nextLink?: string; + value?: Subscription[]; +} + +// @public +export interface SubscriptionUpdateParameters { + deliveryConfiguration?: DeliveryConfiguration; + eventDeliverySchema?: DeliverySchema; + filtersConfiguration?: FiltersConfiguration; +} + // @public export interface SystemData { createdAt?: Date; @@ -2228,11 +3713,11 @@ export interface SystemTopic extends TrackedResource { // @public export interface SystemTopicEventSubscriptions { - beginCreateOrUpdate(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, SystemTopicEventSubscriptionsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, SystemTopicEventSubscriptionsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: SystemTopicEventSubscriptionsUpdateOptionalParams): Promise, SystemTopicEventSubscriptionsUpdateResponse>>; + beginUpdate(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: SystemTopicEventSubscriptionsUpdateOptionalParams): Promise, SystemTopicEventSubscriptionsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: SystemTopicEventSubscriptionsUpdateOptionalParams): Promise; get(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsGetOptionalParams): Promise; getDeliveryAttributes(resourceGroupName: string, systemTopicName: string, eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams): Promise; @@ -2249,6 +3734,12 @@ export interface SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams exten // @public export type SystemTopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; +// @public +export interface SystemTopicEventSubscriptionsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface SystemTopicEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -2303,11 +3794,11 @@ export type SystemTopicEventSubscriptionsUpdateResponse = EventSubscription; // @public export interface SystemTopics { - beginCreateOrUpdate(resourceGroupName: string, systemTopicName: string, systemTopicInfo: SystemTopic, options?: SystemTopicsCreateOrUpdateOptionalParams): Promise, SystemTopicsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, systemTopicName: string, systemTopicInfo: SystemTopic, options?: SystemTopicsCreateOrUpdateOptionalParams): Promise, SystemTopicsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, systemTopicName: string, systemTopicInfo: SystemTopic, options?: SystemTopicsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, systemTopicName: string, options?: SystemTopicsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, systemTopicName: string, options?: SystemTopicsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, systemTopicName: string, options?: SystemTopicsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, systemTopicName: string, systemTopicUpdateParameters: SystemTopicUpdateParameters, options?: SystemTopicsUpdateOptionalParams): Promise, SystemTopicsUpdateResponse>>; + beginUpdate(resourceGroupName: string, systemTopicName: string, systemTopicUpdateParameters: SystemTopicUpdateParameters, options?: SystemTopicsUpdateOptionalParams): Promise, SystemTopicsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, systemTopicName: string, systemTopicUpdateParameters: SystemTopicUpdateParameters, options?: SystemTopicsUpdateOptionalParams): Promise; get(resourceGroupName: string, systemTopicName: string, options?: SystemTopicsGetOptionalParams): Promise; listByResourceGroup(resourceGroupName: string, options?: SystemTopicsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; @@ -2323,6 +3814,12 @@ export interface SystemTopicsCreateOrUpdateOptionalParams extends coreClient.Ope // @public export type SystemTopicsCreateOrUpdateResponse = SystemTopic; +// @public +export interface SystemTopicsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface SystemTopicsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -2391,29 +3888,37 @@ export interface SystemTopicUpdateParameters { }; } +// @public +export type TlsVersion = string; + // @public export interface Topic extends TrackedResource { dataResidencyBoundary?: DataResidencyBoundary; disableLocalAuth?: boolean; readonly endpoint?: string; + eventTypeInfo?: EventTypeInfo; + extendedLocation?: ExtendedLocation; identity?: IdentityInfo; inboundIpRules?: InboundIpRule[]; inputSchema?: InputSchema; inputSchemaMapping?: InputSchemaMappingUnion; + kind?: ResourceKind; readonly metricResourceId?: string; + minimumTlsVersionAllowed?: TlsVersion; readonly privateEndpointConnections?: PrivateEndpointConnection[]; readonly provisioningState?: TopicProvisioningState; publicNetworkAccess?: PublicNetworkAccess; + sku?: ResourceSku; readonly systemData?: SystemData; } // @public export interface TopicEventSubscriptions { - beginCreateOrUpdate(resourceGroupName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: TopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, TopicEventSubscriptionsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: TopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise, TopicEventSubscriptionsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionInfo: EventSubscription, options?: TopicEventSubscriptionsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, topicName: string, eventSubscriptionName: string, options?: TopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; + beginDelete(resourceGroupName: string, topicName: string, eventSubscriptionName: string, options?: TopicEventSubscriptionsDeleteOptionalParams): Promise, void>>; beginDeleteAndWait(resourceGroupName: string, topicName: string, eventSubscriptionName: string, options?: TopicEventSubscriptionsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: TopicEventSubscriptionsUpdateOptionalParams): Promise, TopicEventSubscriptionsUpdateResponse>>; + beginUpdate(resourceGroupName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: TopicEventSubscriptionsUpdateOptionalParams): Promise, TopicEventSubscriptionsUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, topicName: string, eventSubscriptionName: string, eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: TopicEventSubscriptionsUpdateOptionalParams): Promise; get(resourceGroupName: string, topicName: string, eventSubscriptionName: string, options?: TopicEventSubscriptionsGetOptionalParams): Promise; getDeliveryAttributes(resourceGroupName: string, topicName: string, eventSubscriptionName: string, options?: TopicEventSubscriptionsGetDeliveryAttributesOptionalParams): Promise; @@ -2430,6 +3935,12 @@ export interface TopicEventSubscriptionsCreateOrUpdateOptionalParams extends cor // @public export type TopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; +// @public +export interface TopicEventSubscriptionsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface TopicEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -2492,13 +4003,13 @@ export interface TopicRegenerateKeyRequest { // @public export interface Topics { - beginCreateOrUpdate(resourceGroupName: string, topicName: string, topicInfo: Topic, options?: TopicsCreateOrUpdateOptionalParams): Promise, TopicsCreateOrUpdateResponse>>; + beginCreateOrUpdate(resourceGroupName: string, topicName: string, topicInfo: Topic, options?: TopicsCreateOrUpdateOptionalParams): Promise, TopicsCreateOrUpdateResponse>>; beginCreateOrUpdateAndWait(resourceGroupName: string, topicName: string, topicInfo: Topic, options?: TopicsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams): Promise, void>>; - beginDeleteAndWait(resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams): Promise; - beginRegenerateKey(resourceGroupName: string, topicName: string, regenerateKeyRequest: TopicRegenerateKeyRequest, options?: TopicsRegenerateKeyOptionalParams): Promise, TopicsRegenerateKeyResponse>>; + beginDelete(resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams): Promise, TopicsDeleteResponse>>; + beginDeleteAndWait(resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams): Promise; + beginRegenerateKey(resourceGroupName: string, topicName: string, regenerateKeyRequest: TopicRegenerateKeyRequest, options?: TopicsRegenerateKeyOptionalParams): Promise, TopicsRegenerateKeyResponse>>; beginRegenerateKeyAndWait(resourceGroupName: string, topicName: string, regenerateKeyRequest: TopicRegenerateKeyRequest, options?: TopicsRegenerateKeyOptionalParams): Promise; - beginUpdate(resourceGroupName: string, topicName: string, topicUpdateParameters: TopicUpdateParameters, options?: TopicsUpdateOptionalParams): Promise, void>>; + beginUpdate(resourceGroupName: string, topicName: string, topicUpdateParameters: TopicUpdateParameters, options?: TopicsUpdateOptionalParams): Promise, void>>; beginUpdateAndWait(resourceGroupName: string, topicName: string, topicUpdateParameters: TopicUpdateParameters, options?: TopicsUpdateOptionalParams): Promise; get(resourceGroupName: string, topicName: string, options?: TopicsGetOptionalParams): Promise; listByResourceGroup(resourceGroupName: string, options?: TopicsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; @@ -2507,6 +4018,11 @@ export interface Topics { listSharedAccessKeys(resourceGroupName: string, topicName: string, options?: TopicsListSharedAccessKeysOptionalParams): Promise; } +// @public +export interface TopicsConfiguration { + readonly hostname?: string; +} + // @public export interface TopicsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -2516,12 +4032,21 @@ export interface TopicsCreateOrUpdateOptionalParams extends coreClient.Operation // @public export type TopicsCreateOrUpdateResponse = Topic; +// @public +export interface TopicsDeleteHeaders { + // (undocumented) + location?: string; +} + // @public export interface TopicsDeleteOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; updateIntervalInMs?: number; } +// @public +export type TopicsDeleteResponse = TopicsDeleteHeaders; + // @public export interface TopicsGetOptionalParams extends coreClient.OperationOptions { } @@ -2587,6 +4112,98 @@ export interface TopicsListSharedAccessKeysOptionalParams extends coreClient.Ope // @public export type TopicsListSharedAccessKeysResponse = TopicSharedAccessKeys; +// @public +export interface TopicSpace extends Resource { + description?: string; + readonly provisioningState?: TopicSpaceProvisioningState; + readonly systemData?: SystemData; + topicTemplates?: string[]; +} + +// @public +export type TopicSpaceProvisioningState = string; + +// @public +export interface TopicSpaces { + beginCreateOrUpdate(resourceGroupName: string, namespaceName: string, topicSpaceName: string, topicSpaceInfo: TopicSpace, options?: TopicSpacesCreateOrUpdateOptionalParams): Promise, TopicSpacesCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, namespaceName: string, topicSpaceName: string, topicSpaceInfo: TopicSpace, options?: TopicSpacesCreateOrUpdateOptionalParams): Promise; + beginDelete(resourceGroupName: string, namespaceName: string, topicSpaceName: string, options?: TopicSpacesDeleteOptionalParams): Promise, void>>; + beginDeleteAndWait(resourceGroupName: string, namespaceName: string, topicSpaceName: string, options?: TopicSpacesDeleteOptionalParams): Promise; + get(resourceGroupName: string, namespaceName: string, topicSpaceName: string, options?: TopicSpacesGetOptionalParams): Promise; + listByNamespace(resourceGroupName: string, namespaceName: string, options?: TopicSpacesListByNamespaceOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface TopicSpacesConfiguration { + clientAuthentication?: ClientAuthenticationSettings; + readonly hostname?: string; + maximumClientSessionsPerAuthenticationName?: number; + maximumSessionExpiryInHours?: number; + routeTopicResourceId?: string; + routingEnrichments?: RoutingEnrichments; + routingIdentityInfo?: RoutingIdentityInfo; + state?: TopicSpacesConfigurationState; +} + +// @public +export type TopicSpacesConfigurationState = string; + +// @public +export interface TopicSpacesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type TopicSpacesCreateOrUpdateResponse = TopicSpace; + +// @public +export interface TopicSpacesDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface TopicSpacesDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface TopicSpacesGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type TopicSpacesGetResponse = TopicSpace; + +// @public +export interface TopicSpacesListByNamespaceNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type TopicSpacesListByNamespaceNextResponse = TopicSpacesListResult; + +// @public +export interface TopicSpacesListByNamespaceOptionalParams extends coreClient.OperationOptions { + filter?: string; + top?: number; +} + +// @public +export type TopicSpacesListByNamespaceResponse = TopicSpacesListResult; + +// @public +export interface TopicSpacesListResult { + nextLink?: string; + value?: TopicSpace[]; +} + +// @public +export interface TopicsRegenerateKeyHeaders { + // (undocumented) + location?: string; +} + // @public export interface TopicsRegenerateKeyOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -2604,6 +4221,7 @@ export interface TopicsUpdateOptionalParams extends coreClient.OperationOptions // @public export interface TopicTypeInfo extends Resource { + areRegionalAndGlobalSourcesSupported?: boolean; description?: string; displayName?: string; provider?: string; @@ -2657,9 +4275,12 @@ export type TopicTypeSourceScope = string; export interface TopicUpdateParameters { dataResidencyBoundary?: DataResidencyBoundary; disableLocalAuth?: boolean; + eventTypeInfo?: EventTypeInfo; identity?: IdentityInfo; inboundIpRules?: InboundIpRule[]; + minimumTlsVersionAllowed?: TlsVersion; publicNetworkAccess?: PublicNetworkAccess; + sku?: ResourceSku; tags?: { [propertyName: string]: string; }; @@ -2673,6 +4294,17 @@ export interface TrackedResource extends Resource { }; } +// @public +export interface UpdateTopicSpacesConfigurationInfo { + clientAuthentication?: ClientAuthenticationSettings; + maximumClientSessionsPerAuthenticationName?: number; + maximumSessionExpiryInHours?: number; + routeTopicResourceId?: string; + routingEnrichments?: RoutingEnrichments; + routingIdentityInfo?: RoutingIdentityInfo; + state?: TopicSpacesConfigurationState; +} + // @public export interface UserIdentityProperties { clientId?: string; @@ -2682,6 +4314,7 @@ export interface UserIdentityProperties { // @public export interface VerifiedPartner extends Resource { organizationName?: string; + partnerDestinationDetails?: PartnerDetails; partnerDisplayName?: string; partnerRegistrationImmutableId?: string; partnerTopicDetails?: PartnerDetails; @@ -2736,9 +4369,26 @@ export interface WebHookEventSubscriptionDestination extends EventSubscriptionDe endpointType: "WebHook"; endpointUrl?: string; maxEventsPerBatch?: number; + minimumTlsVersionAllowed?: TlsVersion; preferredBatchSizeInKilobytes?: number; } +// @public +export interface WebhookPartnerDestinationInfo extends PartnerDestinationInfo { + clientAuthentication?: PartnerClientAuthenticationUnion; + endpointBaseUrl?: string; + endpointType: "WebHook"; + endpointUrl?: string; +} + +// @public +export interface WebhookUpdatePartnerDestinationInfo extends PartnerUpdateDestinationInfo { + clientAuthentication?: PartnerClientAuthenticationUnion; + endpointBaseUrl?: string; + endpointType: "WebHook"; + endpointUrl?: string; +} + // (No @packageDocumentation comment for this package) ``` diff --git a/sdk/eventgrid/arm-eventgrid/src/eventGridManagementClient.ts b/sdk/eventgrid/arm-eventgrid/src/eventGridManagementClient.ts index b977dd8537d8..bb3b27721117 100644 --- a/sdk/eventgrid/arm-eventgrid/src/eventGridManagementClient.ts +++ b/sdk/eventgrid/arm-eventgrid/src/eventGridManagementClient.ts @@ -15,48 +15,66 @@ import { } from "@azure/core-rest-pipeline"; import * as coreAuth from "@azure/core-auth"; import { + CaCertificatesImpl, ChannelsImpl, + ClientGroupsImpl, + ClientsImpl, DomainsImpl, DomainTopicsImpl, + DomainTopicEventSubscriptionsImpl, TopicEventSubscriptionsImpl, DomainEventSubscriptionsImpl, EventSubscriptionsImpl, - DomainTopicEventSubscriptionsImpl, SystemTopicEventSubscriptionsImpl, + NamespaceTopicEventSubscriptionsImpl, PartnerTopicEventSubscriptionsImpl, + NamespacesImpl, + NamespaceTopicsImpl, OperationsImpl, - TopicsImpl, PartnerConfigurationsImpl, + PartnerDestinationsImpl, PartnerNamespacesImpl, PartnerRegistrationsImpl, PartnerTopicsImpl, + PermissionBindingsImpl, PrivateEndpointConnectionsImpl, PrivateLinkResourcesImpl, SystemTopicsImpl, + TopicsImpl, ExtensionTopicsImpl, + TopicSpacesImpl, TopicTypesImpl, VerifiedPartnersImpl } from "./operations"; import { + CaCertificates, Channels, + ClientGroups, + Clients, Domains, DomainTopics, + DomainTopicEventSubscriptions, TopicEventSubscriptions, DomainEventSubscriptions, EventSubscriptions, - DomainTopicEventSubscriptions, SystemTopicEventSubscriptions, + NamespaceTopicEventSubscriptions, PartnerTopicEventSubscriptions, + Namespaces, + NamespaceTopics, Operations, - Topics, PartnerConfigurations, + PartnerDestinations, PartnerNamespaces, PartnerRegistrations, PartnerTopics, + PermissionBindings, PrivateEndpointConnections, PrivateLinkResources, SystemTopics, + Topics, ExtensionTopics, + TopicSpaces, TopicTypes, VerifiedPartners } from "./operationsInterfaces"; @@ -95,7 +113,7 @@ export class EventGridManagementClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-eventgrid/14.1.1`; + const packageDetails = `azsdk-js-arm-eventgrid/14.2.0-beta.1`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -148,32 +166,43 @@ export class EventGridManagementClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2022-06-15"; + this.apiVersion = options.apiVersion || "2023-06-01-preview"; + this.caCertificates = new CaCertificatesImpl(this); this.channels = new ChannelsImpl(this); + this.clientGroups = new ClientGroupsImpl(this); + this.clients = new ClientsImpl(this); this.domains = new DomainsImpl(this); this.domainTopics = new DomainTopicsImpl(this); + this.domainTopicEventSubscriptions = new DomainTopicEventSubscriptionsImpl( + this + ); this.topicEventSubscriptions = new TopicEventSubscriptionsImpl(this); this.domainEventSubscriptions = new DomainEventSubscriptionsImpl(this); this.eventSubscriptions = new EventSubscriptionsImpl(this); - this.domainTopicEventSubscriptions = new DomainTopicEventSubscriptionsImpl( + this.systemTopicEventSubscriptions = new SystemTopicEventSubscriptionsImpl( this ); - this.systemTopicEventSubscriptions = new SystemTopicEventSubscriptionsImpl( + this.namespaceTopicEventSubscriptions = new NamespaceTopicEventSubscriptionsImpl( this ); this.partnerTopicEventSubscriptions = new PartnerTopicEventSubscriptionsImpl( this ); + this.namespaces = new NamespacesImpl(this); + this.namespaceTopics = new NamespaceTopicsImpl(this); this.operations = new OperationsImpl(this); - this.topics = new TopicsImpl(this); this.partnerConfigurations = new PartnerConfigurationsImpl(this); + this.partnerDestinations = new PartnerDestinationsImpl(this); this.partnerNamespaces = new PartnerNamespacesImpl(this); this.partnerRegistrations = new PartnerRegistrationsImpl(this); this.partnerTopics = new PartnerTopicsImpl(this); + this.permissionBindings = new PermissionBindingsImpl(this); this.privateEndpointConnections = new PrivateEndpointConnectionsImpl(this); this.privateLinkResources = new PrivateLinkResourcesImpl(this); this.systemTopics = new SystemTopicsImpl(this); + this.topics = new TopicsImpl(this); this.extensionTopics = new ExtensionTopicsImpl(this); + this.topicSpaces = new TopicSpacesImpl(this); this.topicTypes = new TopicTypesImpl(this); this.verifiedPartners = new VerifiedPartnersImpl(this); this.addCustomApiVersionPolicy(options.apiVersion); @@ -207,25 +236,34 @@ export class EventGridManagementClient extends coreClient.ServiceClient { this.pipeline.addPolicy(apiVersionPolicy); } + caCertificates: CaCertificates; channels: Channels; + clientGroups: ClientGroups; + clients: Clients; domains: Domains; domainTopics: DomainTopics; + domainTopicEventSubscriptions: DomainTopicEventSubscriptions; topicEventSubscriptions: TopicEventSubscriptions; domainEventSubscriptions: DomainEventSubscriptions; eventSubscriptions: EventSubscriptions; - domainTopicEventSubscriptions: DomainTopicEventSubscriptions; systemTopicEventSubscriptions: SystemTopicEventSubscriptions; + namespaceTopicEventSubscriptions: NamespaceTopicEventSubscriptions; partnerTopicEventSubscriptions: PartnerTopicEventSubscriptions; + namespaces: Namespaces; + namespaceTopics: NamespaceTopics; operations: Operations; - topics: Topics; partnerConfigurations: PartnerConfigurations; + partnerDestinations: PartnerDestinations; partnerNamespaces: PartnerNamespaces; partnerRegistrations: PartnerRegistrations; partnerTopics: PartnerTopics; + permissionBindings: PermissionBindings; privateEndpointConnections: PrivateEndpointConnections; privateLinkResources: PrivateLinkResources; systemTopics: SystemTopics; + topics: Topics; extensionTopics: ExtensionTopics; + topicSpaces: TopicSpaces; topicTypes: TopicTypes; verifiedPartners: VerifiedPartners; } diff --git a/sdk/eventgrid/arm-eventgrid/src/lroImpl.ts b/sdk/eventgrid/arm-eventgrid/src/lroImpl.ts index 518d5f053b4e..dd803cd5e28c 100644 --- a/sdk/eventgrid/arm-eventgrid/src/lroImpl.ts +++ b/sdk/eventgrid/arm-eventgrid/src/lroImpl.ts @@ -6,29 +6,37 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { AbortSignalLike } from "@azure/abort-controller"; import { LongRunningOperation, LroResponse } from "@azure/core-lro"; -export class LroImpl implements LongRunningOperation { - constructor( - private sendOperationFn: (args: any, spec: any) => Promise>, - private args: Record, - private spec: { - readonly requestBody?: unknown; - readonly path?: string; - readonly httpMethod: string; - } & Record, - public requestPath: string = spec.path!, - public requestMethod: string = spec.httpMethod - ) {} - public async sendInitialRequest(): Promise> { - return this.sendOperationFn(this.args, this.spec); - } - public async sendPollRequest(path: string): Promise> { - const { requestBody, ...restSpec } = this.spec; - return this.sendOperationFn(this.args, { - ...restSpec, - path, - httpMethod: "GET" - }); - } +export function createLroSpec(inputs: { + sendOperationFn: (args: any, spec: any) => Promise>; + args: Record; + spec: { + readonly requestBody?: unknown; + readonly path?: string; + readonly httpMethod: string; + } & Record; +}): LongRunningOperation { + const { args, spec, sendOperationFn } = inputs; + return { + requestMethod: spec.httpMethod, + requestPath: spec.path!, + sendInitialRequest: () => sendOperationFn(args, spec), + sendPollRequest: ( + path: string, + options?: { abortSignal?: AbortSignalLike } + ) => { + const { requestBody, ...restSpec } = spec; + return sendOperationFn(args, { + ...restSpec, + httpMethod: "GET", + path, + abortSignal: options?.abortSignal + }); + } + }; } diff --git a/sdk/eventgrid/arm-eventgrid/src/models/index.ts b/sdk/eventgrid/arm-eventgrid/src/models/index.ts index 7c881cc8bcb2..6fa227f07d46 100644 --- a/sdk/eventgrid/arm-eventgrid/src/models/index.ts +++ b/sdk/eventgrid/arm-eventgrid/src/models/index.ts @@ -8,6 +8,12 @@ import * as coreClient from "@azure/core-client"; +export type PartnerDestinationInfoUnion = + | PartnerDestinationInfo + | WebhookPartnerDestinationInfo; +export type PartnerUpdateDestinationInfoUnion = + | PartnerUpdateDestinationInfo + | WebhookUpdatePartnerDestinationInfo; export type InputSchemaMappingUnion = | InputSchemaMapping | JsonInputSchemaMapping; @@ -15,6 +21,30 @@ export type DeliveryAttributeMappingUnion = | DeliveryAttributeMapping | StaticDeliveryAttributeMapping | DynamicDeliveryAttributeMapping; +export type DeadLetterDestinationUnion = + | DeadLetterDestination + | StorageBlobDeadLetterDestination; +export type FilterUnion = + | Filter + | NumberInFilter + | NumberNotInFilter + | NumberLessThanFilter + | NumberGreaterThanFilter + | NumberLessThanOrEqualsFilter + | NumberGreaterThanOrEqualsFilter + | BoolEqualsFilter + | StringInFilter + | StringNotInFilter + | StringBeginsWithFilter + | StringEndsWithFilter + | StringContainsFilter + | NumberInRangeFilter + | NumberNotInRangeFilter + | StringNotBeginsWithFilter + | StringNotEndsWithFilter + | StringNotContainsFilter + | IsNullOrUndefinedFilter + | IsNotNullFilter; export type EventSubscriptionDestinationUnion = | EventSubscriptionDestination | WebHookEventSubscriptionDestination @@ -23,7 +53,8 @@ export type EventSubscriptionDestinationUnion = | HybridConnectionEventSubscriptionDestination | ServiceBusQueueEventSubscriptionDestination | ServiceBusTopicEventSubscriptionDestination - | AzureFunctionEventSubscriptionDestination; + | AzureFunctionEventSubscriptionDestination + | PartnerEventSubscriptionDestination; export type AdvancedFilterUnion = | AdvancedFilter | NumberInAdvancedFilter @@ -45,9 +76,101 @@ export type AdvancedFilterUnion = | StringNotContainsAdvancedFilter | IsNullOrUndefinedAdvancedFilter | IsNotNullAdvancedFilter; -export type DeadLetterDestinationUnion = - | DeadLetterDestination - | StorageBlobDeadLetterDestination; +export type PartnerClientAuthenticationUnion = + | PartnerClientAuthentication + | AzureADPartnerClientAuthentication; + +/** Metadata pertaining to creation and last modification of the resource. */ +export interface SystemData { + /** The identity that created the resource. */ + createdBy?: string; + /** The type of identity that created the resource. */ + createdByType?: CreatedByType; + /** The timestamp of resource creation (UTC). */ + createdAt?: Date; + /** The identity that last modified the resource. */ + lastModifiedBy?: string; + /** The type of identity that last modified the resource. */ + lastModifiedByType?: CreatedByType; + /** The timestamp of resource last modification (UTC) */ + lastModifiedAt?: Date; +} + +/** Definition of a Resource. */ +export interface Resource { + /** + * Fully qualified identifier of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; + /** + * Name of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * Type of the resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; +} + +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ +export interface ErrorResponse { + /** The error object. */ + error?: ErrorDetail; +} + +/** The error detail. */ +export interface ErrorDetail { + /** + * The error code. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly code?: string; + /** + * The error message. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly message?: string; + /** + * The error target. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly target?: string; + /** + * The error details. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly details?: ErrorDetail[]; + /** + * The error additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly additionalInfo?: ErrorAdditionalInfo[]; +} + +/** The resource management error additional info. */ +export interface ErrorAdditionalInfo { + /** + * The additional info type. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** + * The additional info. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly info?: Record; +} + +/** Result of the List CA Certificate operation. */ +export interface CaCertificatesListResult { + /** A collection of CA Certificate. */ + value?: CaCertificate[]; + /** A link for the next page of CA Certificate. */ + nextLink?: string; +} /** Properties of the corresponding partner topic of a Channel. */ export interface PartnerTopicInfo { @@ -100,39 +223,36 @@ export interface InlineEventProperties { dataSchemaUrl?: string; } -/** Metadata pertaining to creation and last modification of the resource. */ -export interface SystemData { - /** The identity that created the resource. */ - createdBy?: string; - /** The type of identity that created the resource. */ - createdByType?: CreatedByType; - /** The timestamp of resource creation (UTC). */ - createdAt?: Date; - /** The identity that last modified the resource. */ - lastModifiedBy?: string; - /** The type of identity that last modified the resource. */ - lastModifiedByType?: CreatedByType; - /** The timestamp of resource last modification (UTC) */ - lastModifiedAt?: Date; -} - -/** Definition of a Resource. */ -export interface Resource { - /** - * Fully qualified identifier of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly id?: string; +/** Properties of the corresponding partner destination of a Channel. */ +export interface PartnerDestinationInfo { + /** Polymorphic discriminator, which specifies the different types this object can be */ + endpointType: "WebHook"; /** - * Name of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. + * Azure subscription ID of the subscriber. The partner destination associated with the channel will be + * created under this Azure subscription. */ - readonly name?: string; + azureSubscriptionId?: string; /** - * Type of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. + * Azure Resource Group of the subscriber. The partner destination associated with the channel will be + * created under this resource group. */ - readonly type?: string; + resourceGroupName?: string; + /** Name of the partner destination associated with the channel. */ + name?: string; + /** Additional context of the partner destination endpoint. */ + endpointServiceContext?: string; + /** Change history of the resource move. */ + resourceMoveChangeHistory?: ResourceMoveChangeHistory[]; +} + +/** The change history of the resource move. */ +export interface ResourceMoveChangeHistory { + /** Azure subscription ID of the resource. */ + azureSubscriptionId?: string; + /** Azure Resource Group of the resource. */ + resourceGroupName?: string; + /** UTC timestamp of when the resource was changed. */ + changedTimeUtc?: Date; } /** Properties of the Channel update. */ @@ -142,10 +262,18 @@ export interface ChannelUpdateParameters { * the channel and corresponding partner topic or partner destination are deleted. */ expirationTimeIfNotActivatedUtc?: Date; + /** Partner destination properties which can be updated if the channel is of type PartnerDestination. */ + partnerDestinationInfo?: PartnerUpdateDestinationInfoUnion; /** Partner topic properties which can be updated if the channel is of type PartnerTopic. */ partnerTopicInfo?: PartnerUpdateTopicInfo; } +/** Properties of the corresponding partner destination of a Channel. */ +export interface PartnerUpdateDestinationInfo { + /** Polymorphic discriminator, which specifies the different types this object can be */ + endpointType: "WebHook"; +} + /** Update properties for the corresponding partner topic of a channel. */ export interface PartnerUpdateTopicInfo { /** Event type info for the partner topic */ @@ -166,6 +294,61 @@ export interface EventSubscriptionFullUrl { endpointUrl?: string; } +/** Result of the List Client Group operation. */ +export interface ClientGroupsListResult { + /** A collection of Client Group. */ + value?: ClientGroup[]; + /** A link for the next page of Client Group. */ + nextLink?: string; +} + +/** The Authentication properties for the client. */ +export interface ClientAuthentication { + /** The self signed certificate's thumbprints data used for authentication. */ + certificateThumbprint?: ClientCertificateThumbprint; + /** The CA certificate subject name used for authentication. */ + certificateSubject?: ClientCertificateSubjectDistinguishedName; +} + +/** Thumbprints are used by the service to validate the device permission when authentication is done using self signed certificate. */ +export interface ClientCertificateThumbprint { + /** The primary thumbprint used for validation. */ + primary?: string; + /** The secondary thumbprint used for validation. */ + secondary?: string; +} + +/** + * CA certificate subject distinguished name information used by service to authenticate clients. + * For more information, see https://docs.microsoft.com/en-us/dotnet/api/system.security.cryptography.x509certificates.x500distinguishedname?view=net-6.0#remarks + */ +export interface ClientCertificateSubjectDistinguishedName { + /** The common name field in the subject name. The allowed limit is 64 characters and it should be specified. */ + commonName?: string; + /** The organization field in the subject name. If present, the allowed limit is 64 characters. */ + organization?: string; + /** The organization unit field in the subject name. If present, the allowed limit is 32 characters. */ + organizationUnit?: string; + /** The country code field in the subject name. If present, the country code should be represented by two-letter code defined in ISO 2166-1 (alpha-2). For example: 'US'. */ + countryCode?: string; +} + +/** The certificate authentication properties for the client. */ +export interface ClientCertificateAuthentication { + /** The validation scheme used to authenticate the client. Default value is SubjectMatchesAuthenticationName. */ + validationScheme?: ClientCertificateValidationScheme; + /** The list of thumbprints that are allowed during client authentication. This property is required only if the validationScheme is 'ThumbprintMatch'. */ + allowedThumbprints?: string[]; +} + +/** Result of the List Client operation. */ +export interface ClientsListResult { + /** A collection of Client. */ + value?: Client[]; + /** A link for the next page of Client. */ + nextLink?: string; +} + /** PrivateEndpoint information. */ export interface PrivateEndpoint { /** The ARM identifier for Private Endpoint. */ @@ -195,6 +378,12 @@ export interface InboundIpRule { action?: IpActionType; } +/** Describes an EventGrid Resource Sku. */ +export interface ResourceSku { + /** The Sku name of the resource. The possible values are: Basic or Premium. */ + name?: Sku; +} + /** The identity information for the resource. */ export interface IdentityInfo { /** The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. */ @@ -225,6 +414,8 @@ export interface DomainUpdateParameters { tags?: { [propertyName: string]: string }; /** Identity information for the resource. */ identity?: IdentityInfo; + /** The Sku pricing tier for the domain. */ + sku?: ResourceSku; /** * This determines if traffic is allowed over public network. By default it is enabled. * You can further restrict to specific IPs by configuring @@ -232,6 +423,8 @@ export interface DomainUpdateParameters { publicNetworkAccess?: PublicNetworkAccess; /** This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. */ inboundIpRules?: InboundIpRule[]; + /** Minimum TLS version of the publisher allowed to publish to this domain */ + minimumTlsVersionAllowed?: TlsVersion; /** This boolean is used to enable or disable local auth. Default value is false. When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to the domain. */ disableLocalAuth?: boolean; /** @@ -256,6 +449,8 @@ export interface DomainUpdateParameters { autoDeleteTopicWithLastSubscription?: boolean; /** The data residency boundary for the domain. */ dataResidencyBoundary?: DataResidencyBoundary; + /** The eventTypeInfo for the domain. */ + eventTypeInfo?: EventTypeInfo; } /** Result of the List Domains operation. */ @@ -302,6 +497,132 @@ export interface DeliveryAttributeMapping { name?: string; } +/** Properties of the delivery configuration information of the event subscription. */ +export interface DeliveryConfiguration { + /** Delivery mode of the event subscription. */ + deliveryMode?: DeliveryMode; + /** This property should be populated when deliveryMode is queue and represents information about the queue subscription. */ + queue?: QueueInfo; +} + +/** Properties of the Queue info for event subscription. */ +export interface QueueInfo { + /** + * Maximum period in seconds in which once the message is in received (by the client) state and waiting to be accepted, released or rejected. + * If this time elapsed after a message has been received by the client and not transitioned into accepted (not processed), released or rejected, + * the message is available for redelivery. This is an optional field, where default is 60 seconds, minimum is 60 seconds and maximum is 300 seconds. + */ + receiveLockDurationInSeconds?: number; + /** The maximum delivery count of the events. */ + maxDeliveryCount?: number; + /** + * The dead letter destination of the event subscription. Any event that cannot be delivered to its' destination is sent to the dead letter destination. + * Uses the managed identity setup on the parent resource (namely, topic) to acquire the authentication tokens being used during delivery / dead-lettering. + */ + deadLetterDestinationWithResourceIdentity?: DeadLetterWithResourceIdentity; + /** + * Time span duration in ISO 8601 format that determines how long messages are available to the subscription from the time the message was published. + * This duration value is expressed using the following format: \'P(n)Y(n)M(n)DT(n)H(n)M(n)S\', where: + * - (n) is replaced by the value of each time element that follows the (n). + * - P is the duration (or Period) designator and is always placed at the beginning of the duration. + * - Y is the year designator, and it follows the value for the number of years. + * - M is the month designator, and it follows the value for the number of months. + * - W is the week designator, and it follows the value for the number of weeks. + * - D is the day designator, and it follows the value for the number of days. + * - T is the time designator, and it precedes the time components. + * - H is the hour designator, and it follows the value for the number of hours. + * - M is the minute designator, and it follows the value for the number of minutes. + * - S is the second designator, and it follows the value for the number of seconds. + * This duration value cannot be set greater than the topic’s EventRetentionInDays. It is is an optional field where its minimum value is 1 minute, and its maximum is determined + * by topic’s EventRetentionInDays value. The followings are examples of valid values: + * - \'P0DT23H12M\' or \'PT23H12M\': for duration of 23 hours and 12 minutes. + * - \'P1D\' or \'P1DT0H0M0S\': for duration of 1 day. + */ + eventTimeToLive?: string; +} + +/** Information about the deadletter destination with resource identity. */ +export interface DeadLetterWithResourceIdentity { + /** The identity to use when dead-lettering events. */ + identity?: EventSubscriptionIdentity; + /** + * Information about the destination where events have to be delivered for the event subscription. + * Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering. + */ + deadLetterDestination?: DeadLetterDestinationUnion; +} + +/** The identity information with the event subscription. */ +export interface EventSubscriptionIdentity { + /** The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. */ + type?: EventSubscriptionIdentityType; + /** The user identity associated with the resource. */ + userAssignedIdentity?: string; +} + +/** Information about the dead letter destination for an event subscription. To configure a deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from this class. */ +export interface DeadLetterDestination { + /** Polymorphic discriminator, which specifies the different types this object can be */ + endpointType: "StorageBlob"; +} + +/** Filters configuration for the Event Subscription. */ +export interface FiltersConfiguration { + /** A list of applicable event types that need to be part of the event subscription. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null. */ + includedEventTypes?: string[]; + /** An array of filters that are used for filtering event subscriptions. */ + filters?: FilterUnion[]; +} + +/** + * This is the base type that represents a filter. To configure a filter, do not directly instantiate an object of this class. Instead, instantiate + * an object of a derived class such as BoolEqualsFilter, NumberInFilter, StringEqualsFilter etc depending on the type of the key based on + * which you want to filter. + */ +export interface Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: + | "NumberIn" + | "NumberNotIn" + | "NumberLessThan" + | "NumberGreaterThan" + | "NumberLessThanOrEquals" + | "NumberGreaterThanOrEquals" + | "BoolEquals" + | "StringIn" + | "StringNotIn" + | "StringBeginsWith" + | "StringEndsWith" + | "StringContains" + | "NumberInRange" + | "NumberNotInRange" + | "StringNotBeginsWith" + | "StringNotEndsWith" + | "StringNotContains" + | "IsNullOrUndefined" + | "IsNotNull"; + /** The field/property in the event based on which you want to filter. */ + key?: string; +} + +/** Properties of the Event Subscription update. */ +export interface SubscriptionUpdateParameters { + /** Information about the delivery configuration of the event subscription. */ + deliveryConfiguration?: DeliveryConfiguration; + /** The event delivery schema for the event subscription. */ + eventDeliverySchema?: DeliverySchema; + /** Information about the filter for the event subscription. */ + filtersConfiguration?: FiltersConfiguration; +} + +/** Result of the List event subscriptions operation. */ +export interface SubscriptionsListResult { + /** A collection of Subscriptions. */ + value?: Subscription[]; + /** A link for the next page of event subscriptions */ + nextLink?: string; +} + /** Information about the destination for an event subscription. */ export interface EventSubscriptionDestination { /** Polymorphic discriminator, which specifies the different types this object can be */ @@ -312,7 +633,8 @@ export interface EventSubscriptionDestination { | "HybridConnection" | "ServiceBusQueue" | "ServiceBusTopic" - | "AzureFunction"; + | "AzureFunction" + | "PartnerDestination"; } /** Information about the delivery for an event subscription with resource identity. */ @@ -326,14 +648,6 @@ export interface DeliveryWithResourceIdentity { destination?: EventSubscriptionDestinationUnion; } -/** The identity information with the event subscription. */ -export interface EventSubscriptionIdentity { - /** The type of managed identity used. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user-assigned identities. The type 'None' will remove any identity. */ - type?: EventSubscriptionIdentityType; - /** The user identity associated with the resource. */ - userAssignedIdentity?: string; -} - /** Filter for the Event Subscription. */ export interface EventSubscriptionFilter { /** @@ -395,23 +709,6 @@ export interface RetryPolicy { eventTimeToLiveInMinutes?: number; } -/** Information about the dead letter destination for an event subscription. To configure a deadletter destination, do not directly instantiate an object of this class. Instead, instantiate an object of a derived class. Currently, StorageBlobDeadLetterDestination is the only class that derives from this class. */ -export interface DeadLetterDestination { - /** Polymorphic discriminator, which specifies the different types this object can be */ - endpointType: "StorageBlob"; -} - -/** Information about the deadletter destination with resource identity. */ -export interface DeadLetterWithResourceIdentity { - /** The identity to use when dead-lettering events. */ - identity?: EventSubscriptionIdentity; - /** - * Information about the destination where events have to be delivered for the event subscription. - * Uses the managed identity setup on the parent resource (namely, topic or domain) to acquire the authentication tokens being used during delivery / dead-lettering. - */ - deadLetterDestination?: DeadLetterDestinationUnion; -} - /** Properties of the Event Subscription update. */ export interface EventSubscriptionUpdateParameters { /** @@ -454,62 +751,170 @@ export interface EventSubscriptionsListResult { nextLink?: string; } -/** Result of the List Operations operation */ -export interface OperationsListResult { - /** A collection of operations */ - value?: Operation[]; -} - -/** Represents an operation returned by the GetOperations request. */ -export interface Operation { - /** Name of the operation. */ - name?: string; - /** Display name of the operation. */ - display?: OperationInfo; - /** Origin of the operation. */ - origin?: string; - /** This Boolean is used to determine if the operation is a data plane action or not. */ - isDataAction?: boolean; - /** Properties of the operation. */ - properties?: Record; +/** Properties of the Topics Configuration. */ +export interface TopicsConfiguration { + /** + * The hostname for the topics configuration. This is a read-only property. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly hostname?: string; } -/** Information about an operation */ -export interface OperationInfo { - /** Name of the provider */ - provider?: string; - /** Name of the resource type */ - resource?: string; - /** Name of the operation */ - operation?: string; - /** Description of the operation */ - description?: string; +/** Properties of the Topic Spaces Configuration. */ +export interface TopicSpacesConfiguration { + /** Indicate if Topic Spaces Configuration is enabled for the namespace. Default is Disabled. */ + state?: TopicSpacesConfigurationState; + /** + * Fully qualified Azure Resource Id for the Event Grid Topic to which events will be routed to from TopicSpaces under a namespace. + * This property should be in the following format '/subscriptions/{subId}/resourcegroups/{resourceGroupName}/providers/microsoft.EventGrid/topics/{topicName}'. + * This topic should reside in the same region where namespace is located. + */ + routeTopicResourceId?: string; + /** + * The endpoint for the topic spaces configuration. This is a read-only property. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly hostname?: string; + /** Routing enrichments for topic spaces configuration */ + routingEnrichments?: RoutingEnrichments; + /** Client authentication settings for topic spaces configuration. */ + clientAuthentication?: ClientAuthenticationSettings; + /** + * The maximum session expiry in hours. The property default value is 1 hour. + * Min allowed value is 1 hour and max allowed value is 8 hours. + */ + maximumSessionExpiryInHours?: number; + /** + * The maximum number of sessions per authentication name. The property default value is 1. + * Min allowed value is 1 and max allowed value is 100. + */ + maximumClientSessionsPerAuthenticationName?: number; + /** Routing identity info for topic spaces configuration. */ + routingIdentityInfo?: RoutingIdentityInfo; } -/** Properties of the Topic update */ -export interface TopicUpdateParameters { - /** Tags of the Topic resource. */ +export interface RoutingEnrichments { + static?: StaticRoutingEnrichment[]; + dynamic?: DynamicRoutingEnrichment[]; +} + +export interface StaticRoutingEnrichment { + /** Static routing enrichment key. */ + key?: string; + /** Static routing enrichment value type. For e.g. this property value can be 'String'. */ + valueType?: StaticRoutingEnrichmentType; +} + +export interface DynamicRoutingEnrichment { + /** Dynamic routing enrichment key. */ + key?: string; + /** Dynamic routing enrichment value. */ + value?: string; +} + +/** Client authentication settings for namespace resource. */ +export interface ClientAuthenticationSettings { + /** Alternative authentication name sources related to client authentication settings for namespace resource. */ + alternativeAuthenticationNameSources?: AlternativeAuthenticationNameSource[]; +} + +/** Routing identity info for topic spaces configuration. */ +export interface RoutingIdentityInfo { + type?: RoutingIdentityType; + userAssignedIdentity?: string; +} + +/** Represents available Sku pricing tiers. */ +export interface NamespaceSku { + /** The name of the SKU. */ + name?: SkuName; + /** + * Specifies the number of Throughput Units that defines the capacity for the namespace. The property default value is + * 1 which signifies 1 Throughput Unit = 1MB/s ingress and 2MB/s egress per namespace. Min capacity is 1 and + * max allowed capacity is 20. + */ + capacity?: number; +} + +/** Properties to update namespace. */ +export interface NamespaceUpdateParameters { + /** Tags of the namespace resource. */ tags?: { [propertyName: string]: string }; - /** Topic resource identity information. */ + /** Namespace resource identity information. */ identity?: IdentityInfo; + /** Represents available Sku pricing tiers. */ + sku?: NamespaceSku; + /** Topic spaces configuration properties that can be updated. */ + topicSpacesConfiguration?: UpdateTopicSpacesConfigurationInfo; /** * This determines if traffic is allowed over public network. By default it is enabled. - * You can further restrict to specific IPs by configuring + * You can further restrict to specific IPs by configuring */ publicNetworkAccess?: PublicNetworkAccess; /** This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. */ inboundIpRules?: InboundIpRule[]; - /** This boolean is used to enable or disable local auth. Default value is false. When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to the topic. */ - disableLocalAuth?: boolean; - /** The data residency boundary for the topic. */ - dataResidencyBoundary?: DataResidencyBoundary; } -/** Result of the List Topics operation */ -export interface TopicsListResult { - /** A collection of Topics */ - value?: Topic[]; - /** A link for the next page of topics */ +/** Properties of the topic spaces configuration info of a namespace. */ +export interface UpdateTopicSpacesConfigurationInfo { + /** Indicate if Topic Spaces Configuration is enabled for the namespace. Default is Disabled. */ + state?: TopicSpacesConfigurationState; + /** This property is used to specify custom topic to which events will be routed to from topic spaces configuration under namespace. */ + routeTopicResourceId?: string; + /** Routing enrichments for topic spaces configuration. */ + routingEnrichments?: RoutingEnrichments; + /** Client authentication settings for topic spaces configuration. */ + clientAuthentication?: ClientAuthenticationSettings; + /** + * The maximum session expiry in hours. The property default value is 1 hour. + * Min allowed value is 1 hour and max allowed value is 8 hours. + */ + maximumSessionExpiryInHours?: number; + /** + * The maximum number of sessions per authentication name. The property default value is 1. + * Min allowed value is 1 and max allowed value is 100. + */ + maximumClientSessionsPerAuthenticationName?: number; + /** Routing identity info for topic spaces configuration. */ + routingIdentityInfo?: RoutingIdentityInfo; +} + +/** Result of the List Namespaces operation. */ +export interface NamespacesListResult { + /** A collection of namespaces. */ + value?: Namespace[]; + /** A link for the next page of namespaces. */ + nextLink?: string; +} + +/** Shared access keys of the Namespace. */ +export interface NamespaceSharedAccessKeys { + /** Shared access key1 for the namespace. */ + key1?: string; + /** Shared access key2 for the namespace. */ + key2?: string; +} + +/** Namespace regenerate share access key request. */ +export interface NamespaceRegenerateKeyRequest { + /** Key name to regenerate key1 or key2. */ + keyName: string; +} + +/** Properties of the namespace topic update. */ +export interface NamespaceTopicUpdateParameters { + /** + * Event retention for the namespace topic expressed in days. The property default value is 1 day. + * Min event retention duration value is 1 day and max event retention duration value is 1 day. + */ + eventRetentionInDays?: number; +} + +/** Result of the List namespace topics operation. */ +export interface NamespaceTopicsListResult { + /** A collection of namespace topics. */ + value?: NamespaceTopic[]; + /** A link for the next page of namespace topics. */ nextLink?: string; } @@ -527,6 +932,38 @@ export interface TopicRegenerateKeyRequest { keyName: string; } +/** Result of the List Operations operation */ +export interface OperationsListResult { + /** A collection of operations */ + value?: Operation[]; +} + +/** Represents an operation returned by the GetOperations request. */ +export interface Operation { + /** Name of the operation. */ + name?: string; + /** Display name of the operation. */ + display?: OperationInfo; + /** Origin of the operation. */ + origin?: string; + /** This Boolean is used to determine if the operation is a data plane action or not. */ + isDataAction?: boolean; + /** Properties of the operation. */ + properties?: Record; +} + +/** Information about an operation */ +export interface OperationInfo { + /** Name of the provider */ + provider?: string; + /** Name of the resource type */ + resource?: string; + /** Name of the operation */ + operation?: string; + /** Description of the operation */ + description?: string; +} + /** The partner authorization details. */ export interface PartnerAuthorization { /** @@ -568,6 +1005,20 @@ export interface PartnerConfigurationsListResult { nextLink?: string; } +/** Properties of the Partner Destination that can be updated. */ +export interface PartnerDestinationUpdateParameters { + /** Tags of the Partner Destination resource. */ + tags?: { [propertyName: string]: string }; +} + +/** Result of the List Partner Destinations operation. */ +export interface PartnerDestinationsListResult { + /** A collection of partner destinations. */ + value?: PartnerDestination[]; + /** A link for the next page of partner destinations. */ + nextLink?: string; +} + /** Properties of the Partner Namespace update. */ export interface PartnerNamespaceUpdateParameters { /** Tags of the Partner Namespace. */ @@ -579,6 +1030,8 @@ export interface PartnerNamespaceUpdateParameters { publicNetworkAccess?: PublicNetworkAccess; /** This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. */ inboundIpRules?: InboundIpRule[]; + /** Minimum TLS version of the publisher allowed to publish to this domain */ + minimumTlsVersionAllowed?: TlsVersion; /** This boolean is used to enable or disable local auth. Default value is false. When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to the partner namespace. */ disableLocalAuth?: boolean; } @@ -635,6 +1088,14 @@ export interface PartnerTopicsListResult { nextLink?: string; } +/** Result of the List Permission Binding operation. */ +export interface PermissionBindingsListResult { + /** A collection of Permission Binding. */ + value?: PermissionBinding[]; + /** A link for the next page of Permission Binding. */ + nextLink?: string; +} + /** Result of the list of all private endpoint connections operation. */ export interface PrivateEndpointConnectionListResult { /** A collection of private endpoint connection resources. */ @@ -681,12 +1142,61 @@ export interface SystemTopicsListResult { nextLink?: string; } +/** Definition of an Extended Location */ +export interface ExtendedLocation { + /** Fully qualified name of the extended location. */ + name?: string; + /** Type of the extended location. */ + type?: string; +} + +/** Properties of the Topic update */ +export interface TopicUpdateParameters { + /** Tags of the Topic resource. */ + tags?: { [propertyName: string]: string }; + /** Topic resource identity information. */ + identity?: IdentityInfo; + /** The Sku pricing tier for the topic. */ + sku?: ResourceSku; + /** + * This determines if traffic is allowed over public network. By default it is enabled. + * You can further restrict to specific IPs by configuring + */ + publicNetworkAccess?: PublicNetworkAccess; + /** This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. */ + inboundIpRules?: InboundIpRule[]; + /** Minimum TLS version of the publisher allowed to publish to this domain */ + minimumTlsVersionAllowed?: TlsVersion; + /** This boolean is used to enable or disable local auth. Default value is false. When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to the topic. */ + disableLocalAuth?: boolean; + /** The data residency boundary for the topic. */ + dataResidencyBoundary?: DataResidencyBoundary; + /** The eventTypeInfo for the topic. */ + eventTypeInfo?: EventTypeInfo; +} + +/** Result of the List Topics operation */ +export interface TopicsListResult { + /** A collection of Topics */ + value?: Topic[]; + /** A link for the next page of topics */ + nextLink?: string; +} + /** Result of the List Event Types operation */ export interface EventTypesListResult { /** A collection of event types */ value?: EventType[]; } +/** Result of the List Topic Space operation. */ +export interface TopicSpacesListResult { + /** A collection of Topic Space. */ + value?: TopicSpace[]; + /** A link for the next page of Topic Space. */ + nextLink?: string; +} + /** Result of the List Topic Types operation */ export interface TopicTypesListResult { /** A collection of topic types */ @@ -714,6 +1224,12 @@ export interface VerifiedPartnersListResult { nextLink?: string; } +/** Partner client authentication */ +export interface PartnerClientAuthentication { + /** Polymorphic discriminator, which specifies the different types this object can be */ + clientAuthenticationType: "AzureAD"; +} + /** This is used to express the source of an input schema mapping for a single target field in the Event Grid Event schema. This is currently used in the mappings for the 'id', 'topic' and 'eventtime' properties. This represents a field in the input event schema. */ export interface JsonField { /** Name of a field in the input event schema that's to be used as the source of a mapping. */ @@ -733,6 +1249,34 @@ export interface JsonFieldWithDefault { defaultValue?: string; } +/** The CA Certificate resource. */ +export interface CaCertificate extends Resource { + /** + * The system metadata relating to the CaCertificate resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** Description for the CA Certificate resource. */ + description?: string; + /** Base64 encoded PEM (Privacy Enhanced Mail) format certificate data. */ + encodedCertificate?: string; + /** + * Certificate issue time in UTC. This is a read-only field. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly issueTimeInUtc?: Date; + /** + * Certificate expiry time in UTC. This is a read-only field. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly expiryTimeInUtc?: Date; + /** + * Provisioning state of the CA Certificate resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: CaCertificateProvisioningState; +} + /** Channel info. */ export interface Channel extends Resource { /** @@ -744,6 +1288,8 @@ export interface Channel extends Resource { channelType?: ChannelType; /** This property should be populated when channelType is PartnerTopic and represents information about the partner topic resource corresponding to the channel. */ partnerTopicInfo?: PartnerTopicInfo; + /** This property should be populated when channelType is PartnerDestination and represents information about the partner destination resource corresponding to the channel. */ + partnerDestinationInfo?: PartnerDestinationInfoUnion; /** Context or helpful message that can be used during the approval process by the subscriber. */ messageForActivation?: string; /** Provisioning state of the channel. */ @@ -757,6 +1303,57 @@ export interface Channel extends Resource { expirationTimeIfNotActivatedUtc?: Date; } +/** The Client group resource. */ +export interface ClientGroup extends Resource { + /** + * The system metadata relating to the ClientGroup resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** Description for the Client Group resource. */ + description?: string; + /** + * The grouping query for the clients. + * Example : attributes.keyName IN ['a', 'b', 'c']. + */ + query?: string; + /** + * Provisioning state of the ClientGroup resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ClientGroupProvisioningState; +} + +/** The Client resource. */ +export interface Client extends Resource { + /** + * The system metadata relating to the Client resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** Description for the Client resource. */ + description?: string; + /** The name presented by the client for authentication. The default value is the name of the resource. */ + authenticationName?: string; + /** Authentication information for the client. */ + authentication?: ClientAuthentication; + /** The client certificate authentication information. */ + clientCertificateAuthentication?: ClientCertificateAuthentication; + /** Indicates if the client is enabled or not. Default value is Enabled. */ + state?: ClientState; + /** + * Attributes for the client. Supported values are int, bool, string, string[]. + * Example: + * "attributes": { "room": "345", "floor": 12, "deviceTypes": ["Fan", "Light"] } + */ + attributes?: { [propertyName: string]: any }; + /** + * Provisioning state of the Client resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ClientProvisioningState; +} + export interface PrivateEndpointConnection extends Resource { /** The Private Endpoint resource for this Connection. */ privateEndpoint?: PrivateEndpoint; @@ -790,7 +1387,27 @@ export interface DomainTopic extends Resource { readonly provisioningState?: DomainTopicProvisioningState; } -/** Event Subscription */ +/** Event Subscription. */ +export interface Subscription extends Resource { + /** + * The system metadata relating to Event Subscription resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** + * Provisioning state of the event subscription. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: SubscriptionProvisioningState; + /** Information about the delivery configuration of the event subscription. */ + deliveryConfiguration?: DeliveryConfiguration; + /** The event delivery schema for the event subscription. */ + eventDeliverySchema?: DeliverySchema; + /** Information about the filter for the event subscription. */ + filtersConfiguration?: FiltersConfiguration; +} + +/** Event Subscription. */ export interface EventSubscription extends Resource { /** * The system metadata relating to Event Subscription resource. @@ -839,6 +1456,29 @@ export interface EventSubscription extends Resource { deadLetterWithResourceIdentity?: DeadLetterWithResourceIdentity; } +/** Namespace topic details. */ +export interface NamespaceTopic extends Resource { + /** + * The system metadata relating to namespace topic resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** + * Provisioning state of the namespace topic. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: NamespaceTopicProvisioningState; + /** Publisher type of the namespace topic. */ + publisherType?: PublisherType; + /** This determines the format that is expected for incoming events published to the topic. */ + inputSchema?: EventInputSchema; + /** + * Event retention for the namespace topic expressed in days. The property default value is 1 day. + * Min event retention duration value is 1 day and max event retention duration value is 1 day. + */ + eventRetentionInDays?: number; +} + /** Partner configuration information */ export interface PartnerConfiguration extends Resource { /** @@ -856,6 +1496,34 @@ export interface PartnerConfiguration extends Resource { provisioningState?: PartnerConfigurationProvisioningState; } +/** The Permission binding resource. */ +export interface PermissionBinding extends Resource { + /** + * The system metadata relating to the PermissionBinding resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** Description for the Permission Binding resource. */ + description?: string; + /** + * The name of the Topic Space resource that the permission is bound to. + * The Topic space needs to be a resource under the same namespace the permission binding is a part of. + */ + topicSpaceName?: string; + /** The allowed permission. */ + permission?: PermissionType; + /** + * The name of the client group resource that the permission is bound to. + * The client group needs to be a resource under the same namespace the permission binding is a part of. + */ + clientGroupName?: string; + /** + * Provisioning state of the PermissionBinding resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: PermissionBindingProvisioningState; +} + /** Event Type for a subject under a topic */ export interface EventType extends Resource { /** Display name of the event type. */ @@ -881,6 +1549,30 @@ export interface ExtensionTopic extends Resource { systemTopic?: string; } +/** The Topic space resource. */ +export interface TopicSpace extends Resource { + /** + * The system metadata relating to the TopicSpace resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** Description for the Topic Space resource. */ + description?: string; + /** + * The topic filters in the topic space. + * Example: "topicTemplates": [ + * "devices/foo/bar", + * "devices/topic1/+", + * "devices/${principal.name}/${principal.attributes.keyName}" ]. + */ + topicTemplates?: string[]; + /** + * Provisioning state of the TopicSpace resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: TopicSpaceProvisioningState; +} + /** Properties of a topic type info. */ export interface TopicTypeInfo extends Resource { /** Namespace of the provider of the topic type. */ @@ -899,6 +1591,8 @@ export interface TopicTypeInfo extends Resource { sourceResourceFormat?: string; /** Supported source scopes. */ supportedScopesForSource?: TopicTypeSourceScope[]; + /** Flag to indicate that a topic type can support both regional or global system topics */ + areRegionalAndGlobalSourcesSupported?: boolean; } /** Verified partner information */ @@ -916,10 +1610,37 @@ export interface VerifiedPartner extends Resource { partnerDisplayName?: string; /** Details of the partner topic scenario. */ partnerTopicDetails?: PartnerDetails; + /** Details of the partner destination scenario. */ + partnerDestinationDetails?: PartnerDetails; /** Provisioning state of the verified partner. */ provisioningState?: VerifiedPartnerProvisioningState; } +/** Information about the WebHook of the partner destination. */ +export interface WebhookPartnerDestinationInfo extends PartnerDestinationInfo { + /** Polymorphic discriminator, which specifies the different types this object can be */ + endpointType: "WebHook"; + /** The URL that represents the endpoint of the partner destination. */ + endpointUrl?: string; + /** The base URL that represents the endpoint of the partner destination. */ + endpointBaseUrl?: string; + /** Partner client authentication */ + clientAuthentication?: PartnerClientAuthenticationUnion; +} + +/** Information about the update of the WebHook of the partner destination. */ +export interface WebhookUpdatePartnerDestinationInfo + extends PartnerUpdateDestinationInfo { + /** Polymorphic discriminator, which specifies the different types this object can be */ + endpointType: "WebHook"; + /** The URL that represents the endpoint of the partner destination. */ + endpointUrl?: string; + /** The base URL that represents the endpoint of the partner destination. */ + endpointBaseUrl?: string; + /** Partner client authentication */ + clientAuthentication?: PartnerClientAuthenticationUnion; +} + /** This enables publishing to Event Grid using a custom input schema. This can be used to map properties from a custom input JSON schema to the Event Grid event schema. */ export interface JsonInputSchemaMapping extends InputSchemaMapping { /** Polymorphic discriminator, which specifies the different types this object can be */ @@ -958,12 +1679,171 @@ export interface DynamicDeliveryAttributeMapping sourceField?: string; } -/** Information about the webhook destination for an event subscription. */ -export interface WebHookEventSubscriptionDestination - extends EventSubscriptionDestination { +/** Information about the storage blob based dead letter destination. */ +export interface StorageBlobDeadLetterDestination + extends DeadLetterDestination { /** Polymorphic discriminator, which specifies the different types this object can be */ - endpointType: "WebHook"; - /** The URL that represents the endpoint of the destination of an event subscription. */ + endpointType: "StorageBlob"; + /** The Azure Resource ID of the storage account that is the destination of the deadletter events */ + resourceId?: string; + /** The name of the Storage blob container that is the destination of the deadletter events */ + blobContainerName?: string; +} + +/** NumberIn Filter. */ +export interface NumberInFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberIn"; + /** The set of filter values. */ + values?: number[]; +} + +/** NumberNotIn Filter. */ +export interface NumberNotInFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberNotIn"; + /** The set of filter values. */ + values?: number[]; +} + +/** NumberLessThan Filter. */ +export interface NumberLessThanFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberLessThan"; + /** The filter value. */ + value?: number; +} + +/** NumberGreaterThan Filter. */ +export interface NumberGreaterThanFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberGreaterThan"; + /** The filter value. */ + value?: number; +} + +/** NumberLessThanOrEquals Filter. */ +export interface NumberLessThanOrEqualsFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberLessThanOrEquals"; + /** The filter value. */ + value?: number; +} + +/** NumberGreaterThanOrEquals Filter. */ +export interface NumberGreaterThanOrEqualsFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberGreaterThanOrEquals"; + /** The filter value. */ + value?: number; +} + +/** BoolEquals Filter. */ +export interface BoolEqualsFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "BoolEquals"; + /** The boolean filter value. */ + value?: boolean; +} + +/** StringIn Filter. */ +export interface StringInFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringIn"; + /** The set of filter values. */ + values?: string[]; +} + +/** StringNotIn Filter. */ +export interface StringNotInFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringNotIn"; + /** The set of filter values. */ + values?: string[]; +} + +/** StringBeginsWith Filter. */ +export interface StringBeginsWithFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringBeginsWith"; + /** The set of filter values. */ + values?: string[]; +} + +/** StringEndsWith Filter. */ +export interface StringEndsWithFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringEndsWith"; + /** The set of filter values. */ + values?: string[]; +} + +/** StringContains Filter. */ +export interface StringContainsFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringContains"; + /** The set of filter values. */ + values?: string[]; +} + +/** NumberInRange Filter. */ +export interface NumberInRangeFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberInRange"; + /** The set of filter values. */ + values?: number[][]; +} + +/** NumberNotInRange Filter. */ +export interface NumberNotInRangeFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "NumberNotInRange"; + /** The set of filter values. */ + values?: number[][]; +} + +/** StringNotBeginsWith Filter. */ +export interface StringNotBeginsWithFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringNotBeginsWith"; + /** The set of filter values. */ + values?: string[]; +} + +/** StringNotEndsWith Filter. */ +export interface StringNotEndsWithFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringNotEndsWith"; + /** The set of filter values. */ + values?: string[]; +} + +/** StringNotContains Filter. */ +export interface StringNotContainsFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "StringNotContains"; + /** The set of filter values. */ + values?: string[]; +} + +/** IsNullOrUndefined Filter. */ +export interface IsNullOrUndefinedFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "IsNullOrUndefined"; +} + +/** IsNotNull Filter. */ +export interface IsNotNullFilter extends Filter { + /** Polymorphic discriminator, which specifies the different types this object can be */ + operatorType: "IsNotNull"; +} + +/** Information about the webhook destination for an event subscription. */ +export interface WebHookEventSubscriptionDestination + extends EventSubscriptionDestination { + /** Polymorphic discriminator, which specifies the different types this object can be */ + endpointType: "WebHook"; + /** The URL that represents the endpoint of the destination of an event subscription. */ endpointUrl?: string; /** * The base URL that represents the endpoint of the destination of an event subscription. @@ -980,6 +1860,8 @@ export interface WebHookEventSubscriptionDestination azureActiveDirectoryApplicationIdOrUri?: string; /** Delivery attribute details. */ deliveryAttributeMappings?: DeliveryAttributeMappingUnion[]; + /** Minimum TLS version that should be supported by webhook endpoint */ + minimumTlsVersionAllowed?: TlsVersion; } /** Information about the event hub destination for an event subscription. */ @@ -1002,7 +1884,7 @@ export interface StorageQueueEventSubscriptionDestination resourceId?: string; /** The name of the Storage queue under a storage account that is the destination of an event subscription. */ queueName?: string; - /** Storage queue message time to live in seconds. */ + /** Storage queue message time to live in seconds. This value cannot be zero or negative with the exception of using -1 to indicate that the Time To Live of the message is Infinite. */ queueMessageTimeToLiveInSeconds?: number; } @@ -1054,6 +1936,14 @@ export interface AzureFunctionEventSubscriptionDestination deliveryAttributeMappings?: DeliveryAttributeMappingUnion[]; } +export interface PartnerEventSubscriptionDestination + extends EventSubscriptionDestination { + /** Polymorphic discriminator, which specifies the different types this object can be */ + endpointType: "PartnerDestination"; + /** The Azure Resource Id that represents the endpoint of a Partner Destination of an event subscription. */ + resourceId?: string; +} + /** NumberIn Advanced Filter. */ export interface NumberInAdvancedFilter extends AdvancedFilter { /** Polymorphic discriminator, which specifies the different types this object can be */ @@ -1203,36 +2093,37 @@ export interface IsNotNullAdvancedFilter extends AdvancedFilter { operatorType: "IsNotNull"; } -/** Information about the storage blob based dead letter destination. */ -export interface StorageBlobDeadLetterDestination - extends DeadLetterDestination { +/** Azure Active Directory Partner Client Authentication */ +export interface AzureADPartnerClientAuthentication + extends PartnerClientAuthentication { /** Polymorphic discriminator, which specifies the different types this object can be */ - endpointType: "StorageBlob"; - /** The Azure Resource ID of the storage account that is the destination of the deadletter events */ - resourceId?: string; - /** The name of the Storage blob container that is the destination of the deadletter events */ - blobContainerName?: string; + clientAuthenticationType: "AzureAD"; + /** The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests. */ + azureActiveDirectoryTenantId?: string; + /** The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests. */ + azureActiveDirectoryApplicationIdOrUri?: string; } /** EventGrid Domain. */ export interface Domain extends TrackedResource { - /** - * The system metadata relating to the Event Grid Domain resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; + /** The Sku pricing tier for the Event Grid Domain resource. */ + sku?: ResourceSku; /** Identity information for the Event Grid Domain resource. */ identity?: IdentityInfo; /** - * List of private endpoint connections. + * The system metadata relating to the Event Grid Domain resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly systemData?: SystemData; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ readonly privateEndpointConnections?: PrivateEndpointConnection[]; /** * Provisioning state of the Event Grid Domain Resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly provisioningState?: DomainProvisioningState; + /** Minimum TLS version of the publisher allowed to publish to this domain */ + minimumTlsVersionAllowed?: TlsVersion; /** * Endpoint for the Event Grid Domain Resource which is used for publishing the events. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1240,6 +2131,11 @@ export interface Domain extends TrackedResource { readonly endpoint?: string; /** This determines the format that Event Grid should expect for incoming events published to the Event Grid Domain Resource. */ inputSchema?: InputSchema; + /** + * Event Type Information for the domain. This information is provided by the publisher and can be used by the + * subscriber to view different types of events that are published. + */ + eventTypeInfo?: EventTypeInfo; /** Information about the InputSchemaMapping which specified the info about mapping event payload. */ inputSchemaMapping?: InputSchemaMappingUnion; /** @@ -1280,47 +2176,70 @@ export interface Domain extends TrackedResource { dataResidencyBoundary?: DataResidencyBoundary; } -/** EventGrid Topic */ -export interface Topic extends TrackedResource { - /** Identity information for the resource. */ +/** Namespace resource. */ +export interface Namespace extends TrackedResource { + /** Represents available Sku pricing tiers. */ + sku?: NamespaceSku; + /** Identity information for the Namespace resource. */ identity?: IdentityInfo; /** - * The system metadata relating to Topic resource. + * The system metadata relating to the namespace resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly systemData?: SystemData; - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly privateEndpointConnections?: PrivateEndpointConnection[]; - /** - * Provisioning state of the topic. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningState?: TopicProvisioningState; + privateEndpointConnections?: PrivateEndpointConnection[]; /** - * Endpoint for the topic. + * Provisioning state of the namespace resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly endpoint?: string; - /** This determines the format that Event Grid should expect for incoming events published to the topic. */ - inputSchema?: InputSchema; - /** This enables publishing using custom event schemas. An InputSchemaMapping can be specified to map various properties of a source schema to various required properties of the EventGridEvent schema. */ - inputSchemaMapping?: InputSchemaMappingUnion; + readonly provisioningState?: NamespaceProvisioningState; + /** Topics configuration information for the namespace resource */ + topicsConfiguration?: TopicsConfiguration; + /** Topic spaces configuration information for the namespace resource */ + topicSpacesConfiguration?: TopicSpacesConfiguration; /** - * Metric resource id for the topic. - * NOTE: This property will not be serialized. It can only be populated by the server. + * Allows the user to specify if the service is zone-redundant. This is a required property and user needs to specify this value explicitly. + * Once specified, this property cannot be updated. */ - readonly metricResourceId?: string; + isZoneRedundant?: boolean; /** * This determines if traffic is allowed over public network. By default it is enabled. - * You can further restrict to specific IPs by configuring + * You can further restrict to specific IPs by configuring */ publicNetworkAccess?: PublicNetworkAccess; /** This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. */ inboundIpRules?: InboundIpRule[]; - /** This boolean is used to enable or disable local auth. Default value is false. When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to the topic. */ - disableLocalAuth?: boolean; - /** Data Residency Boundary of the resource. */ - dataResidencyBoundary?: DataResidencyBoundary; + /** Minimum TLS version of the publisher allowed to publish to this namespace. Only TLS version 1.2 is supported. */ + minimumTlsVersionAllowed?: TlsVersion; +} + +/** Event Grid Partner Destination. */ +export interface PartnerDestination extends TrackedResource { + /** + * The system metadata relating to Partner Destination resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** The immutable Id of the corresponding partner registration. */ + partnerRegistrationImmutableId?: string; + /** Endpoint context associated with this partner destination. */ + endpointServiceContext?: string; + /** + * Expiration time of the partner destination. If this timer expires and the partner destination was never activated, + * the partner destination and corresponding channel are deleted. + */ + expirationTimeIfNotActivatedUtc?: Date; + /** + * Provisioning state of the partner destination. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: PartnerDestinationProvisioningState; + /** Activation state of the partner destination. */ + activationState?: PartnerDestinationActivationState; + /** Endpoint Base URL of the partner destination */ + endpointBaseUrl?: string; + /** Context or helpful message that can be used during the approval process. */ + messageForActivation?: string; } /** EventGrid Partner Namespace. */ @@ -1342,6 +2261,8 @@ export interface PartnerNamespace extends TrackedResource { * /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerRegistrations/{partnerRegistrationName}. */ partnerRegistrationFullyQualifiedId?: string; + /** Minimum TLS version of the publisher allowed to publish to this partner namespace */ + minimumTlsVersionAllowed?: TlsVersion; /** * Endpoint for the partner namespace. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1420,13 +2341,13 @@ export interface PartnerTopic extends TrackedResource { /** EventGrid System Topic. */ export interface SystemTopic extends TrackedResource { - /** Identity information for the resource. */ - identity?: IdentityInfo; /** * The system metadata relating to System Topic resource. * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly systemData?: SystemData; + /** Identity information for the resource. */ + identity?: IdentityInfo; /** * Provisioning state of the system topic. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1443,25 +2364,306 @@ export interface SystemTopic extends TrackedResource { readonly metricResourceId?: string; } -/** Known values of {@link ChannelType} that the service accepts. */ -export enum KnownChannelType { - /** PartnerTopic */ - PartnerTopic = "PartnerTopic" +/** EventGrid Topic */ +export interface Topic extends TrackedResource { + /** The Sku pricing tier for the topic. */ + sku?: ResourceSku; + /** Identity information for the resource. */ + identity?: IdentityInfo; + /** Kind of the resource. */ + kind?: ResourceKind; + /** Extended location of the resource. */ + extendedLocation?: ExtendedLocation; + /** + * The system metadata relating to Topic resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; + /** NOTE: This property will not be serialized. It can only be populated by the server. */ + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + /** + * Provisioning state of the topic. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: TopicProvisioningState; + /** + * Endpoint for the topic. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly endpoint?: string; + /** + * Event Type Information for the user topic. This information is provided by the publisher and can be used by the + * subscriber to view different types of events that are published. + */ + eventTypeInfo?: EventTypeInfo; + /** Minimum TLS version of the publisher allowed to publish to this topic */ + minimumTlsVersionAllowed?: TlsVersion; + /** This determines the format that Event Grid should expect for incoming events published to the topic. */ + inputSchema?: InputSchema; + /** This enables publishing using custom event schemas. An InputSchemaMapping can be specified to map various properties of a source schema to various required properties of the EventGridEvent schema. */ + inputSchemaMapping?: InputSchemaMappingUnion; + /** + * Metric resource id for the topic. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly metricResourceId?: string; + /** + * This determines if traffic is allowed over public network. By default it is enabled. + * You can further restrict to specific IPs by configuring + */ + publicNetworkAccess?: PublicNetworkAccess; + /** This can be used to restrict traffic from specific IPs instead of all IPs. Note: These are considered only if PublicNetworkAccess is enabled. */ + inboundIpRules?: InboundIpRule[]; + /** This boolean is used to enable or disable local auth. Default value is false. When the property is set to true, only AAD token will be used to authenticate if user is allowed to publish to the topic. */ + disableLocalAuth?: boolean; + /** Data Residency Boundary of the resource. */ + dataResidencyBoundary?: DataResidencyBoundary; } -/** - * Defines values for ChannelType. \ - * {@link KnownChannelType} can be used interchangeably with ChannelType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **PartnerTopic** - */ -export type ChannelType = string; - -/** Known values of {@link EventDefinitionKind} that the service accepts. */ -export enum KnownEventDefinitionKind { - /** Inline */ - Inline = "Inline" +/** Defines headers for CaCertificates_delete operation. */ +export interface CaCertificatesDeleteHeaders { + location?: string; +} + +/** Defines headers for Channels_delete operation. */ +export interface ChannelsDeleteHeaders { + location?: string; +} + +/** Defines headers for ClientGroups_delete operation. */ +export interface ClientGroupsDeleteHeaders { + location?: string; +} + +/** Defines headers for Clients_delete operation. */ +export interface ClientsDeleteHeaders { + location?: string; +} + +/** Defines headers for Domains_delete operation. */ +export interface DomainsDeleteHeaders { + location?: string; +} + +/** Defines headers for DomainTopics_delete operation. */ +export interface DomainTopicsDeleteHeaders { + location?: string; +} + +/** Defines headers for DomainTopicEventSubscriptions_delete operation. */ +export interface DomainTopicEventSubscriptionsDeleteHeaders { + location?: string; +} + +/** Defines headers for TopicEventSubscriptions_delete operation. */ +export interface TopicEventSubscriptionsDeleteHeaders { + location?: string; +} + +/** Defines headers for DomainEventSubscriptions_delete operation. */ +export interface DomainEventSubscriptionsDeleteHeaders { + location?: string; +} + +/** Defines headers for EventSubscriptions_delete operation. */ +export interface EventSubscriptionsDeleteHeaders { + location?: string; +} + +/** Defines headers for SystemTopicEventSubscriptions_delete operation. */ +export interface SystemTopicEventSubscriptionsDeleteHeaders { + location?: string; +} + +/** Defines headers for NamespaceTopicEventSubscriptions_delete operation. */ +export interface NamespaceTopicEventSubscriptionsDeleteHeaders { + location?: string; +} + +/** Defines headers for NamespaceTopicEventSubscriptions_update operation. */ +export interface NamespaceTopicEventSubscriptionsUpdateHeaders { + location?: string; +} + +/** Defines headers for PartnerTopicEventSubscriptions_delete operation. */ +export interface PartnerTopicEventSubscriptionsDeleteHeaders { + location?: string; +} + +/** Defines headers for Namespaces_delete operation. */ +export interface NamespacesDeleteHeaders { + location?: string; +} + +/** Defines headers for Namespaces_update operation. */ +export interface NamespacesUpdateHeaders { + location?: string; +} + +/** Defines headers for Namespaces_regenerateKey operation. */ +export interface NamespacesRegenerateKeyHeaders { + location?: string; +} + +/** Defines headers for NamespaceTopics_delete operation. */ +export interface NamespaceTopicsDeleteHeaders { + location?: string; +} + +/** Defines headers for NamespaceTopics_update operation. */ +export interface NamespaceTopicsUpdateHeaders { + location?: string; +} + +/** Defines headers for NamespaceTopics_regenerateKey operation. */ +export interface NamespaceTopicsRegenerateKeyHeaders { + location?: string; +} + +/** Defines headers for PartnerConfigurations_delete operation. */ +export interface PartnerConfigurationsDeleteHeaders { + location?: string; +} + +/** Defines headers for PartnerDestinations_delete operation. */ +export interface PartnerDestinationsDeleteHeaders { + location?: string; +} + +/** Defines headers for PartnerDestinations_update operation. */ +export interface PartnerDestinationsUpdateHeaders { + location?: string; +} + +/** Defines headers for PartnerNamespaces_delete operation. */ +export interface PartnerNamespacesDeleteHeaders { + location?: string; +} + +/** Defines headers for PartnerRegistrations_createOrUpdate operation. */ +export interface PartnerRegistrationsCreateOrUpdateHeaders { + location?: string; +} + +/** Defines headers for PartnerRegistrations_delete operation. */ +export interface PartnerRegistrationsDeleteHeaders { + location?: string; +} + +/** Defines headers for PartnerTopics_delete operation. */ +export interface PartnerTopicsDeleteHeaders { + location?: string; +} + +/** Defines headers for PermissionBindings_delete operation. */ +export interface PermissionBindingsDeleteHeaders { + location?: string; +} + +/** Defines headers for PrivateEndpointConnections_delete operation. */ +export interface PrivateEndpointConnectionsDeleteHeaders { + location?: string; +} + +/** Defines headers for SystemTopics_delete operation. */ +export interface SystemTopicsDeleteHeaders { + location?: string; +} + +/** Defines headers for Topics_delete operation. */ +export interface TopicsDeleteHeaders { + location?: string; +} + +/** Defines headers for Topics_regenerateKey operation. */ +export interface TopicsRegenerateKeyHeaders { + location?: string; +} + +/** Defines headers for TopicSpaces_delete operation. */ +export interface TopicSpacesDeleteHeaders { + location?: string; +} + +/** Known values of {@link CaCertificateProvisioningState} that the service accepts. */ +export enum KnownCaCertificateProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** Deleted */ + Deleted = "Deleted" +} + +/** + * Defines values for CaCertificateProvisioningState. \ + * {@link KnownCaCertificateProvisioningState} can be used interchangeably with CaCertificateProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Deleted** + */ +export type CaCertificateProvisioningState = string; + +/** Known values of {@link CreatedByType} that the service accepts. */ +export enum KnownCreatedByType { + /** User */ + User = "User", + /** Application */ + Application = "Application", + /** ManagedIdentity */ + ManagedIdentity = "ManagedIdentity", + /** Key */ + Key = "Key" +} + +/** + * Defines values for CreatedByType. \ + * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **User** \ + * **Application** \ + * **ManagedIdentity** \ + * **Key** + */ +export type CreatedByType = string; + +/** Known values of {@link ChannelType} that the service accepts. */ +export enum KnownChannelType { + /** PartnerTopic */ + PartnerTopic = "PartnerTopic", + /** PartnerDestination */ + PartnerDestination = "PartnerDestination" +} + +/** + * Defines values for ChannelType. \ + * {@link KnownChannelType} can be used interchangeably with ChannelType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **PartnerTopic** \ + * **PartnerDestination** + */ +export type ChannelType = string; + +/** Known values of {@link EventDefinitionKind} that the service accepts. */ +export enum KnownEventDefinitionKind { + /** Inline */ + Inline = "Inline" } /** @@ -1473,6 +2675,21 @@ export enum KnownEventDefinitionKind { */ export type EventDefinitionKind = string; +/** Known values of {@link PartnerEndpointType} that the service accepts. */ +export enum KnownPartnerEndpointType { + /** WebHook */ + WebHook = "WebHook" +} + +/** + * Defines values for PartnerEndpointType. \ + * {@link KnownPartnerEndpointType} can be used interchangeably with PartnerEndpointType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **WebHook** + */ +export type PartnerEndpointType = string; + /** Known values of {@link ChannelProvisioningState} that the service accepts. */ export enum KnownChannelProvisioningState { /** Creating */ @@ -1488,7 +2705,9 @@ export enum KnownChannelProvisioningState { /** Failed */ Failed = "Failed", /** IdleDueToMirroredPartnerTopicDeletion */ - IdleDueToMirroredPartnerTopicDeletion = "IdleDueToMirroredPartnerTopicDeletion" + IdleDueToMirroredPartnerTopicDeletion = "IdleDueToMirroredPartnerTopicDeletion", + /** IdleDueToMirroredPartnerDestinationDeletion */ + IdleDueToMirroredPartnerDestinationDeletion = "IdleDueToMirroredPartnerDestinationDeletion" } /** @@ -1502,7 +2721,8 @@ export enum KnownChannelProvisioningState { * **Succeeded** \ * **Canceled** \ * **Failed** \ - * **IdleDueToMirroredPartnerTopicDeletion** + * **IdleDueToMirroredPartnerTopicDeletion** \ + * **IdleDueToMirroredPartnerDestinationDeletion** */ export type ChannelProvisioningState = string; @@ -1524,29 +2744,119 @@ export enum KnownReadinessState { */ export type ReadinessState = string; -/** Known values of {@link CreatedByType} that the service accepts. */ -export enum KnownCreatedByType { - /** User */ - User = "User", - /** Application */ - Application = "Application", - /** ManagedIdentity */ - ManagedIdentity = "ManagedIdentity", - /** Key */ - Key = "Key" +/** Known values of {@link ClientGroupProvisioningState} that the service accepts. */ +export enum KnownClientGroupProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** Deleted */ + Deleted = "Deleted" } /** - * Defines values for CreatedByType. \ - * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * Defines values for ClientGroupProvisioningState. \ + * {@link KnownClientGroupProvisioningState} can be used interchangeably with ClientGroupProvisioningState, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **User** \ - * **Application** \ - * **ManagedIdentity** \ - * **Key** + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Deleted** */ -export type CreatedByType = string; +export type ClientGroupProvisioningState = string; + +/** Known values of {@link ClientCertificateValidationScheme} that the service accepts. */ +export enum KnownClientCertificateValidationScheme { + /** SubjectMatchesAuthenticationName */ + SubjectMatchesAuthenticationName = "SubjectMatchesAuthenticationName", + /** DnsMatchesAuthenticationName */ + DnsMatchesAuthenticationName = "DnsMatchesAuthenticationName", + /** UriMatchesAuthenticationName */ + UriMatchesAuthenticationName = "UriMatchesAuthenticationName", + /** IpMatchesAuthenticationName */ + IpMatchesAuthenticationName = "IpMatchesAuthenticationName", + /** EmailMatchesAuthenticationName */ + EmailMatchesAuthenticationName = "EmailMatchesAuthenticationName", + /** ThumbprintMatch */ + ThumbprintMatch = "ThumbprintMatch" +} + +/** + * Defines values for ClientCertificateValidationScheme. \ + * {@link KnownClientCertificateValidationScheme} can be used interchangeably with ClientCertificateValidationScheme, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SubjectMatchesAuthenticationName** \ + * **DnsMatchesAuthenticationName** \ + * **UriMatchesAuthenticationName** \ + * **IpMatchesAuthenticationName** \ + * **EmailMatchesAuthenticationName** \ + * **ThumbprintMatch** + */ +export type ClientCertificateValidationScheme = string; + +/** Known values of {@link ClientState} that the service accepts. */ +export enum KnownClientState { + /** Enabled */ + Enabled = "Enabled", + /** Disabled */ + Disabled = "Disabled" +} + +/** + * Defines values for ClientState. \ + * {@link KnownClientState} can be used interchangeably with ClientState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Enabled** \ + * **Disabled** + */ +export type ClientState = string; + +/** Known values of {@link ClientProvisioningState} that the service accepts. */ +export enum KnownClientProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** Deleted */ + Deleted = "Deleted" +} + +/** + * Defines values for ClientProvisioningState. \ + * {@link KnownClientProvisioningState} can be used interchangeably with ClientProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Deleted** + */ +export type ClientProvisioningState = string; /** Known values of {@link PersistedConnectionStatus} that the service accepts. */ export enum KnownPersistedConnectionStatus { @@ -1632,6 +2942,27 @@ export enum KnownDomainProvisioningState { */ export type DomainProvisioningState = string; +/** Known values of {@link TlsVersion} that the service accepts. */ +export enum KnownTlsVersion { + /** One0 */ + One0 = "1.0", + /** One1 */ + One1 = "1.1", + /** One2 */ + One2 = "1.2" +} + +/** + * Defines values for TlsVersion. \ + * {@link KnownTlsVersion} can be used interchangeably with TlsVersion, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **1.0** \ + * **1.1** \ + * **1.2** + */ +export type TlsVersion = string; + /** Known values of {@link InputSchema} that the service accepts. */ export enum KnownInputSchema { /** EventGridSchema */ @@ -1719,6 +3050,24 @@ export enum KnownDataResidencyBoundary { */ export type DataResidencyBoundary = string; +/** Known values of {@link Sku} that the service accepts. */ +export enum KnownSku { + /** Basic */ + Basic = "Basic", + /** Premium */ + Premium = "Premium" +} + +/** + * Defines values for Sku. \ + * {@link KnownSku} can be used interchangeably with Sku, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Basic** \ + * **Premium** + */ +export type Sku = string; + /** Known values of {@link IdentityType} that the service accepts. */ export enum KnownIdentityType { /** None */ @@ -1756,12 +3105,70 @@ export enum KnownDomainTopicProvisioningState { /** Canceled */ Canceled = "Canceled", /** Failed */ - Failed = "Failed" + Failed = "Failed" +} + +/** + * Defines values for DomainTopicProvisioningState. \ + * {@link KnownDomainTopicProvisioningState} can be used interchangeably with DomainTopicProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** + */ +export type DomainTopicProvisioningState = string; + +/** Known values of {@link DeliveryAttributeMappingType} that the service accepts. */ +export enum KnownDeliveryAttributeMappingType { + /** Static */ + Static = "Static", + /** Dynamic */ + Dynamic = "Dynamic" +} + +/** + * Defines values for DeliveryAttributeMappingType. \ + * {@link KnownDeliveryAttributeMappingType} can be used interchangeably with DeliveryAttributeMappingType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Static** \ + * **Dynamic** + */ +export type DeliveryAttributeMappingType = string; + +/** Known values of {@link SubscriptionProvisioningState} that the service accepts. */ +export enum KnownSubscriptionProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** AwaitingManualAction */ + AwaitingManualAction = "AwaitingManualAction", + /** Deleted */ + Deleted = "Deleted", + /** DeleteFailed */ + DeleteFailed = "DeleteFailed", + /** CreateFailed */ + CreateFailed = "CreateFailed", + /** UpdatedFailed */ + UpdatedFailed = "UpdatedFailed" } /** - * Defines values for DomainTopicProvisioningState. \ - * {@link KnownDomainTopicProvisioningState} can be used interchangeably with DomainTopicProvisioningState, + * Defines values for SubscriptionProvisioningState. \ + * {@link KnownSubscriptionProvisioningState} can be used interchangeably with SubscriptionProvisioningState, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Creating** \ @@ -1769,27 +3176,146 @@ export enum KnownDomainTopicProvisioningState { * **Deleting** \ * **Succeeded** \ * **Canceled** \ - * **Failed** + * **Failed** \ + * **AwaitingManualAction** \ + * **Deleted** \ + * **DeleteFailed** \ + * **CreateFailed** \ + * **UpdatedFailed** */ -export type DomainTopicProvisioningState = string; +export type SubscriptionProvisioningState = string; -/** Known values of {@link DeliveryAttributeMappingType} that the service accepts. */ -export enum KnownDeliveryAttributeMappingType { - /** Static */ - Static = "Static", - /** Dynamic */ - Dynamic = "Dynamic" +/** Known values of {@link DeliveryMode} that the service accepts. */ +export enum KnownDeliveryMode { + /** Queue */ + Queue = "Queue" } /** - * Defines values for DeliveryAttributeMappingType. \ - * {@link KnownDeliveryAttributeMappingType} can be used interchangeably with DeliveryAttributeMappingType, + * Defines values for DeliveryMode. \ + * {@link KnownDeliveryMode} can be used interchangeably with DeliveryMode, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **Static** \ - * **Dynamic** + * **Queue** */ -export type DeliveryAttributeMappingType = string; +export type DeliveryMode = string; + +/** Known values of {@link EventSubscriptionIdentityType} that the service accepts. */ +export enum KnownEventSubscriptionIdentityType { + /** SystemAssigned */ + SystemAssigned = "SystemAssigned", + /** UserAssigned */ + UserAssigned = "UserAssigned" +} + +/** + * Defines values for EventSubscriptionIdentityType. \ + * {@link KnownEventSubscriptionIdentityType} can be used interchangeably with EventSubscriptionIdentityType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **SystemAssigned** \ + * **UserAssigned** + */ +export type EventSubscriptionIdentityType = string; + +/** Known values of {@link DeadLetterEndPointType} that the service accepts. */ +export enum KnownDeadLetterEndPointType { + /** StorageBlob */ + StorageBlob = "StorageBlob" +} + +/** + * Defines values for DeadLetterEndPointType. \ + * {@link KnownDeadLetterEndPointType} can be used interchangeably with DeadLetterEndPointType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **StorageBlob** + */ +export type DeadLetterEndPointType = string; + +/** Known values of {@link DeliverySchema} that the service accepts. */ +export enum KnownDeliverySchema { + /** CloudEventSchemaV10 */ + CloudEventSchemaV10 = "CloudEventSchemaV1_0" +} + +/** + * Defines values for DeliverySchema. \ + * {@link KnownDeliverySchema} can be used interchangeably with DeliverySchema, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CloudEventSchemaV1_0** + */ +export type DeliverySchema = string; + +/** Known values of {@link FilterOperatorType} that the service accepts. */ +export enum KnownFilterOperatorType { + /** NumberIn */ + NumberIn = "NumberIn", + /** NumberNotIn */ + NumberNotIn = "NumberNotIn", + /** NumberLessThan */ + NumberLessThan = "NumberLessThan", + /** NumberGreaterThan */ + NumberGreaterThan = "NumberGreaterThan", + /** NumberLessThanOrEquals */ + NumberLessThanOrEquals = "NumberLessThanOrEquals", + /** NumberGreaterThanOrEquals */ + NumberGreaterThanOrEquals = "NumberGreaterThanOrEquals", + /** BoolEquals */ + BoolEquals = "BoolEquals", + /** StringIn */ + StringIn = "StringIn", + /** StringNotIn */ + StringNotIn = "StringNotIn", + /** StringBeginsWith */ + StringBeginsWith = "StringBeginsWith", + /** StringEndsWith */ + StringEndsWith = "StringEndsWith", + /** StringContains */ + StringContains = "StringContains", + /** NumberInRange */ + NumberInRange = "NumberInRange", + /** NumberNotInRange */ + NumberNotInRange = "NumberNotInRange", + /** StringNotBeginsWith */ + StringNotBeginsWith = "StringNotBeginsWith", + /** StringNotEndsWith */ + StringNotEndsWith = "StringNotEndsWith", + /** StringNotContains */ + StringNotContains = "StringNotContains", + /** IsNullOrUndefined */ + IsNullOrUndefined = "IsNullOrUndefined", + /** IsNotNull */ + IsNotNull = "IsNotNull" +} + +/** + * Defines values for FilterOperatorType. \ + * {@link KnownFilterOperatorType} can be used interchangeably with FilterOperatorType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NumberIn** \ + * **NumberNotIn** \ + * **NumberLessThan** \ + * **NumberGreaterThan** \ + * **NumberLessThanOrEquals** \ + * **NumberGreaterThanOrEquals** \ + * **BoolEquals** \ + * **StringIn** \ + * **StringNotIn** \ + * **StringBeginsWith** \ + * **StringEndsWith** \ + * **StringContains** \ + * **NumberInRange** \ + * **NumberNotInRange** \ + * **StringNotBeginsWith** \ + * **StringNotEndsWith** \ + * **StringNotContains** \ + * **IsNullOrUndefined** \ + * **IsNotNull** + */ +export type FilterOperatorType = string; /** Known values of {@link EventSubscriptionProvisioningState} that the service accepts. */ export enum KnownEventSubscriptionProvisioningState { @@ -1839,7 +3365,9 @@ export enum KnownEndpointType { /** ServiceBusTopic */ ServiceBusTopic = "ServiceBusTopic", /** AzureFunction */ - AzureFunction = "AzureFunction" + AzureFunction = "AzureFunction", + /** PartnerDestination */ + PartnerDestination = "PartnerDestination" } /** @@ -1853,28 +3381,11 @@ export enum KnownEndpointType { * **HybridConnection** \ * **ServiceBusQueue** \ * **ServiceBusTopic** \ - * **AzureFunction** + * **AzureFunction** \ + * **PartnerDestination** */ export type EndpointType = string; -/** Known values of {@link EventSubscriptionIdentityType} that the service accepts. */ -export enum KnownEventSubscriptionIdentityType { - /** SystemAssigned */ - SystemAssigned = "SystemAssigned", - /** UserAssigned */ - UserAssigned = "UserAssigned" -} - -/** - * Defines values for EventSubscriptionIdentityType. \ - * {@link KnownEventSubscriptionIdentityType} can be used interchangeably with EventSubscriptionIdentityType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **SystemAssigned** \ - * **UserAssigned** - */ -export type EventSubscriptionIdentityType = string; - /** Known values of {@link AdvancedFilterOperatorType} that the service accepts. */ export enum KnownAdvancedFilterOperatorType { /** NumberIn */ @@ -1965,23 +3476,218 @@ export enum KnownEventDeliverySchema { */ export type EventDeliverySchema = string; -/** Known values of {@link DeadLetterEndPointType} that the service accepts. */ -export enum KnownDeadLetterEndPointType { - /** StorageBlob */ - StorageBlob = "StorageBlob" +/** Known values of {@link NamespaceProvisioningState} that the service accepts. */ +export enum KnownNamespaceProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** Deleted */ + Deleted = "Deleted", + /** DeleteFailed */ + DeleteFailed = "DeleteFailed", + /** CreateFailed */ + CreateFailed = "CreateFailed", + /** UpdatedFailed */ + UpdatedFailed = "UpdatedFailed" } /** - * Defines values for DeadLetterEndPointType. \ - * {@link KnownDeadLetterEndPointType} can be used interchangeably with DeadLetterEndPointType, + * Defines values for NamespaceProvisioningState. \ + * {@link KnownNamespaceProvisioningState} can be used interchangeably with NamespaceProvisioningState, * this enum contains the known values that the service supports. * ### Known values supported by the service - * **StorageBlob** + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Deleted** \ + * **DeleteFailed** \ + * **CreateFailed** \ + * **UpdatedFailed** + */ +export type NamespaceProvisioningState = string; + +/** Known values of {@link TopicSpacesConfigurationState} that the service accepts. */ +export enum KnownTopicSpacesConfigurationState { + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled" +} + +/** + * Defines values for TopicSpacesConfigurationState. \ + * {@link KnownTopicSpacesConfigurationState} can be used interchangeably with TopicSpacesConfigurationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled** \ + * **Enabled** + */ +export type TopicSpacesConfigurationState = string; + +/** Known values of {@link StaticRoutingEnrichmentType} that the service accepts. */ +export enum KnownStaticRoutingEnrichmentType { + /** String */ + String = "String" +} + +/** + * Defines values for StaticRoutingEnrichmentType. \ + * {@link KnownStaticRoutingEnrichmentType} can be used interchangeably with StaticRoutingEnrichmentType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **String** + */ +export type StaticRoutingEnrichmentType = string; + +/** Known values of {@link AlternativeAuthenticationNameSource} that the service accepts. */ +export enum KnownAlternativeAuthenticationNameSource { + /** ClientCertificateSubject */ + ClientCertificateSubject = "ClientCertificateSubject", + /** ClientCertificateDns */ + ClientCertificateDns = "ClientCertificateDns", + /** ClientCertificateUri */ + ClientCertificateUri = "ClientCertificateUri", + /** ClientCertificateIp */ + ClientCertificateIp = "ClientCertificateIp", + /** ClientCertificateEmail */ + ClientCertificateEmail = "ClientCertificateEmail" +} + +/** + * Defines values for AlternativeAuthenticationNameSource. \ + * {@link KnownAlternativeAuthenticationNameSource} can be used interchangeably with AlternativeAuthenticationNameSource, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **ClientCertificateSubject** \ + * **ClientCertificateDns** \ + * **ClientCertificateUri** \ + * **ClientCertificateIp** \ + * **ClientCertificateEmail** + */ +export type AlternativeAuthenticationNameSource = string; + +/** Known values of {@link RoutingIdentityType} that the service accepts. */ +export enum KnownRoutingIdentityType { + /** None */ + None = "None", + /** SystemAssigned */ + SystemAssigned = "SystemAssigned", + /** UserAssigned */ + UserAssigned = "UserAssigned" +} + +/** + * Defines values for RoutingIdentityType. \ + * {@link KnownRoutingIdentityType} can be used interchangeably with RoutingIdentityType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None** \ + * **SystemAssigned** \ + * **UserAssigned** + */ +export type RoutingIdentityType = string; + +/** Known values of {@link SkuName} that the service accepts. */ +export enum KnownSkuName { + /** Standard */ + Standard = "Standard" +} + +/** + * Defines values for SkuName. \ + * {@link KnownSkuName} can be used interchangeably with SkuName, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Standard** + */ +export type SkuName = string; + +/** Known values of {@link NamespaceTopicProvisioningState} that the service accepts. */ +export enum KnownNamespaceTopicProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** Deleted */ + Deleted = "Deleted", + /** DeleteFailed */ + DeleteFailed = "DeleteFailed", + /** CreateFailed */ + CreateFailed = "CreateFailed", + /** UpdatedFailed */ + UpdatedFailed = "UpdatedFailed" +} + +/** + * Defines values for NamespaceTopicProvisioningState. \ + * {@link KnownNamespaceTopicProvisioningState} can be used interchangeably with NamespaceTopicProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Deleted** \ + * **DeleteFailed** \ + * **CreateFailed** \ + * **UpdatedFailed** + */ +export type NamespaceTopicProvisioningState = string; + +/** Known values of {@link PublisherType} that the service accepts. */ +export enum KnownPublisherType { + /** Custom */ + Custom = "Custom" +} + +/** + * Defines values for PublisherType. \ + * {@link KnownPublisherType} can be used interchangeably with PublisherType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Custom** + */ +export type PublisherType = string; + +/** Known values of {@link EventInputSchema} that the service accepts. */ +export enum KnownEventInputSchema { + /** CloudEventSchemaV10 */ + CloudEventSchemaV10 = "CloudEventSchemaV1_0" +} + +/** + * Defines values for EventInputSchema. \ + * {@link KnownEventInputSchema} can be used interchangeably with EventInputSchema, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CloudEventSchemaV1_0** */ -export type DeadLetterEndPointType = string; +export type EventInputSchema = string; -/** Known values of {@link TopicProvisioningState} that the service accepts. */ -export enum KnownTopicProvisioningState { +/** Known values of {@link PartnerConfigurationProvisioningState} that the service accepts. */ +export enum KnownPartnerConfigurationProvisioningState { /** Creating */ Creating = "Creating", /** Updating */ @@ -1997,8 +3703,8 @@ export enum KnownTopicProvisioningState { } /** - * Defines values for TopicProvisioningState. \ - * {@link KnownTopicProvisioningState} can be used interchangeably with TopicProvisioningState, + * Defines values for PartnerConfigurationProvisioningState. \ + * {@link KnownPartnerConfigurationProvisioningState} can be used interchangeably with PartnerConfigurationProvisioningState, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Creating** \ @@ -2008,10 +3714,10 @@ export enum KnownTopicProvisioningState { * **Canceled** \ * **Failed** */ -export type TopicProvisioningState = string; +export type PartnerConfigurationProvisioningState = string; -/** Known values of {@link PartnerConfigurationProvisioningState} that the service accepts. */ -export enum KnownPartnerConfigurationProvisioningState { +/** Known values of {@link PartnerDestinationProvisioningState} that the service accepts. */ +export enum KnownPartnerDestinationProvisioningState { /** Creating */ Creating = "Creating", /** Updating */ @@ -2023,12 +3729,14 @@ export enum KnownPartnerConfigurationProvisioningState { /** Canceled */ Canceled = "Canceled", /** Failed */ - Failed = "Failed" + Failed = "Failed", + /** IdleDueToMirroredChannelResourceDeletion */ + IdleDueToMirroredChannelResourceDeletion = "IdleDueToMirroredChannelResourceDeletion" } /** - * Defines values for PartnerConfigurationProvisioningState. \ - * {@link KnownPartnerConfigurationProvisioningState} can be used interchangeably with PartnerConfigurationProvisioningState, + * Defines values for PartnerDestinationProvisioningState. \ + * {@link KnownPartnerDestinationProvisioningState} can be used interchangeably with PartnerDestinationProvisioningState, * this enum contains the known values that the service supports. * ### Known values supported by the service * **Creating** \ @@ -2036,9 +3744,28 @@ export enum KnownPartnerConfigurationProvisioningState { * **Deleting** \ * **Succeeded** \ * **Canceled** \ - * **Failed** + * **Failed** \ + * **IdleDueToMirroredChannelResourceDeletion** */ -export type PartnerConfigurationProvisioningState = string; +export type PartnerDestinationProvisioningState = string; + +/** Known values of {@link PartnerDestinationActivationState} that the service accepts. */ +export enum KnownPartnerDestinationActivationState { + /** NeverActivated */ + NeverActivated = "NeverActivated", + /** Activated */ + Activated = "Activated" +} + +/** + * Defines values for PartnerDestinationActivationState. \ + * {@link KnownPartnerDestinationActivationState} can be used interchangeably with PartnerDestinationActivationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NeverActivated** \ + * **Activated** + */ +export type PartnerDestinationActivationState = string; /** Known values of {@link PartnerNamespaceProvisioningState} that the service accepts. */ export enum KnownPartnerNamespaceProvisioningState { @@ -2172,6 +3899,57 @@ export enum KnownPartnerTopicActivationState { */ export type PartnerTopicActivationState = string; +/** Known values of {@link PermissionType} that the service accepts. */ +export enum KnownPermissionType { + /** Publisher */ + Publisher = "Publisher", + /** Subscriber */ + Subscriber = "Subscriber" +} + +/** + * Defines values for PermissionType. \ + * {@link KnownPermissionType} can be used interchangeably with PermissionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Publisher** \ + * **Subscriber** + */ +export type PermissionType = string; + +/** Known values of {@link PermissionBindingProvisioningState} that the service accepts. */ +export enum KnownPermissionBindingProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** Deleted */ + Deleted = "Deleted" +} + +/** + * Defines values for PermissionBindingProvisioningState. \ + * {@link KnownPermissionBindingProvisioningState} can be used interchangeably with PermissionBindingProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Deleted** + */ +export type PermissionBindingProvisioningState = string; + /** Known values of {@link PrivateEndpointConnectionsParentType} that the service accepts. */ export enum KnownPrivateEndpointConnectionsParentType { /** Topics */ @@ -2179,7 +3957,9 @@ export enum KnownPrivateEndpointConnectionsParentType { /** Domains */ Domains = "domains", /** PartnerNamespaces */ - PartnerNamespaces = "partnerNamespaces" + PartnerNamespaces = "partnerNamespaces", + /** Namespaces */ + Namespaces = "namespaces" } /** @@ -2189,10 +3969,92 @@ export enum KnownPrivateEndpointConnectionsParentType { * ### Known values supported by the service * **topics** \ * **domains** \ - * **partnerNamespaces** + * **partnerNamespaces** \ + * **namespaces** */ export type PrivateEndpointConnectionsParentType = string; +/** Known values of {@link TopicProvisioningState} that the service accepts. */ +export enum KnownTopicProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed" +} + +/** + * Defines values for TopicProvisioningState. \ + * {@link KnownTopicProvisioningState} can be used interchangeably with TopicProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** + */ +export type TopicProvisioningState = string; + +/** Known values of {@link ResourceKind} that the service accepts. */ +export enum KnownResourceKind { + /** Azure */ + Azure = "Azure", + /** AzureArc */ + AzureArc = "AzureArc" +} + +/** + * Defines values for ResourceKind. \ + * {@link KnownResourceKind} can be used interchangeably with ResourceKind, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Azure** \ + * **AzureArc** + */ +export type ResourceKind = string; + +/** Known values of {@link TopicSpaceProvisioningState} that the service accepts. */ +export enum KnownTopicSpaceProvisioningState { + /** Creating */ + Creating = "Creating", + /** Updating */ + Updating = "Updating", + /** Deleting */ + Deleting = "Deleting", + /** Succeeded */ + Succeeded = "Succeeded", + /** Canceled */ + Canceled = "Canceled", + /** Failed */ + Failed = "Failed", + /** Deleted */ + Deleted = "Deleted" +} + +/** + * Defines values for TopicSpaceProvisioningState. \ + * {@link KnownTopicSpaceProvisioningState} can be used interchangeably with TopicSpaceProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Creating** \ + * **Updating** \ + * **Deleting** \ + * **Succeeded** \ + * **Canceled** \ + * **Failed** \ + * **Deleted** + */ +export type TopicSpaceProvisioningState = string; + /** Known values of {@link ResourceRegionType} that the service accepts. */ export enum KnownResourceRegionType { /** RegionalResource */ @@ -2295,6 +4157,68 @@ export enum KnownVerifiedPartnerProvisioningState { */ export type VerifiedPartnerProvisioningState = string; +/** Known values of {@link PartnerClientAuthenticationType} that the service accepts. */ +export enum KnownPartnerClientAuthenticationType { + /** AzureAD */ + AzureAD = "AzureAD" +} + +/** + * Defines values for PartnerClientAuthenticationType. \ + * {@link KnownPartnerClientAuthenticationType} can be used interchangeably with PartnerClientAuthenticationType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AzureAD** + */ +export type PartnerClientAuthenticationType = string; + +/** Optional parameters. */ +export interface CaCertificatesGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type CaCertificatesGetResponse = CaCertificate; + +/** Optional parameters. */ +export interface CaCertificatesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type CaCertificatesCreateOrUpdateResponse = CaCertificate; + +/** Optional parameters. */ +export interface CaCertificatesDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface CaCertificatesListByNamespaceOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByNamespace operation. */ +export type CaCertificatesListByNamespaceResponse = CaCertificatesListResult; + +/** Optional parameters. */ +export interface CaCertificatesListByNamespaceNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByNamespaceNext operation. */ +export type CaCertificatesListByNamespaceNextResponse = CaCertificatesListResult; + /** Optional parameters. */ export interface ChannelsGetOptionalParams extends coreClient.OperationOptions {} @@ -2323,7 +4247,107 @@ export interface ChannelsUpdateOptionalParams extends coreClient.OperationOptions {} /** Optional parameters. */ -export interface ChannelsListByPartnerNamespaceOptionalParams +export interface ChannelsListByPartnerNamespaceOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByPartnerNamespace operation. */ +export type ChannelsListByPartnerNamespaceResponse = ChannelsListResult; + +/** Optional parameters. */ +export interface ChannelsGetFullUrlOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getFullUrl operation. */ +export type ChannelsGetFullUrlResponse = EventSubscriptionFullUrl; + +/** Optional parameters. */ +export interface ChannelsListByPartnerNamespaceNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByPartnerNamespaceNext operation. */ +export type ChannelsListByPartnerNamespaceNextResponse = ChannelsListResult; + +/** Optional parameters. */ +export interface ClientGroupsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ClientGroupsGetResponse = ClientGroup; + +/** Optional parameters. */ +export interface ClientGroupsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type ClientGroupsCreateOrUpdateResponse = ClientGroup; + +/** Optional parameters. */ +export interface ClientGroupsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface ClientGroupsListByNamespaceOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByNamespace operation. */ +export type ClientGroupsListByNamespaceResponse = ClientGroupsListResult; + +/** Optional parameters. */ +export interface ClientGroupsListByNamespaceNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByNamespaceNext operation. */ +export type ClientGroupsListByNamespaceNextResponse = ClientGroupsListResult; + +/** Optional parameters. */ +export interface ClientsGetOptionalParams extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type ClientsGetResponse = Client; + +/** Optional parameters. */ +export interface ClientsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type ClientsCreateOrUpdateResponse = Client; + +/** Optional parameters. */ +export interface ClientsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface ClientsListByNamespaceOptionalParams extends coreClient.OperationOptions { /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ filter?: string; @@ -2331,22 +4355,15 @@ export interface ChannelsListByPartnerNamespaceOptionalParams top?: number; } -/** Contains response data for the listByPartnerNamespace operation. */ -export type ChannelsListByPartnerNamespaceResponse = ChannelsListResult; - -/** Optional parameters. */ -export interface ChannelsGetFullUrlOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getFullUrl operation. */ -export type ChannelsGetFullUrlResponse = EventSubscriptionFullUrl; +/** Contains response data for the listByNamespace operation. */ +export type ClientsListByNamespaceResponse = ClientsListResult; /** Optional parameters. */ -export interface ChannelsListByPartnerNamespaceNextOptionalParams +export interface ClientsListByNamespaceNextOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the listByPartnerNamespaceNext operation. */ -export type ChannelsListByPartnerNamespaceNextResponse = ChannelsListResult; +/** Contains response data for the listByNamespaceNext operation. */ +export type ClientsListByNamespaceNextResponse = ClientsListResult; /** Optional parameters. */ export interface DomainsGetOptionalParams extends coreClient.OperationOptions {} @@ -2483,6 +4500,79 @@ export interface DomainTopicsListByDomainNextOptionalParams /** Contains response data for the listByDomainNext operation. */ export type DomainTopicsListByDomainNextResponse = DomainTopicsListResult; +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getDeliveryAttributes operation. */ +export type DomainTopicEventSubscriptionsGetDeliveryAttributesResponse = DeliveryAttributeListResult; + +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type DomainTopicEventSubscriptionsGetResponse = EventSubscription; + +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type DomainTopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; + +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the update operation. */ +export type DomainTopicEventSubscriptionsUpdateResponse = EventSubscription; + +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsGetFullUrlOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getFullUrl operation. */ +export type DomainTopicEventSubscriptionsGetFullUrlResponse = EventSubscriptionFullUrl; + +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsListOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the list operation. */ +export type DomainTopicEventSubscriptionsListResponse = EventSubscriptionsListResult; + +/** Optional parameters. */ +export interface DomainTopicEventSubscriptionsListNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listNext operation. */ +export type DomainTopicEventSubscriptionsListNextResponse = EventSubscriptionsListResult; + /** Optional parameters. */ export interface TopicEventSubscriptionsGetDeliveryAttributesOptionalParams extends coreClient.OperationOptions {} @@ -2629,6 +4719,13 @@ export interface DomainEventSubscriptionsListNextOptionalParams /** Contains response data for the listNext operation. */ export type DomainEventSubscriptionsListNextResponse = EventSubscriptionsListResult; +/** Optional parameters. */ +export interface EventSubscriptionsGetDeliveryAttributesOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getDeliveryAttributes operation. */ +export type EventSubscriptionsGetDeliveryAttributesResponse = DeliveryAttributeListResult; + /** Optional parameters. */ export interface EventSubscriptionsGetOptionalParams extends coreClient.OperationOptions {} @@ -2796,13 +4893,6 @@ export interface EventSubscriptionsListByDomainTopicOptionalParams /** Contains response data for the listByDomainTopic operation. */ export type EventSubscriptionsListByDomainTopicResponse = EventSubscriptionsListResult; -/** Optional parameters. */ -export interface EventSubscriptionsGetDeliveryAttributesOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getDeliveryAttributes operation. */ -export type EventSubscriptionsGetDeliveryAttributesResponse = DeliveryAttributeListResult; - /** Optional parameters. */ export interface EventSubscriptionsListGlobalBySubscriptionNextOptionalParams extends coreClient.OperationOptions {} @@ -2874,14 +4964,21 @@ export interface EventSubscriptionsListByDomainTopicNextOptionalParams export type EventSubscriptionsListByDomainTopicNextResponse = EventSubscriptionsListResult; /** Optional parameters. */ -export interface DomainTopicEventSubscriptionsGetOptionalParams +export interface SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getDeliveryAttributes operation. */ +export type SystemTopicEventSubscriptionsGetDeliveryAttributesResponse = DeliveryAttributeListResult; + +/** Optional parameters. */ +export interface SystemTopicEventSubscriptionsGetOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type DomainTopicEventSubscriptionsGetResponse = EventSubscription; +export type SystemTopicEventSubscriptionsGetResponse = EventSubscription; /** Optional parameters. */ -export interface DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams +export interface SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -2890,10 +4987,10 @@ export interface DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams } /** Contains response data for the createOrUpdate operation. */ -export type DomainTopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; +export type SystemTopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; /** Optional parameters. */ -export interface DomainTopicEventSubscriptionsDeleteOptionalParams +export interface SystemTopicEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -2902,7 +4999,7 @@ export interface DomainTopicEventSubscriptionsDeleteOptionalParams } /** Optional parameters. */ -export interface DomainTopicEventSubscriptionsUpdateOptionalParams +export interface SystemTopicEventSubscriptionsUpdateOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -2911,17 +5008,17 @@ export interface DomainTopicEventSubscriptionsUpdateOptionalParams } /** Contains response data for the update operation. */ -export type DomainTopicEventSubscriptionsUpdateResponse = EventSubscription; +export type SystemTopicEventSubscriptionsUpdateResponse = EventSubscription; /** Optional parameters. */ -export interface DomainTopicEventSubscriptionsGetFullUrlOptionalParams +export interface SystemTopicEventSubscriptionsGetFullUrlOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the getFullUrl operation. */ -export type DomainTopicEventSubscriptionsGetFullUrlResponse = EventSubscriptionFullUrl; +export type SystemTopicEventSubscriptionsGetFullUrlResponse = EventSubscriptionFullUrl; /** Optional parameters. */ -export interface DomainTopicEventSubscriptionsListOptionalParams +export interface SystemTopicEventSubscriptionsListBySystemTopicOptionalParams extends coreClient.OperationOptions { /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ filter?: string; @@ -2929,32 +5026,25 @@ export interface DomainTopicEventSubscriptionsListOptionalParams top?: number; } -/** Contains response data for the list operation. */ -export type DomainTopicEventSubscriptionsListResponse = EventSubscriptionsListResult; - -/** Optional parameters. */ -export interface DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getDeliveryAttributes operation. */ -export type DomainTopicEventSubscriptionsGetDeliveryAttributesResponse = DeliveryAttributeListResult; +/** Contains response data for the listBySystemTopic operation. */ +export type SystemTopicEventSubscriptionsListBySystemTopicResponse = EventSubscriptionsListResult; /** Optional parameters. */ -export interface DomainTopicEventSubscriptionsListNextOptionalParams +export interface SystemTopicEventSubscriptionsListBySystemTopicNextOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the listNext operation. */ -export type DomainTopicEventSubscriptionsListNextResponse = EventSubscriptionsListResult; +/** Contains response data for the listBySystemTopicNext operation. */ +export type SystemTopicEventSubscriptionsListBySystemTopicNextResponse = EventSubscriptionsListResult; /** Optional parameters. */ -export interface SystemTopicEventSubscriptionsGetOptionalParams +export interface NamespaceTopicEventSubscriptionsGetOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the get operation. */ -export type SystemTopicEventSubscriptionsGetResponse = EventSubscription; +export type NamespaceTopicEventSubscriptionsGetResponse = Subscription; /** Optional parameters. */ -export interface SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams +export interface NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -2963,10 +5053,10 @@ export interface SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams } /** Contains response data for the createOrUpdate operation. */ -export type SystemTopicEventSubscriptionsCreateOrUpdateResponse = EventSubscription; +export type NamespaceTopicEventSubscriptionsCreateOrUpdateResponse = Subscription; /** Optional parameters. */ -export interface SystemTopicEventSubscriptionsDeleteOptionalParams +export interface NamespaceTopicEventSubscriptionsDeleteOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -2975,7 +5065,7 @@ export interface SystemTopicEventSubscriptionsDeleteOptionalParams } /** Optional parameters. */ -export interface SystemTopicEventSubscriptionsUpdateOptionalParams +export interface NamespaceTopicEventSubscriptionsUpdateOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -2984,17 +5074,10 @@ export interface SystemTopicEventSubscriptionsUpdateOptionalParams } /** Contains response data for the update operation. */ -export type SystemTopicEventSubscriptionsUpdateResponse = EventSubscription; - -/** Optional parameters. */ -export interface SystemTopicEventSubscriptionsGetFullUrlOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getFullUrl operation. */ -export type SystemTopicEventSubscriptionsGetFullUrlResponse = EventSubscriptionFullUrl; +export type NamespaceTopicEventSubscriptionsUpdateResponse = Subscription; /** Optional parameters. */ -export interface SystemTopicEventSubscriptionsListBySystemTopicOptionalParams +export interface NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams extends coreClient.OperationOptions { /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ filter?: string; @@ -3002,22 +5085,15 @@ export interface SystemTopicEventSubscriptionsListBySystemTopicOptionalParams top?: number; } -/** Contains response data for the listBySystemTopic operation. */ -export type SystemTopicEventSubscriptionsListBySystemTopicResponse = EventSubscriptionsListResult; - -/** Optional parameters. */ -export interface SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getDeliveryAttributes operation. */ -export type SystemTopicEventSubscriptionsGetDeliveryAttributesResponse = DeliveryAttributeListResult; +/** Contains response data for the listByNamespaceTopic operation. */ +export type NamespaceTopicEventSubscriptionsListByNamespaceTopicResponse = SubscriptionsListResult; /** Optional parameters. */ -export interface SystemTopicEventSubscriptionsListBySystemTopicNextOptionalParams +export interface NamespaceTopicEventSubscriptionsListByNamespaceTopicNextOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the listBySystemTopicNext operation. */ -export type SystemTopicEventSubscriptionsListBySystemTopicNextResponse = EventSubscriptionsListResult; +/** Contains response data for the listByNamespaceTopicNext operation. */ +export type NamespaceTopicEventSubscriptionsListByNamespaceTopicNextResponse = SubscriptionsListResult; /** Optional parameters. */ export interface PartnerTopicEventSubscriptionsGetOptionalParams @@ -3093,20 +5169,14 @@ export interface PartnerTopicEventSubscriptionsListByPartnerTopicNextOptionalPar export type PartnerTopicEventSubscriptionsListByPartnerTopicNextResponse = EventSubscriptionsListResult; /** Optional parameters. */ -export interface OperationsListOptionalParams +export interface NamespacesGetOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the list operation. */ -export type OperationsListResponse = OperationsListResult; - -/** Optional parameters. */ -export interface TopicsGetOptionalParams extends coreClient.OperationOptions {} - /** Contains response data for the get operation. */ -export type TopicsGetResponse = Topic; +export type NamespacesGetResponse = Namespace; /** Optional parameters. */ -export interface TopicsCreateOrUpdateOptionalParams +export interface NamespacesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -3115,10 +5185,10 @@ export interface TopicsCreateOrUpdateOptionalParams } /** Contains response data for the createOrUpdate operation. */ -export type TopicsCreateOrUpdateResponse = Topic; +export type NamespacesCreateOrUpdateResponse = Namespace; /** Optional parameters. */ -export interface TopicsDeleteOptionalParams +export interface NamespacesDeleteOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -3127,7 +5197,7 @@ export interface TopicsDeleteOptionalParams } /** Optional parameters. */ -export interface TopicsUpdateOptionalParams +export interface NamespacesUpdateOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -3135,8 +5205,11 @@ export interface TopicsUpdateOptionalParams resumeFrom?: string; } +/** Contains response data for the update operation. */ +export type NamespacesUpdateResponse = Namespace; + /** Optional parameters. */ -export interface TopicsListBySubscriptionOptionalParams +export interface NamespacesListBySubscriptionOptionalParams extends coreClient.OperationOptions { /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ filter?: string; @@ -3145,10 +5218,10 @@ export interface TopicsListBySubscriptionOptionalParams } /** Contains response data for the listBySubscription operation. */ -export type TopicsListBySubscriptionResponse = TopicsListResult; +export type NamespacesListBySubscriptionResponse = NamespacesListResult; /** Optional parameters. */ -export interface TopicsListByResourceGroupOptionalParams +export interface NamespacesListByResourceGroupOptionalParams extends coreClient.OperationOptions { /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ filter?: string; @@ -3157,17 +5230,17 @@ export interface TopicsListByResourceGroupOptionalParams } /** Contains response data for the listByResourceGroup operation. */ -export type TopicsListByResourceGroupResponse = TopicsListResult; +export type NamespacesListByResourceGroupResponse = NamespacesListResult; /** Optional parameters. */ -export interface TopicsListSharedAccessKeysOptionalParams +export interface NamespacesListSharedAccessKeysOptionalParams extends coreClient.OperationOptions {} /** Contains response data for the listSharedAccessKeys operation. */ -export type TopicsListSharedAccessKeysResponse = TopicSharedAccessKeys; +export type NamespacesListSharedAccessKeysResponse = NamespaceSharedAccessKeys; /** Optional parameters. */ -export interface TopicsRegenerateKeyOptionalParams +export interface NamespacesRegenerateKeyOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -3176,28 +5249,106 @@ export interface TopicsRegenerateKeyOptionalParams } /** Contains response data for the regenerateKey operation. */ -export type TopicsRegenerateKeyResponse = TopicSharedAccessKeys; +export type NamespacesRegenerateKeyResponse = NamespaceSharedAccessKeys; /** Optional parameters. */ -export interface TopicsListEventTypesOptionalParams +export interface NamespacesListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type NamespacesListBySubscriptionNextResponse = NamespacesListResult; + +/** Optional parameters. */ +export interface NamespacesListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type NamespacesListByResourceGroupNextResponse = NamespacesListResult; + +/** Optional parameters. */ +export interface NamespaceTopicsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type NamespaceTopicsGetResponse = NamespaceTopic; + +/** Optional parameters. */ +export interface NamespaceTopicsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type NamespaceTopicsCreateOrUpdateResponse = NamespaceTopic; + +/** Optional parameters. */ +export interface NamespaceTopicsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface NamespaceTopicsUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the update operation. */ +export type NamespaceTopicsUpdateResponse = NamespaceTopic; + +/** Optional parameters. */ +export interface NamespaceTopicsListByNamespaceOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByNamespace operation. */ +export type NamespaceTopicsListByNamespaceResponse = NamespaceTopicsListResult; + +/** Optional parameters. */ +export interface NamespaceTopicsListSharedAccessKeysOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the listEventTypes operation. */ -export type TopicsListEventTypesResponse = EventTypesListResult; +/** Contains response data for the listSharedAccessKeys operation. */ +export type NamespaceTopicsListSharedAccessKeysResponse = TopicSharedAccessKeys; + +/** Optional parameters. */ +export interface NamespaceTopicsRegenerateKeyOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the regenerateKey operation. */ +export type NamespaceTopicsRegenerateKeyResponse = TopicSharedAccessKeys; /** Optional parameters. */ -export interface TopicsListBySubscriptionNextOptionalParams +export interface NamespaceTopicsListByNamespaceNextOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the listBySubscriptionNext operation. */ -export type TopicsListBySubscriptionNextResponse = TopicsListResult; +/** Contains response data for the listByNamespaceNext operation. */ +export type NamespaceTopicsListByNamespaceNextResponse = NamespaceTopicsListResult; /** Optional parameters. */ -export interface TopicsListByResourceGroupNextOptionalParams +export interface OperationsListOptionalParams extends coreClient.OperationOptions {} -/** Contains response data for the listByResourceGroupNext operation. */ -export type TopicsListByResourceGroupNextResponse = TopicsListResult; +/** Contains response data for the list operation. */ +export type OperationsListResponse = OperationsListResult; /** Optional parameters. */ export interface PartnerConfigurationsGetOptionalParams @@ -3279,6 +5430,91 @@ export interface PartnerConfigurationsListBySubscriptionNextOptionalParams /** Contains response data for the listBySubscriptionNext operation. */ export type PartnerConfigurationsListBySubscriptionNextResponse = PartnerConfigurationsListResult; +/** Optional parameters. */ +export interface PartnerDestinationsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type PartnerDestinationsGetResponse = PartnerDestination; + +/** Optional parameters. */ +export interface PartnerDestinationsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type PartnerDestinationsCreateOrUpdateResponse = PartnerDestination; + +/** Optional parameters. */ +export interface PartnerDestinationsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface PartnerDestinationsUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the update operation. */ +export type PartnerDestinationsUpdateResponse = PartnerDestination; + +/** Optional parameters. */ +export interface PartnerDestinationsListBySubscriptionOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listBySubscription operation. */ +export type PartnerDestinationsListBySubscriptionResponse = PartnerDestinationsListResult; + +/** Optional parameters. */ +export interface PartnerDestinationsListByResourceGroupOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByResourceGroup operation. */ +export type PartnerDestinationsListByResourceGroupResponse = PartnerDestinationsListResult; + +/** Optional parameters. */ +export interface PartnerDestinationsActivateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the activate operation. */ +export type PartnerDestinationsActivateResponse = PartnerDestination; + +/** Optional parameters. */ +export interface PartnerDestinationsListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type PartnerDestinationsListBySubscriptionNextResponse = PartnerDestinationsListResult; + +/** Optional parameters. */ +export interface PartnerDestinationsListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type PartnerDestinationsListByResourceGroupNextResponse = PartnerDestinationsListResult; + /** Optional parameters. */ export interface PartnerNamespacesGetOptionalParams extends coreClient.OperationOptions {} @@ -3525,6 +5761,53 @@ export interface PartnerTopicsListByResourceGroupNextOptionalParams /** Contains response data for the listByResourceGroupNext operation. */ export type PartnerTopicsListByResourceGroupNextResponse = PartnerTopicsListResult; +/** Optional parameters. */ +export interface PermissionBindingsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type PermissionBindingsGetResponse = PermissionBinding; + +/** Optional parameters. */ +export interface PermissionBindingsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type PermissionBindingsCreateOrUpdateResponse = PermissionBinding; + +/** Optional parameters. */ +export interface PermissionBindingsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface PermissionBindingsListByNamespaceOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByNamespace operation. */ +export type PermissionBindingsListByNamespaceResponse = PermissionBindingsListResult; + +/** Optional parameters. */ +export interface PermissionBindingsListByNamespaceNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByNamespaceNext operation. */ +export type PermissionBindingsListByNamespaceNextResponse = PermissionBindingsListResult; + /** Optional parameters. */ export interface PrivateEndpointConnectionsGetOptionalParams extends coreClient.OperationOptions {} @@ -3553,6 +5836,9 @@ export interface PrivateEndpointConnectionsDeleteOptionalParams resumeFrom?: string; } +/** Contains response data for the delete operation. */ +export type PrivateEndpointConnectionsDeleteResponse = PrivateEndpointConnectionsDeleteHeaders; + /** Optional parameters. */ export interface PrivateEndpointConnectionsListByResourceOptionalParams extends coreClient.OperationOptions { @@ -3676,6 +5962,109 @@ export interface SystemTopicsListByResourceGroupNextOptionalParams /** Contains response data for the listByResourceGroupNext operation. */ export type SystemTopicsListByResourceGroupNextResponse = SystemTopicsListResult; +/** Optional parameters. */ +export interface TopicsGetOptionalParams extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type TopicsGetResponse = Topic; + +/** Optional parameters. */ +export interface TopicsCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type TopicsCreateOrUpdateResponse = Topic; + +/** Optional parameters. */ +export interface TopicsDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the delete operation. */ +export type TopicsDeleteResponse = TopicsDeleteHeaders; + +/** Optional parameters. */ +export interface TopicsUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface TopicsListBySubscriptionOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listBySubscription operation. */ +export type TopicsListBySubscriptionResponse = TopicsListResult; + +/** Optional parameters. */ +export interface TopicsListByResourceGroupOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByResourceGroup operation. */ +export type TopicsListByResourceGroupResponse = TopicsListResult; + +/** Optional parameters. */ +export interface TopicsListSharedAccessKeysOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listSharedAccessKeys operation. */ +export type TopicsListSharedAccessKeysResponse = TopicSharedAccessKeys; + +/** Optional parameters. */ +export interface TopicsRegenerateKeyOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the regenerateKey operation. */ +export type TopicsRegenerateKeyResponse = TopicSharedAccessKeys; + +/** Optional parameters. */ +export interface TopicsListEventTypesOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listEventTypes operation. */ +export type TopicsListEventTypesResponse = EventTypesListResult; + +/** Optional parameters. */ +export interface TopicsListBySubscriptionNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBySubscriptionNext operation. */ +export type TopicsListBySubscriptionNextResponse = TopicsListResult; + +/** Optional parameters. */ +export interface TopicsListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type TopicsListByResourceGroupNextResponse = TopicsListResult; + /** Optional parameters. */ export interface ExtensionTopicsGetOptionalParams extends coreClient.OperationOptions {} @@ -3683,6 +6072,53 @@ export interface ExtensionTopicsGetOptionalParams /** Contains response data for the get operation. */ export type ExtensionTopicsGetResponse = ExtensionTopic; +/** Optional parameters. */ +export interface TopicSpacesGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type TopicSpacesGetResponse = TopicSpace; + +/** Optional parameters. */ +export interface TopicSpacesCreateOrUpdateOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Contains response data for the createOrUpdate operation. */ +export type TopicSpacesCreateOrUpdateResponse = TopicSpace; + +/** Optional parameters. */ +export interface TopicSpacesDeleteOptionalParams + extends coreClient.OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ + resumeFrom?: string; +} + +/** Optional parameters. */ +export interface TopicSpacesListByNamespaceOptionalParams + extends coreClient.OperationOptions { + /** The query used to filter the search results using OData syntax. Filtering is permitted on the 'name' property only and with limited number of OData operations. These operations are: the 'contains' function as well as the following logical operations: not, and, or, eq (for equal), and ne (for not equal). No arithmetic operations are supported. The following is a valid filter example: $filter=contains(namE, 'PATTERN') and name ne 'PATTERN-1'. The following is not a valid filter example: $filter=location eq 'westus'. */ + filter?: string; + /** The number of results to return per page for the list operation. Valid range for top parameter is 1 to 100. If not specified, the default number of results to be returned is 20 items per page. */ + top?: number; +} + +/** Contains response data for the listByNamespace operation. */ +export type TopicSpacesListByNamespaceResponse = TopicSpacesListResult; + +/** Optional parameters. */ +export interface TopicSpacesListByNamespaceNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByNamespaceNext operation. */ +export type TopicSpacesListByNamespaceNextResponse = TopicSpacesListResult; + /** Optional parameters. */ export interface TopicTypesListOptionalParams extends coreClient.OperationOptions {} diff --git a/sdk/eventgrid/arm-eventgrid/src/models/mappers.ts b/sdk/eventgrid/arm-eventgrid/src/models/mappers.ts index 37985b066ec3..d7e05f078f1d 100644 --- a/sdk/eventgrid/arm-eventgrid/src/models/mappers.ts +++ b/sdk/eventgrid/arm-eventgrid/src/models/mappers.ts @@ -8,6 +8,204 @@ import * as coreClient from "@azure/core-client"; +export const SystemData: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SystemData", + modelProperties: { + createdBy: { + serializedName: "createdBy", + type: { + name: "String" + } + }, + createdByType: { + serializedName: "createdByType", + type: { + name: "String" + } + }, + createdAt: { + serializedName: "createdAt", + type: { + name: "DateTime" + } + }, + lastModifiedBy: { + serializedName: "lastModifiedBy", + type: { + name: "String" + } + }, + lastModifiedByType: { + serializedName: "lastModifiedByType", + type: { + name: "String" + } + }, + lastModifiedAt: { + serializedName: "lastModifiedAt", + type: { + name: "DateTime" + } + } + } + } +}; + +export const Resource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Resource", + modelProperties: { + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String" + } + }, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const ErrorResponse: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorResponse", + modelProperties: { + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ErrorDetail" + } + } + } + } +}; + +export const ErrorDetail: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorDetail", + modelProperties: { + code: { + serializedName: "code", + readOnly: true, + type: { + name: "String" + } + }, + message: { + serializedName: "message", + readOnly: true, + type: { + name: "String" + } + }, + target: { + serializedName: "target", + readOnly: true, + type: { + name: "String" + } + }, + details: { + serializedName: "details", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorDetail" + } + } + } + }, + additionalInfo: { + serializedName: "additionalInfo", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorAdditionalInfo" + } + } + } + } + } + } +}; + +export const ErrorAdditionalInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorAdditionalInfo", + modelProperties: { + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + info: { + serializedName: "info", + readOnly: true, + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + } + } + } +}; + +export const CaCertificatesListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CaCertificatesListResult", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CaCertificate" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + export const PartnerTopicInfo: coreClient.CompositeMapper = { type: { name: "Composite", @@ -105,75 +303,84 @@ export const InlineEventProperties: coreClient.CompositeMapper = { } }; -export const SystemData: coreClient.CompositeMapper = { +export const PartnerDestinationInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SystemData", + className: "PartnerDestinationInfo", + uberParent: "PartnerDestinationInfo", + polymorphicDiscriminator: { + serializedName: "endpointType", + clientName: "endpointType" + }, modelProperties: { - createdBy: { - serializedName: "createdBy", + azureSubscriptionId: { + serializedName: "azureSubscriptionId", type: { name: "String" } }, - createdByType: { - serializedName: "createdByType", + resourceGroupName: { + serializedName: "resourceGroupName", type: { name: "String" } }, - createdAt: { - serializedName: "createdAt", + name: { + serializedName: "name", type: { - name: "DateTime" + name: "String" } }, - lastModifiedBy: { - serializedName: "lastModifiedBy", + endpointType: { + serializedName: "endpointType", + required: true, type: { name: "String" } }, - lastModifiedByType: { - serializedName: "lastModifiedByType", + endpointServiceContext: { + serializedName: "endpointServiceContext", type: { name: "String" } }, - lastModifiedAt: { - serializedName: "lastModifiedAt", + resourceMoveChangeHistory: { + serializedName: "resourceMoveChangeHistory", type: { - name: "DateTime" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ResourceMoveChangeHistory" + } + } } } } } }; -export const Resource: coreClient.CompositeMapper = { +export const ResourceMoveChangeHistory: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Resource", + className: "ResourceMoveChangeHistory", modelProperties: { - id: { - serializedName: "id", - readOnly: true, + azureSubscriptionId: { + serializedName: "azureSubscriptionId", type: { name: "String" } }, - name: { - serializedName: "name", - readOnly: true, + resourceGroupName: { + serializedName: "resourceGroupName", type: { name: "String" } }, - type: { - serializedName: "type", - readOnly: true, + changedTimeUtc: { + serializedName: "changedTimeUtc", type: { - name: "String" + name: "DateTime" } } } @@ -191,6 +398,13 @@ export const ChannelUpdateParameters: coreClient.CompositeMapper = { name: "DateTime" } }, + partnerDestinationInfo: { + serializedName: "properties.partnerDestinationInfo", + type: { + name: "Composite", + className: "PartnerUpdateDestinationInfo" + } + }, partnerTopicInfo: { serializedName: "properties.partnerTopicInfo", type: { @@ -202,6 +416,27 @@ export const ChannelUpdateParameters: coreClient.CompositeMapper = { } }; +export const PartnerUpdateDestinationInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerUpdateDestinationInfo", + uberParent: "PartnerUpdateDestinationInfo", + polymorphicDiscriminator: { + serializedName: "endpointType", + clientName: "endpointType" + }, + modelProperties: { + endpointType: { + serializedName: "endpointType", + required: true, + type: { + name: "String" + } + } + } + } +}; + export const PartnerUpdateTopicInfo: coreClient.CompositeMapper = { type: { name: "Composite", @@ -260,17 +495,187 @@ export const EventSubscriptionFullUrl: coreClient.CompositeMapper = { } }; -export const PrivateEndpoint: coreClient.CompositeMapper = { +export const ClientGroupsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateEndpoint", + className: "ClientGroupsListResult", modelProperties: { - id: { - serializedName: "id", + value: { + serializedName: "value", type: { - name: "String" - } - } + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ClientGroup" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const ClientAuthentication: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientAuthentication", + modelProperties: { + certificateThumbprint: { + serializedName: "certificateThumbprint", + type: { + name: "Composite", + className: "ClientCertificateThumbprint" + } + }, + certificateSubject: { + serializedName: "certificateSubject", + type: { + name: "Composite", + className: "ClientCertificateSubjectDistinguishedName" + } + } + } + } +}; + +export const ClientCertificateThumbprint: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientCertificateThumbprint", + modelProperties: { + primary: { + serializedName: "primary", + type: { + name: "String" + } + }, + secondary: { + serializedName: "secondary", + type: { + name: "String" + } + } + } + } +}; + +export const ClientCertificateSubjectDistinguishedName: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientCertificateSubjectDistinguishedName", + modelProperties: { + commonName: { + constraints: { + MaxLength: 64 + }, + serializedName: "commonName", + type: { + name: "String" + } + }, + organization: { + constraints: { + MaxLength: 64 + }, + serializedName: "organization", + type: { + name: "String" + } + }, + organizationUnit: { + constraints: { + MaxLength: 32 + }, + serializedName: "organizationUnit", + type: { + name: "String" + } + }, + countryCode: { + constraints: { + MaxLength: 2, + MinLength: 2 + }, + serializedName: "countryCode", + type: { + name: "String" + } + } + } + } +}; + +export const ClientCertificateAuthentication: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientCertificateAuthentication", + modelProperties: { + validationScheme: { + serializedName: "validationScheme", + type: { + name: "String" + } + }, + allowedThumbprints: { + serializedName: "allowedThumbprints", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const ClientsListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientsListResult", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Client" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const PrivateEndpoint: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PrivateEndpoint", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + } } } }; @@ -344,6 +749,22 @@ export const InboundIpRule: coreClient.CompositeMapper = { } }; +export const ResourceSku: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourceSku", + modelProperties: { + name: { + defaultValue: "Basic", + serializedName: "name", + type: { + name: "String" + } + } + } + } +}; + export const IdentityInfo: coreClient.CompositeMapper = { type: { name: "Composite", @@ -420,6 +841,13 @@ export const DomainUpdateParameters: coreClient.CompositeMapper = { className: "IdentityInfo" } }, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "ResourceSku" + } + }, publicNetworkAccess: { serializedName: "properties.publicNetworkAccess", type: { @@ -438,6 +866,12 @@ export const DomainUpdateParameters: coreClient.CompositeMapper = { } } }, + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", + type: { + name: "String" + } + }, disableLocalAuth: { serializedName: "properties.disableLocalAuth", type: { @@ -461,6 +895,13 @@ export const DomainUpdateParameters: coreClient.CompositeMapper = { type: { name: "String" } + }, + eventTypeInfo: { + serializedName: "properties.eventTypeInfo", + type: { + name: "Composite", + className: "EventTypeInfo" + } } } } @@ -605,31 +1046,66 @@ export const DeliveryAttributeMapping: coreClient.CompositeMapper = { } }; -export const EventSubscriptionDestination: coreClient.CompositeMapper = { +export const DeliveryConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", - className: "EventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: { - serializedName: "endpointType", - clientName: "endpointType" - }, + className: "DeliveryConfiguration", modelProperties: { - endpointType: { - serializedName: "endpointType", - required: true, + deliveryMode: { + serializedName: "deliveryMode", type: { name: "String" } + }, + queue: { + serializedName: "queue", + type: { + name: "Composite", + className: "QueueInfo" + } } } } }; -export const DeliveryWithResourceIdentity: coreClient.CompositeMapper = { +export const QueueInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DeliveryWithResourceIdentity", + className: "QueueInfo", + modelProperties: { + receiveLockDurationInSeconds: { + serializedName: "receiveLockDurationInSeconds", + type: { + name: "Number" + } + }, + maxDeliveryCount: { + serializedName: "maxDeliveryCount", + type: { + name: "Number" + } + }, + deadLetterDestinationWithResourceIdentity: { + serializedName: "deadLetterDestinationWithResourceIdentity", + type: { + name: "Composite", + className: "DeadLetterWithResourceIdentity" + } + }, + eventTimeToLive: { + serializedName: "eventTimeToLive", + type: { + name: "TimeSpan" + } + } + } + } +}; + +export const DeadLetterWithResourceIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DeadLetterWithResourceIdentity", modelProperties: { identity: { serializedName: "identity", @@ -638,11 +1114,11 @@ export const DeliveryWithResourceIdentity: coreClient.CompositeMapper = { className: "EventSubscriptionIdentity" } }, - destination: { - serializedName: "destination", + deadLetterDestination: { + serializedName: "deadLetterDestination", type: { name: "Composite", - className: "EventSubscriptionDestination" + className: "DeadLetterDestination" } } } @@ -670,23 +1146,32 @@ export const EventSubscriptionIdentity: coreClient.CompositeMapper = { } }; -export const EventSubscriptionFilter: coreClient.CompositeMapper = { +export const DeadLetterDestination: coreClient.CompositeMapper = { type: { name: "Composite", - className: "EventSubscriptionFilter", + className: "DeadLetterDestination", + uberParent: "DeadLetterDestination", + polymorphicDiscriminator: { + serializedName: "endpointType", + clientName: "endpointType" + }, modelProperties: { - subjectBeginsWith: { - serializedName: "subjectBeginsWith", - type: { - name: "String" - } - }, - subjectEndsWith: { - serializedName: "subjectEndsWith", + endpointType: { + serializedName: "endpointType", + required: true, type: { name: "String" } - }, + } + } + } +}; + +export const FiltersConfiguration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "FiltersConfiguration", + modelProperties: { includedEventTypes: { serializedName: "includedEventTypes", type: { @@ -698,27 +1183,14 @@ export const EventSubscriptionFilter: coreClient.CompositeMapper = { } } }, - isSubjectCaseSensitive: { - defaultValue: false, - serializedName: "isSubjectCaseSensitive", - type: { - name: "Boolean" - } - }, - enableAdvancedFilteringOnArrays: { - serializedName: "enableAdvancedFilteringOnArrays", - type: { - name: "Boolean" - } - }, - advancedFilters: { - serializedName: "advancedFilters", + filters: { + serializedName: "filters", type: { name: "Sequence", element: { type: { name: "Composite", - className: "AdvancedFilter" + className: "Filter" } } } @@ -727,11 +1199,11 @@ export const EventSubscriptionFilter: coreClient.CompositeMapper = { } }; -export const AdvancedFilter: coreClient.CompositeMapper = { +export const Filter: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AdvancedFilter", - uberParent: "AdvancedFilter", + className: "Filter", + uberParent: "Filter", polymorphicDiscriminator: { serializedName: "operatorType", clientName: "operatorType" @@ -754,34 +1226,67 @@ export const AdvancedFilter: coreClient.CompositeMapper = { } }; -export const RetryPolicy: coreClient.CompositeMapper = { +export const SubscriptionUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RetryPolicy", + className: "SubscriptionUpdateParameters", modelProperties: { - maxDeliveryAttempts: { - defaultValue: 30, - serializedName: "maxDeliveryAttempts", + deliveryConfiguration: { + serializedName: "properties.deliveryConfiguration", type: { - name: "Number" + name: "Composite", + className: "DeliveryConfiguration" } }, - eventTimeToLiveInMinutes: { - defaultValue: 1440, - serializedName: "eventTimeToLiveInMinutes", + eventDeliverySchema: { + serializedName: "properties.eventDeliverySchema", type: { - name: "Number" + name: "String" + } + }, + filtersConfiguration: { + serializedName: "properties.filtersConfiguration", + type: { + name: "Composite", + className: "FiltersConfiguration" } } } } }; -export const DeadLetterDestination: coreClient.CompositeMapper = { +export const SubscriptionsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DeadLetterDestination", - uberParent: "DeadLetterDestination", + className: "SubscriptionsListResult", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Subscription" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const EventSubscriptionDestination: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", polymorphicDiscriminator: { serializedName: "endpointType", clientName: "endpointType" @@ -798,10 +1303,10 @@ export const DeadLetterDestination: coreClient.CompositeMapper = { } }; -export const DeadLetterWithResourceIdentity: coreClient.CompositeMapper = { +export const DeliveryWithResourceIdentity: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DeadLetterWithResourceIdentity", + className: "DeliveryWithResourceIdentity", modelProperties: { identity: { serializedName: "identity", @@ -810,11 +1315,118 @@ export const DeadLetterWithResourceIdentity: coreClient.CompositeMapper = { className: "EventSubscriptionIdentity" } }, - deadLetterDestination: { - serializedName: "deadLetterDestination", + destination: { + serializedName: "destination", type: { name: "Composite", - className: "DeadLetterDestination" + className: "EventSubscriptionDestination" + } + } + } + } +}; + +export const EventSubscriptionFilter: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EventSubscriptionFilter", + modelProperties: { + subjectBeginsWith: { + serializedName: "subjectBeginsWith", + type: { + name: "String" + } + }, + subjectEndsWith: { + serializedName: "subjectEndsWith", + type: { + name: "String" + } + }, + includedEventTypes: { + serializedName: "includedEventTypes", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + isSubjectCaseSensitive: { + defaultValue: false, + serializedName: "isSubjectCaseSensitive", + type: { + name: "Boolean" + } + }, + enableAdvancedFilteringOnArrays: { + serializedName: "enableAdvancedFilteringOnArrays", + type: { + name: "Boolean" + } + }, + advancedFilters: { + serializedName: "advancedFilters", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AdvancedFilter" + } + } + } + } + } + } +}; + +export const AdvancedFilter: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AdvancedFilter", + uberParent: "AdvancedFilter", + polymorphicDiscriminator: { + serializedName: "operatorType", + clientName: "operatorType" + }, + modelProperties: { + operatorType: { + serializedName: "operatorType", + required: true, + type: { + name: "String" + } + }, + key: { + serializedName: "key", + type: { + name: "String" + } + } + } + } +}; + +export const RetryPolicy: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RetryPolicy", + modelProperties: { + maxDeliveryAttempts: { + defaultValue: 30, + serializedName: "maxDeliveryAttempts", + type: { + name: "Number" + } + }, + eventTimeToLiveInMinutes: { + defaultValue: 1440, + serializedName: "eventTimeToLiveInMinutes", + type: { + name: "Number" } } } @@ -922,93 +1534,129 @@ export const EventSubscriptionsListResult: coreClient.CompositeMapper = { } }; -export const OperationsListResult: coreClient.CompositeMapper = { +export const TopicsConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OperationsListResult", + className: "TopicsConfiguration", modelProperties: { - value: { - serializedName: "value", + hostname: { + serializedName: "hostname", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Operation" - } - } + name: "String" } } } } }; -export const Operation: coreClient.CompositeMapper = { +export const TopicSpacesConfiguration: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Operation", + className: "TopicSpacesConfiguration", modelProperties: { - name: { - serializedName: "name", + state: { + serializedName: "state", type: { name: "String" } }, - display: { - serializedName: "display", + routeTopicResourceId: { + serializedName: "routeTopicResourceId", type: { - name: "Composite", - className: "OperationInfo" + name: "String" } }, - origin: { - serializedName: "origin", + hostname: { + serializedName: "hostname", + readOnly: true, type: { name: "String" } }, - isDataAction: { - serializedName: "isDataAction", + routingEnrichments: { + serializedName: "routingEnrichments", type: { - name: "Boolean" + name: "Composite", + className: "RoutingEnrichments" } }, - properties: { - serializedName: "properties", + clientAuthentication: { + serializedName: "clientAuthentication", type: { - name: "Dictionary", - value: { type: { name: "any" } } + name: "Composite", + className: "ClientAuthenticationSettings" + } + }, + maximumSessionExpiryInHours: { + serializedName: "maximumSessionExpiryInHours", + type: { + name: "Number" + } + }, + maximumClientSessionsPerAuthenticationName: { + serializedName: "maximumClientSessionsPerAuthenticationName", + type: { + name: "Number" + } + }, + routingIdentityInfo: { + serializedName: "routingIdentityInfo", + type: { + name: "Composite", + className: "RoutingIdentityInfo" } } } } }; -export const OperationInfo: coreClient.CompositeMapper = { +export const RoutingEnrichments: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OperationInfo", + className: "RoutingEnrichments", modelProperties: { - provider: { - serializedName: "provider", + static: { + serializedName: "static", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "StaticRoutingEnrichment" + } + } } }, - resource: { - serializedName: "resource", + dynamic: { + serializedName: "dynamic", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DynamicRoutingEnrichment" + } + } } - }, - operation: { - serializedName: "operation", + } + } + } +}; + +export const StaticRoutingEnrichment: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "StaticRoutingEnrichment", + modelProperties: { + key: { + serializedName: "key", type: { name: "String" } }, - description: { - serializedName: "description", + valueType: { + serializedName: "valueType", type: { name: "String" } @@ -1017,99 +1665,60 @@ export const OperationInfo: coreClient.CompositeMapper = { } }; -export const TopicUpdateParameters: coreClient.CompositeMapper = { +export const DynamicRoutingEnrichment: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TopicUpdateParameters", + className: "DynamicRoutingEnrichment", modelProperties: { - tags: { - serializedName: "tags", + key: { + serializedName: "key", type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "String" } }, - identity: { - serializedName: "identity", + value: { + serializedName: "value", type: { - name: "Composite", - className: "IdentityInfo" - } - }, - publicNetworkAccess: { - serializedName: "properties.publicNetworkAccess", - type: { - name: "String" - } - }, - inboundIpRules: { - serializedName: "properties.inboundIpRules", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "InboundIpRule" - } - } - } - }, - disableLocalAuth: { - serializedName: "properties.disableLocalAuth", - type: { - name: "Boolean" - } - }, - dataResidencyBoundary: { - serializedName: "properties.dataResidencyBoundary", - type: { - name: "String" + name: "String" } } } } }; -export const TopicsListResult: coreClient.CompositeMapper = { +export const ClientAuthenticationSettings: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TopicsListResult", + className: "ClientAuthenticationSettings", modelProperties: { - value: { - serializedName: "value", + alternativeAuthenticationNameSources: { + serializedName: "alternativeAuthenticationNameSources", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "Topic" + name: "String" } } } - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String" - } } } } }; -export const TopicSharedAccessKeys: coreClient.CompositeMapper = { +export const RoutingIdentityInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TopicSharedAccessKeys", + className: "RoutingIdentityInfo", modelProperties: { - key1: { - serializedName: "key1", + type: { + serializedName: "type", type: { name: "String" } }, - key2: { - serializedName: "key2", + userAssignedIdentity: { + serializedName: "userAssignedIdentity", type: { name: "String" } @@ -1118,169 +1727,140 @@ export const TopicSharedAccessKeys: coreClient.CompositeMapper = { } }; -export const TopicRegenerateKeyRequest: coreClient.CompositeMapper = { +export const NamespaceSku: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TopicRegenerateKeyRequest", + className: "NamespaceSku", modelProperties: { - keyName: { - serializedName: "keyName", - required: true, + name: { + serializedName: "name", type: { name: "String" } - } - } - } -}; - -export const PartnerAuthorization: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PartnerAuthorization", - modelProperties: { - defaultMaximumExpirationTimeInDays: { - serializedName: "defaultMaximumExpirationTimeInDays", - type: { - name: "Number" - } }, - authorizedPartnersList: { - serializedName: "authorizedPartnersList", + capacity: { + serializedName: "capacity", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Partner" - } - } + name: "Number" } } } } }; -export const Partner: coreClient.CompositeMapper = { +export const NamespaceUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Partner", + className: "NamespaceUpdateParameters", modelProperties: { - partnerRegistrationImmutableId: { - serializedName: "partnerRegistrationImmutableId", + tags: { + serializedName: "tags", type: { - name: "Uuid" + name: "Dictionary", + value: { type: { name: "String" } } } }, - partnerName: { - serializedName: "partnerName", + identity: { + serializedName: "identity", type: { - name: "String" + name: "Composite", + className: "IdentityInfo" } }, - authorizationExpirationTimeInUtc: { - serializedName: "authorizationExpirationTimeInUtc", + sku: { + serializedName: "sku", type: { - name: "DateTime" + name: "Composite", + className: "NamespaceSku" } - } - } - } -}; - -export const PartnerConfigurationUpdateParameters: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PartnerConfigurationUpdateParameters", - modelProperties: { - tags: { - serializedName: "tags", + }, + topicSpacesConfiguration: { + serializedName: "properties.topicSpacesConfiguration", type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "Composite", + className: "UpdateTopicSpacesConfigurationInfo" } }, - defaultMaximumExpirationTimeInDays: { - serializedName: "properties.defaultMaximumExpirationTimeInDays", + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", type: { - name: "Number" + name: "String" } - } - } - } -}; - -export const PartnerConfigurationsListResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PartnerConfigurationsListResult", - modelProperties: { - value: { - serializedName: "value", + }, + inboundIpRules: { + serializedName: "properties.inboundIpRules", type: { name: "Sequence", element: { type: { name: "Composite", - className: "PartnerConfiguration" + className: "InboundIpRule" } } } - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String" - } } } } }; -export const PartnerNamespaceUpdateParameters: coreClient.CompositeMapper = { +export const UpdateTopicSpacesConfigurationInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerNamespaceUpdateParameters", + className: "UpdateTopicSpacesConfigurationInfo", modelProperties: { - tags: { - serializedName: "tags", + state: { + serializedName: "state", type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "String" } }, - publicNetworkAccess: { - serializedName: "properties.publicNetworkAccess", + routeTopicResourceId: { + serializedName: "routeTopicResourceId", type: { name: "String" } }, - inboundIpRules: { - serializedName: "properties.inboundIpRules", + routingEnrichments: { + serializedName: "routingEnrichments", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "InboundIpRule" - } - } + name: "Composite", + className: "RoutingEnrichments" } }, - disableLocalAuth: { - serializedName: "properties.disableLocalAuth", + clientAuthentication: { + serializedName: "clientAuthentication", type: { - name: "Boolean" + name: "Composite", + className: "ClientAuthenticationSettings" + } + }, + maximumSessionExpiryInHours: { + serializedName: "maximumSessionExpiryInHours", + type: { + name: "Number" + } + }, + maximumClientSessionsPerAuthenticationName: { + serializedName: "maximumClientSessionsPerAuthenticationName", + type: { + name: "Number" + } + }, + routingIdentityInfo: { + serializedName: "routingIdentityInfo", + type: { + name: "Composite", + className: "RoutingIdentityInfo" } } } } }; -export const PartnerNamespacesListResult: coreClient.CompositeMapper = { +export const NamespacesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerNamespacesListResult", + className: "NamespacesListResult", modelProperties: { value: { serializedName: "value", @@ -1289,7 +1869,7 @@ export const PartnerNamespacesListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "PartnerNamespace" + className: "Namespace" } } } @@ -1304,10 +1884,10 @@ export const PartnerNamespacesListResult: coreClient.CompositeMapper = { } }; -export const PartnerNamespaceSharedAccessKeys: coreClient.CompositeMapper = { +export const NamespaceSharedAccessKeys: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerNamespaceSharedAccessKeys", + className: "NamespaceSharedAccessKeys", modelProperties: { key1: { serializedName: "key1", @@ -1325,10 +1905,10 @@ export const PartnerNamespaceSharedAccessKeys: coreClient.CompositeMapper = { } }; -export const PartnerNamespaceRegenerateKeyRequest: coreClient.CompositeMapper = { +export const NamespaceRegenerateKeyRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerNamespaceRegenerateKeyRequest", + className: "NamespaceRegenerateKeyRequest", modelProperties: { keyName: { serializedName: "keyName", @@ -1341,26 +1921,25 @@ export const PartnerNamespaceRegenerateKeyRequest: coreClient.CompositeMapper = } }; -export const PartnerRegistrationUpdateParameters: coreClient.CompositeMapper = { +export const NamespaceTopicUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerRegistrationUpdateParameters", + className: "NamespaceTopicUpdateParameters", modelProperties: { - tags: { - serializedName: "tags", + eventRetentionInDays: { + serializedName: "properties.eventRetentionInDays", type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "Number" } } } } }; -export const PartnerRegistrationsListResult: coreClient.CompositeMapper = { +export const NamespaceTopicsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerRegistrationsListResult", + className: "NamespaceTopicsListResult", modelProperties: { value: { serializedName: "value", @@ -1369,7 +1948,7 @@ export const PartnerRegistrationsListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "PartnerRegistration" + className: "NamespaceTopic" } } } @@ -1384,48 +1963,35 @@ export const PartnerRegistrationsListResult: coreClient.CompositeMapper = { } }; -export const PartnerTopicUpdateParameters: coreClient.CompositeMapper = { +export const TopicSharedAccessKeys: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerTopicUpdateParameters", + className: "TopicSharedAccessKeys", modelProperties: { - tags: { - serializedName: "tags", + key1: { + serializedName: "key1", type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "String" } }, - identity: { - serializedName: "identity", + key2: { + serializedName: "key2", type: { - name: "Composite", - className: "IdentityInfo" + name: "String" } } } } }; -export const PartnerTopicsListResult: coreClient.CompositeMapper = { +export const TopicRegenerateKeyRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerTopicsListResult", + className: "TopicRegenerateKeyRequest", modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PartnerTopic" - } - } - } - }, - nextLink: { - serializedName: "nextLink", + keyName: { + serializedName: "keyName", + required: true, type: { name: "String" } @@ -1434,10 +2000,10 @@ export const PartnerTopicsListResult: coreClient.CompositeMapper = { } }; -export const PrivateEndpointConnectionListResult: coreClient.CompositeMapper = { +export const OperationsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateEndpointConnectionListResult", + className: "OperationsListResult", modelProperties: { value: { serializedName: "value", @@ -1446,113 +2012,147 @@ export const PrivateEndpointConnectionListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "PrivateEndpointConnection" + className: "Operation" } } } - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String" - } } } } }; -export const PrivateLinkResource: coreClient.CompositeMapper = { +export const Operation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateLinkResource", + className: "Operation", modelProperties: { - id: { - serializedName: "id", + name: { + serializedName: "name", type: { name: "String" } }, - name: { - serializedName: "name", + display: { + serializedName: "display", type: { - name: "String" + name: "Composite", + className: "OperationInfo" } }, - type: { - serializedName: "type", + origin: { + serializedName: "origin", type: { name: "String" } }, - groupId: { - serializedName: "properties.groupId", + isDataAction: { + serializedName: "isDataAction", + type: { + name: "Boolean" + } + }, + properties: { + serializedName: "properties", + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + } + } + } +}; + +export const OperationInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "OperationInfo", + modelProperties: { + provider: { + serializedName: "provider", type: { name: "String" } }, - displayName: { - serializedName: "properties.displayName", + resource: { + serializedName: "resource", type: { name: "String" } }, - requiredMembers: { - serializedName: "properties.requiredMembers", + operation: { + serializedName: "operation", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - requiredZoneNames: { - serializedName: "properties.requiredZoneNames", + description: { + serializedName: "description", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } } } } }; -export const PrivateLinkResourcesListResult: coreClient.CompositeMapper = { +export const PartnerAuthorization: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateLinkResourcesListResult", + className: "PartnerAuthorization", modelProperties: { - value: { - serializedName: "value", + defaultMaximumExpirationTimeInDays: { + serializedName: "defaultMaximumExpirationTimeInDays", + type: { + name: "Number" + } + }, + authorizedPartnersList: { + serializedName: "authorizedPartnersList", type: { name: "Sequence", element: { type: { name: "Composite", - className: "PrivateLinkResource" + className: "Partner" } } } + } + } + } +}; + +export const Partner: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Partner", + modelProperties: { + partnerRegistrationImmutableId: { + serializedName: "partnerRegistrationImmutableId", + type: { + name: "Uuid" + } }, - nextLink: { - serializedName: "nextLink", + partnerName: { + serializedName: "partnerName", type: { name: "String" } + }, + authorizationExpirationTimeInUtc: { + serializedName: "authorizationExpirationTimeInUtc", + type: { + name: "DateTime" + } } } } }; -export const SystemTopicUpdateParameters: coreClient.CompositeMapper = { +export const PartnerConfigurationUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SystemTopicUpdateParameters", + className: "PartnerConfigurationUpdateParameters", modelProperties: { tags: { serializedName: "tags", @@ -1561,21 +2161,20 @@ export const SystemTopicUpdateParameters: coreClient.CompositeMapper = { value: { type: { name: "String" } } } }, - identity: { - serializedName: "identity", + defaultMaximumExpirationTimeInDays: { + serializedName: "properties.defaultMaximumExpirationTimeInDays", type: { - name: "Composite", - className: "IdentityInfo" + name: "Number" } } } } }; -export const SystemTopicsListResult: coreClient.CompositeMapper = { +export const PartnerConfigurationsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SystemTopicsListResult", + className: "PartnerConfigurationsListResult", modelProperties: { value: { serializedName: "value", @@ -1584,7 +2183,7 @@ export const SystemTopicsListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "SystemTopic" + className: "PartnerConfiguration" } } } @@ -1599,31 +2198,26 @@ export const SystemTopicsListResult: coreClient.CompositeMapper = { } }; -export const EventTypesListResult: coreClient.CompositeMapper = { +export const PartnerDestinationUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "EventTypesListResult", + className: "PartnerDestinationUpdateParameters", modelProperties: { - value: { - serializedName: "value", + tags: { + serializedName: "tags", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "EventType" - } - } + name: "Dictionary", + value: { type: { name: "String" } } } } } } }; -export const TopicTypesListResult: coreClient.CompositeMapper = { +export const PartnerDestinationsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TopicTypesListResult", + className: "PartnerDestinationsListResult", modelProperties: { value: { serializedName: "value", @@ -1632,46 +2226,71 @@ export const TopicTypesListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "TopicTypeInfo" + className: "PartnerDestination" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const PartnerDetails: coreClient.CompositeMapper = { +export const PartnerNamespaceUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerDetails", + className: "PartnerNamespaceUpdateParameters", modelProperties: { - description: { - serializedName: "description", + tags: { + serializedName: "tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - longDescription: { - serializedName: "longDescription", + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", type: { name: "String" } }, - setupUri: { - serializedName: "setupUri", + inboundIpRules: { + serializedName: "properties.inboundIpRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InboundIpRule" + } + } + } + }, + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", type: { name: "String" } + }, + disableLocalAuth: { + serializedName: "properties.disableLocalAuth", + type: { + name: "Boolean" + } } } } }; -export const VerifiedPartnersListResult: coreClient.CompositeMapper = { +export const PartnerNamespacesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "VerifiedPartnersListResult", + className: "PartnerNamespacesListResult", modelProperties: { value: { serializedName: "value", @@ -1680,7 +2299,7 @@ export const VerifiedPartnersListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "VerifiedPartner" + className: "PartnerNamespace" } } } @@ -1695,13 +2314,19 @@ export const VerifiedPartnersListResult: coreClient.CompositeMapper = { } }; -export const JsonField: coreClient.CompositeMapper = { +export const PartnerNamespaceSharedAccessKeys: coreClient.CompositeMapper = { type: { name: "Composite", - className: "JsonField", + className: "PartnerNamespaceSharedAccessKeys", modelProperties: { - sourceField: { - serializedName: "sourceField", + key1: { + serializedName: "key1", + type: { + name: "String" + } + }, + key2: { + serializedName: "key2", type: { name: "String" } @@ -1710,114 +2335,107 @@ export const JsonField: coreClient.CompositeMapper = { } }; -export const JsonFieldWithDefault: coreClient.CompositeMapper = { +export const PartnerNamespaceRegenerateKeyRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "JsonFieldWithDefault", + className: "PartnerNamespaceRegenerateKeyRequest", modelProperties: { - sourceField: { - serializedName: "sourceField", + keyName: { + serializedName: "keyName", + required: true, type: { name: "String" } - }, - defaultValue: { - serializedName: "defaultValue", + } + } + } +}; + +export const PartnerRegistrationUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerRegistrationUpdateParameters", + modelProperties: { + tags: { + serializedName: "tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } } } } }; -export const Channel: coreClient.CompositeMapper = { +export const PartnerRegistrationsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Channel", + className: "PartnerRegistrationsListResult", modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", + value: { + serializedName: "value", type: { - name: "Composite", - className: "SystemData" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PartnerRegistration" + } + } } }, - channelType: { - serializedName: "properties.channelType", + nextLink: { + serializedName: "nextLink", type: { name: "String" } - }, - partnerTopicInfo: { - serializedName: "properties.partnerTopicInfo", - type: { - name: "Composite", - className: "PartnerTopicInfo" - } - }, - messageForActivation: { - serializedName: "properties.messageForActivation", - type: { - name: "String" - } - }, - provisioningState: { - serializedName: "properties.provisioningState", - type: { - name: "String" - } - }, - readinessState: { - serializedName: "properties.readinessState", + } + } + } +}; + +export const PartnerTopicUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerTopicUpdateParameters", + modelProperties: { + tags: { + serializedName: "tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - expirationTimeIfNotActivatedUtc: { - serializedName: "properties.expirationTimeIfNotActivatedUtc", + identity: { + serializedName: "identity", type: { - name: "DateTime" + name: "Composite", + className: "IdentityInfo" } } } } }; -export const PrivateEndpointConnection: coreClient.CompositeMapper = { +export const PartnerTopicsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateEndpointConnection", + className: "PartnerTopicsListResult", modelProperties: { - ...Resource.type.modelProperties, - privateEndpoint: { - serializedName: "properties.privateEndpoint", - type: { - name: "Composite", - className: "PrivateEndpoint" - } - }, - groupIds: { - serializedName: "properties.groupIds", + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "PartnerTopic" } } } }, - privateLinkServiceConnectionState: { - serializedName: "properties.privateLinkServiceConnectionState", - type: { - name: "Composite", - className: "ConnectionState" - } - }, - provisioningState: { - serializedName: "properties.provisioningState", + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -1826,46 +2444,52 @@ export const PrivateEndpointConnection: coreClient.CompositeMapper = { } }; -export const TrackedResource: coreClient.CompositeMapper = { +export const PermissionBindingsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TrackedResource", + className: "PermissionBindingsListResult", modelProperties: { - ...Resource.type.modelProperties, - location: { - serializedName: "location", - required: true, + value: { + serializedName: "value", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PermissionBinding" + } + } } }, - tags: { - serializedName: "tags", + nextLink: { + serializedName: "nextLink", type: { - name: "Dictionary", - value: { type: { name: "String" } } + name: "String" } } } } }; -export const DomainTopic: coreClient.CompositeMapper = { +export const PrivateEndpointConnectionListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DomainTopic", + className: "PrivateEndpointConnectionListResult", modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", + value: { + serializedName: "value", type: { - name: "Composite", - className: "SystemData" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -1874,56 +2498,43 @@ export const DomainTopic: coreClient.CompositeMapper = { } }; -export const EventSubscription: coreClient.CompositeMapper = { +export const PrivateLinkResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "EventSubscription", + className: "PrivateLinkResource", modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData" - } - }, - topic: { - serializedName: "properties.topic", - readOnly: true, + id: { + serializedName: "id", type: { name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + name: { + serializedName: "name", type: { name: "String" } }, - destination: { - serializedName: "properties.destination", + type: { + serializedName: "type", type: { - name: "Composite", - className: "EventSubscriptionDestination" + name: "String" } }, - deliveryWithResourceIdentity: { - serializedName: "properties.deliveryWithResourceIdentity", + groupId: { + serializedName: "properties.groupId", type: { - name: "Composite", - className: "DeliveryWithResourceIdentity" + name: "String" } }, - filter: { - serializedName: "properties.filter", + displayName: { + serializedName: "properties.displayName", type: { - name: "Composite", - className: "EventSubscriptionFilter" + name: "String" } }, - labels: { - serializedName: "properties.labels", + requiredMembers: { + serializedName: "properties.requiredMembers", type: { name: "Sequence", element: { @@ -1933,62 +2544,53 @@ export const EventSubscription: coreClient.CompositeMapper = { } } }, - expirationTimeUtc: { - serializedName: "properties.expirationTimeUtc", - type: { - name: "DateTime" - } - }, - eventDeliverySchema: { - serializedName: "properties.eventDeliverySchema", - type: { - name: "String" - } - }, - retryPolicy: { - serializedName: "properties.retryPolicy", - type: { - name: "Composite", - className: "RetryPolicy" - } - }, - deadLetterDestination: { - serializedName: "properties.deadLetterDestination", - type: { - name: "Composite", - className: "DeadLetterDestination" - } - }, - deadLetterWithResourceIdentity: { - serializedName: "properties.deadLetterWithResourceIdentity", + requiredZoneNames: { + serializedName: "properties.requiredZoneNames", type: { - name: "Composite", - className: "DeadLetterWithResourceIdentity" + name: "Sequence", + element: { + type: { + name: "String" + } + } } } } } }; -export const PartnerConfiguration: coreClient.CompositeMapper = { +export const PrivateLinkResourcesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerConfiguration", + className: "PrivateLinkResourcesListResult", modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", + value: { + serializedName: "value", type: { - name: "Composite", - className: "SystemData" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateLinkResource" + } + } } }, - location: { - serializedName: "location", + nextLink: { + serializedName: "nextLink", type: { name: "String" } - }, + } + } + } +}; + +export const SystemTopicUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SystemTopicUpdateParameters", + modelProperties: { tags: { serializedName: "tags", type: { @@ -1996,78 +2598,57 @@ export const PartnerConfiguration: coreClient.CompositeMapper = { value: { type: { name: "String" } } } }, - partnerAuthorization: { - serializedName: "properties.partnerAuthorization", + identity: { + serializedName: "identity", type: { name: "Composite", - className: "PartnerAuthorization" - } - }, - provisioningState: { - serializedName: "properties.provisioningState", - type: { - name: "String" + className: "IdentityInfo" } } } } }; -export const EventType: coreClient.CompositeMapper = { +export const SystemTopicsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "EventType", + className: "SystemTopicsListResult", modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", + value: { + serializedName: "value", type: { - name: "String" - } - }, - description: { - serializedName: "properties.description", - type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SystemTopic" + } + } } }, - schemaUrl: { - serializedName: "properties.schemaUrl", + nextLink: { + serializedName: "nextLink", type: { name: "String" } - }, - isInDefaultSet: { - serializedName: "properties.isInDefaultSet", - type: { - name: "Boolean" - } } } } }; -export const ExtensionTopic: coreClient.CompositeMapper = { +export const ExtendedLocation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ExtensionTopic", + className: "ExtendedLocation", modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData" - } - }, - description: { - serializedName: "properties.description", + name: { + serializedName: "name", type: { name: "String" } }, - systemTopic: { - serializedName: "properties.systemTopic", + type: { + serializedName: "type", type: { name: "String" } @@ -2076,114 +2657,98 @@ export const ExtensionTopic: coreClient.CompositeMapper = { } }; -export const TopicTypeInfo: coreClient.CompositeMapper = { +export const TopicUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TopicTypeInfo", + className: "TopicUpdateParameters", modelProperties: { - ...Resource.type.modelProperties, - provider: { - serializedName: "properties.provider", - type: { - name: "String" - } - }, - displayName: { - serializedName: "properties.displayName", + tags: { + serializedName: "tags", type: { - name: "String" + name: "Dictionary", + value: { type: { name: "String" } } } }, - description: { - serializedName: "properties.description", + identity: { + serializedName: "identity", type: { - name: "String" + name: "Composite", + className: "IdentityInfo" } }, - resourceRegionType: { - serializedName: "properties.resourceRegionType", + sku: { + serializedName: "sku", type: { - name: "String" + name: "Composite", + className: "ResourceSku" } }, - provisioningState: { - serializedName: "properties.provisioningState", + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", type: { name: "String" } }, - supportedLocations: { - serializedName: "properties.supportedLocations", + inboundIpRules: { + serializedName: "properties.inboundIpRules", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "InboundIpRule" } } } }, - sourceResourceFormat: { - serializedName: "properties.sourceResourceFormat", + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", type: { name: "String" } }, - supportedScopesForSource: { - serializedName: "properties.supportedScopesForSource", + disableLocalAuth: { + serializedName: "properties.disableLocalAuth", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "Boolean" + } + }, + dataResidencyBoundary: { + serializedName: "properties.dataResidencyBoundary", + type: { + name: "String" + } + }, + eventTypeInfo: { + serializedName: "properties.eventTypeInfo", + type: { + name: "Composite", + className: "EventTypeInfo" } } } } }; -export const VerifiedPartner: coreClient.CompositeMapper = { +export const TopicsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "VerifiedPartner", + className: "TopicsListResult", modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData" - } - }, - partnerRegistrationImmutableId: { - serializedName: "properties.partnerRegistrationImmutableId", - type: { - name: "Uuid" - } - }, - organizationName: { - serializedName: "properties.organizationName", - type: { - name: "String" - } - }, - partnerDisplayName: { - serializedName: "properties.partnerDisplayName", - type: { - name: "String" - } - }, - partnerTopicDetails: { - serializedName: "properties.partnerTopicDetails", + value: { + serializedName: "value", type: { - name: "Composite", - className: "PartnerDetails" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Topic" + } + } } }, - provisioningState: { - serializedName: "properties.provisioningState", + nextLink: { + serializedName: "nextLink", type: { name: "String" } @@ -2192,410 +2757,1935 @@ export const VerifiedPartner: coreClient.CompositeMapper = { } }; -export const JsonInputSchemaMapping: coreClient.CompositeMapper = { - serializedName: "Json", +export const EventTypesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "JsonInputSchemaMapping", - uberParent: "InputSchemaMapping", - polymorphicDiscriminator: InputSchemaMapping.type.polymorphicDiscriminator, + className: "EventTypesListResult", modelProperties: { - ...InputSchemaMapping.type.modelProperties, - id: { - serializedName: "properties.id", - type: { - name: "Composite", - className: "JsonField" - } - }, - topic: { - serializedName: "properties.topic", - type: { - name: "Composite", - className: "JsonField" - } - }, - eventTime: { - serializedName: "properties.eventTime", - type: { - name: "Composite", - className: "JsonField" - } - }, - eventType: { - serializedName: "properties.eventType", - type: { - name: "Composite", - className: "JsonFieldWithDefault" - } - }, - subject: { - serializedName: "properties.subject", - type: { - name: "Composite", - className: "JsonFieldWithDefault" - } - }, - dataVersion: { - serializedName: "properties.dataVersion", + value: { + serializedName: "value", type: { - name: "Composite", - className: "JsonFieldWithDefault" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "EventType" + } + } } } } } }; -export const StaticDeliveryAttributeMapping: coreClient.CompositeMapper = { - serializedName: "Static", +export const TopicSpacesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StaticDeliveryAttributeMapping", - uberParent: "DeliveryAttributeMapping", - polymorphicDiscriminator: - DeliveryAttributeMapping.type.polymorphicDiscriminator, + className: "TopicSpacesListResult", modelProperties: { - ...DeliveryAttributeMapping.type.modelProperties, value: { - serializedName: "properties.value", + serializedName: "value", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "TopicSpace" + } + } } }, - isSecret: { - defaultValue: false, - serializedName: "properties.isSecret", + nextLink: { + serializedName: "nextLink", type: { - name: "Boolean" + name: "String" } } } } }; -export const DynamicDeliveryAttributeMapping: coreClient.CompositeMapper = { - serializedName: "Dynamic", +export const TopicTypesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DynamicDeliveryAttributeMapping", - uberParent: "DeliveryAttributeMapping", - polymorphicDiscriminator: - DeliveryAttributeMapping.type.polymorphicDiscriminator, + className: "TopicTypesListResult", modelProperties: { - ...DeliveryAttributeMapping.type.modelProperties, - sourceField: { - serializedName: "properties.sourceField", + value: { + serializedName: "value", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "TopicTypeInfo" + } + } } } } } }; -export const WebHookEventSubscriptionDestination: coreClient.CompositeMapper = { - serializedName: "WebHook", +export const PartnerDetails: coreClient.CompositeMapper = { type: { name: "Composite", - className: "WebHookEventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: - EventSubscriptionDestination.type.polymorphicDiscriminator, + className: "PartnerDetails", modelProperties: { - ...EventSubscriptionDestination.type.modelProperties, - endpointUrl: { - serializedName: "properties.endpointUrl", - type: { - name: "String" - } - }, - endpointBaseUrl: { - serializedName: "properties.endpointBaseUrl", - readOnly: true, + description: { + serializedName: "description", type: { name: "String" } }, - maxEventsPerBatch: { - defaultValue: 1, - serializedName: "properties.maxEventsPerBatch", - type: { - name: "Number" - } - }, - preferredBatchSizeInKilobytes: { - defaultValue: 64, - serializedName: "properties.preferredBatchSizeInKilobytes", - type: { - name: "Number" - } - }, - azureActiveDirectoryTenantId: { - serializedName: "properties.azureActiveDirectoryTenantId", + longDescription: { + serializedName: "longDescription", type: { name: "String" } }, - azureActiveDirectoryApplicationIdOrUri: { - serializedName: "properties.azureActiveDirectoryApplicationIdOrUri", + setupUri: { + serializedName: "setupUri", type: { name: "String" } - }, - deliveryAttributeMappings: { - serializedName: "properties.deliveryAttributeMappings", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DeliveryAttributeMapping" - } - } - } } } } }; -export const EventHubEventSubscriptionDestination: coreClient.CompositeMapper = { - serializedName: "EventHub", +export const VerifiedPartnersListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "EventHubEventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: - EventSubscriptionDestination.type.polymorphicDiscriminator, + className: "VerifiedPartnersListResult", modelProperties: { - ...EventSubscriptionDestination.type.modelProperties, - resourceId: { - serializedName: "properties.resourceId", - type: { - name: "String" - } - }, - deliveryAttributeMappings: { - serializedName: "properties.deliveryAttributeMappings", + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "DeliveryAttributeMapping" + className: "VerifiedPartner" } } } + }, + nextLink: { + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const StorageQueueEventSubscriptionDestination: coreClient.CompositeMapper = { - serializedName: "StorageQueue", +export const PartnerClientAuthentication: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StorageQueueEventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: - EventSubscriptionDestination.type.polymorphicDiscriminator, + className: "PartnerClientAuthentication", + uberParent: "PartnerClientAuthentication", + polymorphicDiscriminator: { + serializedName: "clientAuthenticationType", + clientName: "clientAuthenticationType" + }, modelProperties: { - ...EventSubscriptionDestination.type.modelProperties, - resourceId: { - serializedName: "properties.resourceId", - type: { - name: "String" - } - }, - queueName: { - serializedName: "properties.queueName", + clientAuthenticationType: { + defaultValue: "AzureAD", + serializedName: "clientAuthenticationType", + required: true, type: { name: "String" } - }, - queueMessageTimeToLiveInSeconds: { - serializedName: "properties.queueMessageTimeToLiveInSeconds", - type: { - name: "Number" - } } } } }; -export const HybridConnectionEventSubscriptionDestination: coreClient.CompositeMapper = { - serializedName: "HybridConnection", +export const JsonField: coreClient.CompositeMapper = { type: { name: "Composite", - className: "HybridConnectionEventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: - EventSubscriptionDestination.type.polymorphicDiscriminator, + className: "JsonField", modelProperties: { - ...EventSubscriptionDestination.type.modelProperties, - resourceId: { - serializedName: "properties.resourceId", + sourceField: { + serializedName: "sourceField", type: { name: "String" } - }, - deliveryAttributeMappings: { - serializedName: "properties.deliveryAttributeMappings", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DeliveryAttributeMapping" - } - } - } } } } }; -export const ServiceBusQueueEventSubscriptionDestination: coreClient.CompositeMapper = { - serializedName: "ServiceBusQueue", +export const JsonFieldWithDefault: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceBusQueueEventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: - EventSubscriptionDestination.type.polymorphicDiscriminator, + className: "JsonFieldWithDefault", modelProperties: { - ...EventSubscriptionDestination.type.modelProperties, - resourceId: { - serializedName: "properties.resourceId", + sourceField: { + serializedName: "sourceField", type: { name: "String" } }, - deliveryAttributeMappings: { - serializedName: "properties.deliveryAttributeMappings", + defaultValue: { + serializedName: "defaultValue", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DeliveryAttributeMapping" - } - } + name: "String" } } } } }; -export const ServiceBusTopicEventSubscriptionDestination: coreClient.CompositeMapper = { - serializedName: "ServiceBusTopic", +export const CaCertificate: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceBusTopicEventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: - EventSubscriptionDestination.type.polymorphicDiscriminator, + className: "CaCertificate", modelProperties: { - ...EventSubscriptionDestination.type.modelProperties, - resourceId: { - serializedName: "properties.resourceId", + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", type: { - name: "String" + name: "Composite", + className: "SystemData" } }, - deliveryAttributeMappings: { - serializedName: "properties.deliveryAttributeMappings", + description: { + serializedName: "properties.description", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DeliveryAttributeMapping" - } - } + name: "String" } - } - } - } -}; - -export const AzureFunctionEventSubscriptionDestination: coreClient.CompositeMapper = { - serializedName: "AzureFunction", - type: { - name: "Composite", - className: "AzureFunctionEventSubscriptionDestination", - uberParent: "EventSubscriptionDestination", - polymorphicDiscriminator: - EventSubscriptionDestination.type.polymorphicDiscriminator, - modelProperties: { - ...EventSubscriptionDestination.type.modelProperties, - resourceId: { - serializedName: "properties.resourceId", + }, + encodedCertificate: { + serializedName: "properties.encodedCertificate", type: { name: "String" } }, - maxEventsPerBatch: { - defaultValue: 1, - serializedName: "properties.maxEventsPerBatch", + issueTimeInUtc: { + serializedName: "properties.issueTimeInUtc", + readOnly: true, type: { - name: "Number" + name: "DateTime" } }, - preferredBatchSizeInKilobytes: { - defaultValue: 64, - serializedName: "properties.preferredBatchSizeInKilobytes", + expiryTimeInUtc: { + serializedName: "properties.expiryTimeInUtc", + readOnly: true, type: { - name: "Number" + name: "DateTime" } }, - deliveryAttributeMappings: { - serializedName: "properties.deliveryAttributeMappings", + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DeliveryAttributeMapping" - } - } + name: "String" } } } } }; -export const NumberInAdvancedFilter: coreClient.CompositeMapper = { - serializedName: "NumberIn", +export const Channel: coreClient.CompositeMapper = { type: { name: "Composite", - className: "NumberInAdvancedFilter", - uberParent: "AdvancedFilter", - polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, + className: "Channel", modelProperties: { - ...AdvancedFilter.type.modelProperties, - values: { - serializedName: "values", + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", type: { - name: "Sequence", - element: { - type: { - name: "Number" - } - } + name: "Composite", + className: "SystemData" } - } - } - } -}; - -export const NumberNotInAdvancedFilter: coreClient.CompositeMapper = { - serializedName: "NumberNotIn", - type: { - name: "Composite", - className: "NumberNotInAdvancedFilter", - uberParent: "AdvancedFilter", - polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, + }, + channelType: { + serializedName: "properties.channelType", + type: { + name: "String" + } + }, + partnerTopicInfo: { + serializedName: "properties.partnerTopicInfo", + type: { + name: "Composite", + className: "PartnerTopicInfo" + } + }, + partnerDestinationInfo: { + serializedName: "properties.partnerDestinationInfo", + type: { + name: "Composite", + className: "PartnerDestinationInfo" + } + }, + messageForActivation: { + serializedName: "properties.messageForActivation", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + type: { + name: "String" + } + }, + readinessState: { + serializedName: "properties.readinessState", + type: { + name: "String" + } + }, + expirationTimeIfNotActivatedUtc: { + serializedName: "properties.expirationTimeIfNotActivatedUtc", + type: { + name: "DateTime" + } + } + } + } +}; + +export const ClientGroup: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientGroup", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + query: { + serializedName: "properties.query", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const Client: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Client", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + authenticationName: { + serializedName: "properties.authenticationName", + type: { + name: "String" + } + }, + authentication: { + serializedName: "properties.authentication", + type: { + name: "Composite", + className: "ClientAuthentication" + } + }, + clientCertificateAuthentication: { + serializedName: "properties.clientCertificateAuthentication", + type: { + name: "Composite", + className: "ClientCertificateAuthentication" + } + }, + state: { + defaultValue: "Enabled", + serializedName: "properties.state", + type: { + name: "String" + } + }, + attributes: { + serializedName: "properties.attributes", + type: { + name: "Dictionary", + value: { type: { name: "any" } } + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const PrivateEndpointConnection: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PrivateEndpointConnection", + modelProperties: { + ...Resource.type.modelProperties, + privateEndpoint: { + serializedName: "properties.privateEndpoint", + type: { + name: "Composite", + className: "PrivateEndpoint" + } + }, + groupIds: { + serializedName: "properties.groupIds", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + privateLinkServiceConnectionState: { + serializedName: "properties.privateLinkServiceConnectionState", + type: { + name: "Composite", + className: "ConnectionState" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const TrackedResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TrackedResource", + modelProperties: { + ...Resource.type.modelProperties, + location: { + serializedName: "location", + required: true, + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + } + } + } +}; + +export const DomainTopic: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DomainTopic", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const Subscription: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Subscription", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + deliveryConfiguration: { + serializedName: "properties.deliveryConfiguration", + type: { + name: "Composite", + className: "DeliveryConfiguration" + } + }, + eventDeliverySchema: { + serializedName: "properties.eventDeliverySchema", + type: { + name: "String" + } + }, + filtersConfiguration: { + serializedName: "properties.filtersConfiguration", + type: { + name: "Composite", + className: "FiltersConfiguration" + } + } + } + } +}; + +export const EventSubscription: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EventSubscription", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + topic: { + serializedName: "properties.topic", + readOnly: true, + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + destination: { + serializedName: "properties.destination", + type: { + name: "Composite", + className: "EventSubscriptionDestination" + } + }, + deliveryWithResourceIdentity: { + serializedName: "properties.deliveryWithResourceIdentity", + type: { + name: "Composite", + className: "DeliveryWithResourceIdentity" + } + }, + filter: { + serializedName: "properties.filter", + type: { + name: "Composite", + className: "EventSubscriptionFilter" + } + }, + labels: { + serializedName: "properties.labels", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + expirationTimeUtc: { + serializedName: "properties.expirationTimeUtc", + type: { + name: "DateTime" + } + }, + eventDeliverySchema: { + serializedName: "properties.eventDeliverySchema", + type: { + name: "String" + } + }, + retryPolicy: { + serializedName: "properties.retryPolicy", + type: { + name: "Composite", + className: "RetryPolicy" + } + }, + deadLetterDestination: { + serializedName: "properties.deadLetterDestination", + type: { + name: "Composite", + className: "DeadLetterDestination" + } + }, + deadLetterWithResourceIdentity: { + serializedName: "properties.deadLetterWithResourceIdentity", + type: { + name: "Composite", + className: "DeadLetterWithResourceIdentity" + } + } + } + } +}; + +export const NamespaceTopic: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NamespaceTopic", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + publisherType: { + serializedName: "properties.publisherType", + type: { + name: "String" + } + }, + inputSchema: { + defaultValue: "CloudEventSchemaV1_0", + serializedName: "properties.inputSchema", + type: { + name: "String" + } + }, + eventRetentionInDays: { + serializedName: "properties.eventRetentionInDays", + type: { + name: "Number" + } + } + } + } +}; + +export const PartnerConfiguration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerConfiguration", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + partnerAuthorization: { + serializedName: "properties.partnerAuthorization", + type: { + name: "Composite", + className: "PartnerAuthorization" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const PermissionBinding: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PermissionBinding", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + topicSpaceName: { + serializedName: "properties.topicSpaceName", + type: { + name: "String" + } + }, + permission: { + serializedName: "properties.permission", + type: { + name: "String" + } + }, + clientGroupName: { + serializedName: "properties.clientGroupName", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const EventType: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EventType", + modelProperties: { + ...Resource.type.modelProperties, + displayName: { + serializedName: "properties.displayName", + type: { + name: "String" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + schemaUrl: { + serializedName: "properties.schemaUrl", + type: { + name: "String" + } + }, + isInDefaultSet: { + serializedName: "properties.isInDefaultSet", + type: { + name: "Boolean" + } + } + } + } +}; + +export const ExtensionTopic: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExtensionTopic", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + systemTopic: { + serializedName: "properties.systemTopic", + type: { + name: "String" + } + } + } + } +}; + +export const TopicSpace: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TopicSpace", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + topicTemplates: { + serializedName: "properties.topicTemplates", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const TopicTypeInfo: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TopicTypeInfo", + modelProperties: { + ...Resource.type.modelProperties, + provider: { + serializedName: "properties.provider", + type: { + name: "String" + } + }, + displayName: { + serializedName: "properties.displayName", + type: { + name: "String" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + resourceRegionType: { + serializedName: "properties.resourceRegionType", + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + type: { + name: "String" + } + }, + supportedLocations: { + serializedName: "properties.supportedLocations", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + sourceResourceFormat: { + serializedName: "properties.sourceResourceFormat", + type: { + name: "String" + } + }, + supportedScopesForSource: { + serializedName: "properties.supportedScopesForSource", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + areRegionalAndGlobalSourcesSupported: { + serializedName: "properties.areRegionalAndGlobalSourcesSupported", + type: { + name: "Boolean" + } + } + } + } +}; + +export const VerifiedPartner: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "VerifiedPartner", + modelProperties: { + ...Resource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + partnerRegistrationImmutableId: { + serializedName: "properties.partnerRegistrationImmutableId", + type: { + name: "Uuid" + } + }, + organizationName: { + serializedName: "properties.organizationName", + type: { + name: "String" + } + }, + partnerDisplayName: { + serializedName: "properties.partnerDisplayName", + type: { + name: "String" + } + }, + partnerTopicDetails: { + serializedName: "properties.partnerTopicDetails", + type: { + name: "Composite", + className: "PartnerDetails" + } + }, + partnerDestinationDetails: { + serializedName: "properties.partnerDestinationDetails", + type: { + name: "Composite", + className: "PartnerDetails" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const WebhookPartnerDestinationInfo: coreClient.CompositeMapper = { + serializedName: "WebHook", + type: { + name: "Composite", + className: "WebhookPartnerDestinationInfo", + uberParent: "PartnerDestinationInfo", + polymorphicDiscriminator: + PartnerDestinationInfo.type.polymorphicDiscriminator, + modelProperties: { + ...PartnerDestinationInfo.type.modelProperties, + endpointUrl: { + serializedName: "properties.endpointUrl", + type: { + name: "String" + } + }, + endpointBaseUrl: { + serializedName: "properties.endpointBaseUrl", + type: { + name: "String" + } + }, + clientAuthentication: { + serializedName: "properties.clientAuthentication", + type: { + name: "Composite", + className: "PartnerClientAuthentication" + } + } + } + } +}; + +export const WebhookUpdatePartnerDestinationInfo: coreClient.CompositeMapper = { + serializedName: "WebHook", + type: { + name: "Composite", + className: "WebhookUpdatePartnerDestinationInfo", + uberParent: "PartnerUpdateDestinationInfo", + polymorphicDiscriminator: + PartnerUpdateDestinationInfo.type.polymorphicDiscriminator, + modelProperties: { + ...PartnerUpdateDestinationInfo.type.modelProperties, + endpointUrl: { + serializedName: "properties.endpointUrl", + type: { + name: "String" + } + }, + endpointBaseUrl: { + serializedName: "properties.endpointBaseUrl", + type: { + name: "String" + } + }, + clientAuthentication: { + serializedName: "properties.clientAuthentication", + type: { + name: "Composite", + className: "PartnerClientAuthentication" + } + } + } + } +}; + +export const JsonInputSchemaMapping: coreClient.CompositeMapper = { + serializedName: "Json", + type: { + name: "Composite", + className: "JsonInputSchemaMapping", + uberParent: "InputSchemaMapping", + polymorphicDiscriminator: InputSchemaMapping.type.polymorphicDiscriminator, + modelProperties: { + ...InputSchemaMapping.type.modelProperties, + id: { + serializedName: "properties.id", + type: { + name: "Composite", + className: "JsonField" + } + }, + topic: { + serializedName: "properties.topic", + type: { + name: "Composite", + className: "JsonField" + } + }, + eventTime: { + serializedName: "properties.eventTime", + type: { + name: "Composite", + className: "JsonField" + } + }, + eventType: { + serializedName: "properties.eventType", + type: { + name: "Composite", + className: "JsonFieldWithDefault" + } + }, + subject: { + serializedName: "properties.subject", + type: { + name: "Composite", + className: "JsonFieldWithDefault" + } + }, + dataVersion: { + serializedName: "properties.dataVersion", + type: { + name: "Composite", + className: "JsonFieldWithDefault" + } + } + } + } +}; + +export const StaticDeliveryAttributeMapping: coreClient.CompositeMapper = { + serializedName: "Static", + type: { + name: "Composite", + className: "StaticDeliveryAttributeMapping", + uberParent: "DeliveryAttributeMapping", + polymorphicDiscriminator: + DeliveryAttributeMapping.type.polymorphicDiscriminator, + modelProperties: { + ...DeliveryAttributeMapping.type.modelProperties, + value: { + serializedName: "properties.value", + type: { + name: "String" + } + }, + isSecret: { + defaultValue: false, + serializedName: "properties.isSecret", + type: { + name: "Boolean" + } + } + } + } +}; + +export const DynamicDeliveryAttributeMapping: coreClient.CompositeMapper = { + serializedName: "Dynamic", + type: { + name: "Composite", + className: "DynamicDeliveryAttributeMapping", + uberParent: "DeliveryAttributeMapping", + polymorphicDiscriminator: + DeliveryAttributeMapping.type.polymorphicDiscriminator, + modelProperties: { + ...DeliveryAttributeMapping.type.modelProperties, + sourceField: { + serializedName: "properties.sourceField", + type: { + name: "String" + } + } + } + } +}; + +export const StorageBlobDeadLetterDestination: coreClient.CompositeMapper = { + serializedName: "StorageBlob", + type: { + name: "Composite", + className: "StorageBlobDeadLetterDestination", + uberParent: "DeadLetterDestination", + polymorphicDiscriminator: + DeadLetterDestination.type.polymorphicDiscriminator, + modelProperties: { + ...DeadLetterDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + }, + blobContainerName: { + serializedName: "properties.blobContainerName", + type: { + name: "String" + } + } + } + } +}; + +export const NumberInFilter: coreClient.CompositeMapper = { + serializedName: "NumberIn", + type: { + name: "Composite", + className: "NumberInFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "Number" + } + } + } + } + } + } +}; + +export const NumberNotInFilter: coreClient.CompositeMapper = { + serializedName: "NumberNotIn", + type: { + name: "Composite", + className: "NumberNotInFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "Number" + } + } + } + } + } + } +}; + +export const NumberLessThanFilter: coreClient.CompositeMapper = { + serializedName: "NumberLessThan", + type: { + name: "Composite", + className: "NumberLessThanFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + value: { + serializedName: "value", + type: { + name: "Number" + } + } + } + } +}; + +export const NumberGreaterThanFilter: coreClient.CompositeMapper = { + serializedName: "NumberGreaterThan", + type: { + name: "Composite", + className: "NumberGreaterThanFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + value: { + serializedName: "value", + type: { + name: "Number" + } + } + } + } +}; + +export const NumberLessThanOrEqualsFilter: coreClient.CompositeMapper = { + serializedName: "NumberLessThanOrEquals", + type: { + name: "Composite", + className: "NumberLessThanOrEqualsFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + value: { + serializedName: "value", + type: { + name: "Number" + } + } + } + } +}; + +export const NumberGreaterThanOrEqualsFilter: coreClient.CompositeMapper = { + serializedName: "NumberGreaterThanOrEquals", + type: { + name: "Composite", + className: "NumberGreaterThanOrEqualsFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + value: { + serializedName: "value", + type: { + name: "Number" + } + } + } + } +}; + +export const BoolEqualsFilter: coreClient.CompositeMapper = { + serializedName: "BoolEquals", + type: { + name: "Composite", + className: "BoolEqualsFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + value: { + serializedName: "value", + type: { + name: "Boolean" + } + } + } + } +}; + +export const StringInFilter: coreClient.CompositeMapper = { + serializedName: "StringIn", + type: { + name: "Composite", + className: "StringInFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const StringNotInFilter: coreClient.CompositeMapper = { + serializedName: "StringNotIn", + type: { + name: "Composite", + className: "StringNotInFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const StringBeginsWithFilter: coreClient.CompositeMapper = { + serializedName: "StringBeginsWith", + type: { + name: "Composite", + className: "StringBeginsWithFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const StringEndsWithFilter: coreClient.CompositeMapper = { + serializedName: "StringEndsWith", + type: { + name: "Composite", + className: "StringEndsWithFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const StringContainsFilter: coreClient.CompositeMapper = { + serializedName: "StringContains", + type: { + name: "Composite", + className: "StringContainsFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const NumberInRangeFilter: coreClient.CompositeMapper = { + serializedName: "NumberInRange", + type: { + name: "Composite", + className: "NumberInRangeFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "Sequence", + element: { + type: { + name: "Number" + } + } + } + } + } + } + } + } +}; + +export const NumberNotInRangeFilter: coreClient.CompositeMapper = { + serializedName: "NumberNotInRange", + type: { + name: "Composite", + className: "NumberNotInRangeFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "Sequence", + element: { + type: { + name: "Number" + } + } + } + } + } + } + } + } +}; + +export const StringNotBeginsWithFilter: coreClient.CompositeMapper = { + serializedName: "StringNotBeginsWith", + type: { + name: "Composite", + className: "StringNotBeginsWithFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const StringNotEndsWithFilter: coreClient.CompositeMapper = { + serializedName: "StringNotEndsWith", + type: { + name: "Composite", + className: "StringNotEndsWithFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const StringNotContainsFilter: coreClient.CompositeMapper = { + serializedName: "StringNotContains", + type: { + name: "Composite", + className: "StringNotContainsFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const IsNullOrUndefinedFilter: coreClient.CompositeMapper = { + serializedName: "IsNullOrUndefined", + type: { + name: "Composite", + className: "IsNullOrUndefinedFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties + } + } +}; + +export const IsNotNullFilter: coreClient.CompositeMapper = { + serializedName: "IsNotNull", + type: { + name: "Composite", + className: "IsNotNullFilter", + uberParent: "Filter", + polymorphicDiscriminator: Filter.type.polymorphicDiscriminator, + modelProperties: { + ...Filter.type.modelProperties + } + } +}; + +export const WebHookEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "WebHook", + type: { + name: "Composite", + className: "WebHookEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + endpointUrl: { + serializedName: "properties.endpointUrl", + type: { + name: "String" + } + }, + endpointBaseUrl: { + serializedName: "properties.endpointBaseUrl", + readOnly: true, + type: { + name: "String" + } + }, + maxEventsPerBatch: { + defaultValue: 1, + serializedName: "properties.maxEventsPerBatch", + type: { + name: "Number" + } + }, + preferredBatchSizeInKilobytes: { + defaultValue: 64, + serializedName: "properties.preferredBatchSizeInKilobytes", + type: { + name: "Number" + } + }, + azureActiveDirectoryTenantId: { + serializedName: "properties.azureActiveDirectoryTenantId", + type: { + name: "String" + } + }, + azureActiveDirectoryApplicationIdOrUri: { + serializedName: "properties.azureActiveDirectoryApplicationIdOrUri", + type: { + name: "String" + } + }, + deliveryAttributeMappings: { + serializedName: "properties.deliveryAttributeMappings", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DeliveryAttributeMapping" + } + } + } + }, + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", + type: { + name: "String" + } + } + } + } +}; + +export const EventHubEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "EventHub", + type: { + name: "Composite", + className: "EventHubEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + }, + deliveryAttributeMappings: { + serializedName: "properties.deliveryAttributeMappings", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DeliveryAttributeMapping" + } + } + } + } + } + } +}; + +export const StorageQueueEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "StorageQueue", + type: { + name: "Composite", + className: "StorageQueueEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + }, + queueName: { + serializedName: "properties.queueName", + type: { + name: "String" + } + }, + queueMessageTimeToLiveInSeconds: { + serializedName: "properties.queueMessageTimeToLiveInSeconds", + type: { + name: "Number" + } + } + } + } +}; + +export const HybridConnectionEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "HybridConnection", + type: { + name: "Composite", + className: "HybridConnectionEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + }, + deliveryAttributeMappings: { + serializedName: "properties.deliveryAttributeMappings", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DeliveryAttributeMapping" + } + } + } + } + } + } +}; + +export const ServiceBusQueueEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "ServiceBusQueue", + type: { + name: "Composite", + className: "ServiceBusQueueEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + }, + deliveryAttributeMappings: { + serializedName: "properties.deliveryAttributeMappings", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DeliveryAttributeMapping" + } + } + } + } + } + } +}; + +export const ServiceBusTopicEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "ServiceBusTopic", + type: { + name: "Composite", + className: "ServiceBusTopicEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + }, + deliveryAttributeMappings: { + serializedName: "properties.deliveryAttributeMappings", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DeliveryAttributeMapping" + } + } + } + } + } + } +}; + +export const AzureFunctionEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "AzureFunction", + type: { + name: "Composite", + className: "AzureFunctionEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + }, + maxEventsPerBatch: { + defaultValue: 1, + serializedName: "properties.maxEventsPerBatch", + type: { + name: "Number" + } + }, + preferredBatchSizeInKilobytes: { + defaultValue: 64, + serializedName: "properties.preferredBatchSizeInKilobytes", + type: { + name: "Number" + } + }, + deliveryAttributeMappings: { + serializedName: "properties.deliveryAttributeMappings", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DeliveryAttributeMapping" + } + } + } + } + } + } +}; + +export const PartnerEventSubscriptionDestination: coreClient.CompositeMapper = { + serializedName: "PartnerDestination", + type: { + name: "Composite", + className: "PartnerEventSubscriptionDestination", + uberParent: "EventSubscriptionDestination", + polymorphicDiscriminator: + EventSubscriptionDestination.type.polymorphicDiscriminator, + modelProperties: { + ...EventSubscriptionDestination.type.modelProperties, + resourceId: { + serializedName: "properties.resourceId", + type: { + name: "String" + } + } + } + } +}; + +export const NumberInAdvancedFilter: coreClient.CompositeMapper = { + serializedName: "NumberIn", + type: { + name: "Composite", + className: "NumberInAdvancedFilter", + uberParent: "AdvancedFilter", + polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, + modelProperties: { + ...AdvancedFilter.type.modelProperties, + values: { + serializedName: "values", + type: { + name: "Sequence", + element: { + type: { + name: "Number" + } + } + } + } + } + } +}; + +export const NumberNotInAdvancedFilter: coreClient.CompositeMapper = { + serializedName: "NumberNotIn", + type: { + name: "Composite", + className: "NumberNotInAdvancedFilter", + uberParent: "AdvancedFilter", + polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, modelProperties: { ...AdvancedFilter.type.modelProperties, values: { @@ -2949,59 +5039,349 @@ export const StringNotContainsAdvancedFilter: coreClient.CompositeMapper = { name: "Sequence", element: { type: { - name: "String" + name: "String" + } + } + } + } + } + } +}; + +export const IsNullOrUndefinedAdvancedFilter: coreClient.CompositeMapper = { + serializedName: "IsNullOrUndefined", + type: { + name: "Composite", + className: "IsNullOrUndefinedAdvancedFilter", + uberParent: "AdvancedFilter", + polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, + modelProperties: { + ...AdvancedFilter.type.modelProperties + } + } +}; + +export const IsNotNullAdvancedFilter: coreClient.CompositeMapper = { + serializedName: "IsNotNull", + type: { + name: "Composite", + className: "IsNotNullAdvancedFilter", + uberParent: "AdvancedFilter", + polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, + modelProperties: { + ...AdvancedFilter.type.modelProperties + } + } +}; + +export const AzureADPartnerClientAuthentication: coreClient.CompositeMapper = { + serializedName: "AzureAD", + type: { + name: "Composite", + className: "AzureADPartnerClientAuthentication", + uberParent: "PartnerClientAuthentication", + polymorphicDiscriminator: + PartnerClientAuthentication.type.polymorphicDiscriminator, + modelProperties: { + ...PartnerClientAuthentication.type.modelProperties, + azureActiveDirectoryTenantId: { + serializedName: "properties.azureActiveDirectoryTenantId", + type: { + name: "String" + } + }, + azureActiveDirectoryApplicationIdOrUri: { + serializedName: "properties.azureActiveDirectoryApplicationIdOrUri", + type: { + name: "String" + } + } + } + } +}; + +export const Domain: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Domain", + modelProperties: { + ...TrackedResource.type.modelProperties, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "ResourceSku" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "IdentityInfo" + } + }, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + privateEndpointConnections: { + serializedName: "properties.privateEndpointConnections", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", + type: { + name: "String" + } + }, + endpoint: { + serializedName: "properties.endpoint", + readOnly: true, + type: { + name: "String" + } + }, + inputSchema: { + serializedName: "properties.inputSchema", + type: { + name: "String" + } + }, + eventTypeInfo: { + serializedName: "properties.eventTypeInfo", + type: { + name: "Composite", + className: "EventTypeInfo" + } + }, + inputSchemaMapping: { + serializedName: "properties.inputSchemaMapping", + type: { + name: "Composite", + className: "InputSchemaMapping" + } + }, + metricResourceId: { + serializedName: "properties.metricResourceId", + readOnly: true, + type: { + name: "String" + } + }, + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", + type: { + name: "String" + } + }, + inboundIpRules: { + serializedName: "properties.inboundIpRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InboundIpRule" + } + } + } + }, + disableLocalAuth: { + defaultValue: false, + serializedName: "properties.disableLocalAuth", + type: { + name: "Boolean" + } + }, + autoCreateTopicWithFirstSubscription: { + defaultValue: true, + serializedName: "properties.autoCreateTopicWithFirstSubscription", + type: { + name: "Boolean" + } + }, + autoDeleteTopicWithLastSubscription: { + defaultValue: true, + serializedName: "properties.autoDeleteTopicWithLastSubscription", + type: { + name: "Boolean" + } + }, + dataResidencyBoundary: { + serializedName: "properties.dataResidencyBoundary", + type: { + name: "String" + } + } + } + } +}; + +export const Namespace: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Namespace", + modelProperties: { + ...TrackedResource.type.modelProperties, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "NamespaceSku" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "IdentityInfo" + } + }, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + privateEndpointConnections: { + serializedName: "properties.privateEndpointConnections", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + topicsConfiguration: { + serializedName: "properties.topicsConfiguration", + type: { + name: "Composite", + className: "TopicsConfiguration" + } + }, + topicSpacesConfiguration: { + serializedName: "properties.topicSpacesConfiguration", + type: { + name: "Composite", + className: "TopicSpacesConfiguration" + } + }, + isZoneRedundant: { + serializedName: "properties.isZoneRedundant", + type: { + name: "Boolean" + } + }, + publicNetworkAccess: { + serializedName: "properties.publicNetworkAccess", + type: { + name: "String" + } + }, + inboundIpRules: { + serializedName: "properties.inboundIpRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InboundIpRule" } } } + }, + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", + type: { + name: "String" + } } } } }; -export const IsNullOrUndefinedAdvancedFilter: coreClient.CompositeMapper = { - serializedName: "IsNullOrUndefined", - type: { - name: "Composite", - className: "IsNullOrUndefinedAdvancedFilter", - uberParent: "AdvancedFilter", - polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, - modelProperties: { - ...AdvancedFilter.type.modelProperties - } - } -}; - -export const IsNotNullAdvancedFilter: coreClient.CompositeMapper = { - serializedName: "IsNotNull", - type: { - name: "Composite", - className: "IsNotNullAdvancedFilter", - uberParent: "AdvancedFilter", - polymorphicDiscriminator: AdvancedFilter.type.polymorphicDiscriminator, - modelProperties: { - ...AdvancedFilter.type.modelProperties - } - } -}; - -export const StorageBlobDeadLetterDestination: coreClient.CompositeMapper = { - serializedName: "StorageBlob", +export const PartnerDestination: coreClient.CompositeMapper = { type: { name: "Composite", - className: "StorageBlobDeadLetterDestination", - uberParent: "DeadLetterDestination", - polymorphicDiscriminator: - DeadLetterDestination.type.polymorphicDiscriminator, + className: "PartnerDestination", modelProperties: { - ...DeadLetterDestination.type.modelProperties, - resourceId: { - serializedName: "properties.resourceId", + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + partnerRegistrationImmutableId: { + serializedName: "properties.partnerRegistrationImmutableId", + type: { + name: "Uuid" + } + }, + endpointServiceContext: { + serializedName: "properties.endpointServiceContext", type: { name: "String" } }, - blobContainerName: { - serializedName: "properties.blobContainerName", + expirationTimeIfNotActivatedUtc: { + serializedName: "properties.expirationTimeIfNotActivatedUtc", + type: { + name: "DateTime" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + activationState: { + serializedName: "properties.activationState", + type: { + name: "String" + } + }, + endpointBaseUrl: { + serializedName: "properties.endpointBaseUrl", + type: { + name: "String" + } + }, + messageForActivation: { + serializedName: "properties.messageForActivation", type: { name: "String" } @@ -3010,10 +5390,10 @@ export const StorageBlobDeadLetterDestination: coreClient.CompositeMapper = { } }; -export const Domain: coreClient.CompositeMapper = { +export const PartnerNamespace: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Domain", + className: "PartnerNamespace", modelProperties: { ...TrackedResource.type.modelProperties, systemData: { @@ -3023,13 +5403,6 @@ export const Domain: coreClient.CompositeMapper = { className: "SystemData" } }, - identity: { - serializedName: "identity", - type: { - name: "Composite", - className: "IdentityInfo" - } - }, privateEndpointConnections: { serializedName: "properties.privateEndpointConnections", readOnly: true, @@ -3050,28 +5423,20 @@ export const Domain: coreClient.CompositeMapper = { name: "String" } }, - endpoint: { - serializedName: "properties.endpoint", - readOnly: true, + partnerRegistrationFullyQualifiedId: { + serializedName: "properties.partnerRegistrationFullyQualifiedId", type: { name: "String" } }, - inputSchema: { - serializedName: "properties.inputSchema", + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", type: { name: "String" } }, - inputSchemaMapping: { - serializedName: "properties.inputSchemaMapping", - type: { - name: "Composite", - className: "InputSchemaMapping" - } - }, - metricResourceId: { - serializedName: "properties.metricResourceId", + endpoint: { + serializedName: "properties.endpoint", readOnly: true, type: { name: "String" @@ -3099,25 +5464,166 @@ export const Domain: coreClient.CompositeMapper = { defaultValue: false, serializedName: "properties.disableLocalAuth", type: { - name: "Boolean" + name: "Boolean" + } + }, + partnerTopicRoutingMode: { + defaultValue: "SourceEventAttribute", + serializedName: "properties.partnerTopicRoutingMode", + type: { + name: "String" + } + } + } + } +}; + +export const PartnerRegistration: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerRegistration", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + partnerRegistrationImmutableId: { + serializedName: "properties.partnerRegistrationImmutableId", + type: { + name: "Uuid" + } + } + } + } +}; + +export const PartnerTopic: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerTopic", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "IdentityInfo" + } + }, + partnerRegistrationImmutableId: { + serializedName: "properties.partnerRegistrationImmutableId", + type: { + name: "Uuid" + } + }, + source: { + serializedName: "properties.source", + type: { + name: "String" + } + }, + eventTypeInfo: { + serializedName: "properties.eventTypeInfo", + type: { + name: "Composite", + className: "EventTypeInfo" + } + }, + expirationTimeIfNotActivatedUtc: { + serializedName: "properties.expirationTimeIfNotActivatedUtc", + type: { + name: "DateTime" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + activationState: { + serializedName: "properties.activationState", + type: { + name: "String" + } + }, + partnerTopicFriendlyDescription: { + serializedName: "properties.partnerTopicFriendlyDescription", + type: { + name: "String" + } + }, + messageForActivation: { + serializedName: "properties.messageForActivation", + type: { + name: "String" + } + } + } + } +}; + +export const SystemTopic: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SystemTopic", + modelProperties: { + ...TrackedResource.type.modelProperties, + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "IdentityInfo" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" } }, - autoCreateTopicWithFirstSubscription: { - defaultValue: true, - serializedName: "properties.autoCreateTopicWithFirstSubscription", + source: { + serializedName: "properties.source", type: { - name: "Boolean" + name: "String" } }, - autoDeleteTopicWithLastSubscription: { - defaultValue: true, - serializedName: "properties.autoDeleteTopicWithLastSubscription", + topicType: { + serializedName: "properties.topicType", type: { - name: "Boolean" + name: "String" } }, - dataResidencyBoundary: { - serializedName: "properties.dataResidencyBoundary", + metricResourceId: { + serializedName: "properties.metricResourceId", + readOnly: true, type: { name: "String" } @@ -3132,6 +5638,13 @@ export const Topic: coreClient.CompositeMapper = { className: "Topic", modelProperties: { ...TrackedResource.type.modelProperties, + sku: { + serializedName: "sku", + type: { + name: "Composite", + className: "ResourceSku" + } + }, identity: { serializedName: "identity", type: { @@ -3139,6 +5652,20 @@ export const Topic: coreClient.CompositeMapper = { className: "IdentityInfo" } }, + kind: { + defaultValue: "Azure", + serializedName: "kind", + type: { + name: "String" + } + }, + extendedLocation: { + serializedName: "extendedLocation", + type: { + name: "Composite", + className: "ExtendedLocation" + } + }, systemData: { serializedName: "systemData", type: { @@ -3173,6 +5700,19 @@ export const Topic: coreClient.CompositeMapper = { name: "String" } }, + eventTypeInfo: { + serializedName: "properties.eventTypeInfo", + type: { + name: "Composite", + className: "EventTypeInfo" + } + }, + minimumTlsVersionAllowed: { + serializedName: "properties.minimumTlsVersionAllowed", + type: { + name: "String" + } + }, inputSchema: { serializedName: "properties.inputSchema", type: { @@ -3228,80 +5768,223 @@ export const Topic: coreClient.CompositeMapper = { } }; -export const PartnerNamespace: coreClient.CompositeMapper = { +export const CaCertificatesDeleteHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerNamespace", + className: "CaCertificatesDeleteHeaders", modelProperties: { - ...TrackedResource.type.modelProperties, - systemData: { - serializedName: "systemData", + location: { + serializedName: "location", type: { - name: "Composite", - className: "SystemData" + name: "String" } - }, - privateEndpointConnections: { - serializedName: "properties.privateEndpointConnections", - readOnly: true, + } + } + } +}; + +export const ChannelsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ChannelsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PrivateEndpointConnection" - } - } + name: "String" } - }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + } + } + } +}; + +export const ClientGroupsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientGroupsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - partnerRegistrationFullyQualifiedId: { - serializedName: "properties.partnerRegistrationFullyQualifiedId", + } + } + } +}; + +export const ClientsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - endpoint: { - serializedName: "properties.endpoint", - readOnly: true, + } + } + } +}; + +export const DomainsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DomainsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - publicNetworkAccess: { - serializedName: "properties.publicNetworkAccess", + } + } + } +}; + +export const DomainTopicsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DomainTopicsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - inboundIpRules: { - serializedName: "properties.inboundIpRules", + } + } + } +}; + +export const DomainTopicEventSubscriptionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DomainTopicEventSubscriptionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "InboundIpRule" - } - } + name: "String" } - }, - disableLocalAuth: { - defaultValue: false, - serializedName: "properties.disableLocalAuth", + } + } + } +}; + +export const TopicEventSubscriptionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TopicEventSubscriptionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Boolean" + name: "String" } - }, - partnerTopicRoutingMode: { - defaultValue: "SourceEventAttribute", - serializedName: "properties.partnerTopicRoutingMode", + } + } + } +}; + +export const DomainEventSubscriptionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DomainEventSubscriptionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const EventSubscriptionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "EventSubscriptionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const SystemTopicEventSubscriptionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SystemTopicEventSubscriptionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const NamespaceTopicEventSubscriptionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NamespaceTopicEventSubscriptionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const NamespaceTopicEventSubscriptionsUpdateHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NamespaceTopicEventSubscriptionsUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const PartnerTopicEventSubscriptionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerTopicEventSubscriptionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const NamespacesDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NamespacesDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } @@ -3310,102 +5993,178 @@ export const PartnerNamespace: coreClient.CompositeMapper = { } }; -export const PartnerRegistration: coreClient.CompositeMapper = { +export const NamespacesUpdateHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerRegistration", + className: "NamespacesUpdateHeaders", modelProperties: { - ...TrackedResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData" - } - }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + location: { + serializedName: "location", type: { name: "String" } - }, - partnerRegistrationImmutableId: { - serializedName: "properties.partnerRegistrationImmutableId", + } + } + } +}; + +export const NamespacesRegenerateKeyHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NamespacesRegenerateKeyHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Uuid" + name: "String" } } } } }; -export const PartnerTopic: coreClient.CompositeMapper = { +export const NamespaceTopicsDeleteHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PartnerTopic", + className: "NamespaceTopicsDeleteHeaders", modelProperties: { - ...TrackedResource.type.modelProperties, - systemData: { - serializedName: "systemData", + location: { + serializedName: "location", type: { - name: "Composite", - className: "SystemData" + name: "String" } - }, - identity: { - serializedName: "identity", + } + } + } +}; + +export const NamespaceTopicsUpdateHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NamespaceTopicsUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Composite", - className: "IdentityInfo" + name: "String" } - }, - partnerRegistrationImmutableId: { - serializedName: "properties.partnerRegistrationImmutableId", + } + } + } +}; + +export const NamespaceTopicsRegenerateKeyHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "NamespaceTopicsRegenerateKeyHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Uuid" + name: "String" } - }, - source: { - serializedName: "properties.source", + } + } + } +}; + +export const PartnerConfigurationsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerConfigurationsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - eventTypeInfo: { - serializedName: "properties.eventTypeInfo", + } + } + } +}; + +export const PartnerDestinationsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerDestinationsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Composite", - className: "EventTypeInfo" + name: "String" } - }, - expirationTimeIfNotActivatedUtc: { - serializedName: "properties.expirationTimeIfNotActivatedUtc", + } + } + } +}; + +export const PartnerDestinationsUpdateHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerDestinationsUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "DateTime" + name: "String" } - }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + } + } + } +}; + +export const PartnerNamespacesDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerNamespacesDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - activationState: { - serializedName: "properties.activationState", + } + } + } +}; + +export const PartnerRegistrationsCreateOrUpdateHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerRegistrationsCreateOrUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - partnerTopicFriendlyDescription: { - serializedName: "properties.partnerTopicFriendlyDescription", + } + } + } +}; + +export const PartnerRegistrationsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerRegistrationsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - messageForActivation: { - serializedName: "properties.messageForActivation", + } + } + } +}; + +export const PartnerTopicsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PartnerTopicsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } @@ -3414,48 +6173,88 @@ export const PartnerTopic: coreClient.CompositeMapper = { } }; -export const SystemTopic: coreClient.CompositeMapper = { +export const PermissionBindingsDeleteHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SystemTopic", + className: "PermissionBindingsDeleteHeaders", modelProperties: { - ...TrackedResource.type.modelProperties, - identity: { - serializedName: "identity", + location: { + serializedName: "location", type: { - name: "Composite", - className: "IdentityInfo" + name: "String" } - }, - systemData: { - serializedName: "systemData", + } + } + } +}; + +export const PrivateEndpointConnectionsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PrivateEndpointConnectionsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { - name: "Composite", - className: "SystemData" + name: "String" } - }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, + } + } + } +}; + +export const SystemTopicsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SystemTopicsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - source: { - serializedName: "properties.source", + } + } + } +}; + +export const TopicsDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TopicsDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - topicType: { - serializedName: "properties.topicType", + } + } + } +}; + +export const TopicsRegenerateKeyHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TopicsRegenerateKeyHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } - }, - metricResourceId: { - serializedName: "properties.metricResourceId", - readOnly: true, + } + } + } +}; + +export const TopicSpacesDeleteHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TopicSpacesDeleteHeaders", + modelProperties: { + location: { + serializedName: "location", type: { name: "String" } @@ -3465,14 +6264,40 @@ export const SystemTopic: coreClient.CompositeMapper = { }; export let discriminators = { + PartnerDestinationInfo: PartnerDestinationInfo, + PartnerUpdateDestinationInfo: PartnerUpdateDestinationInfo, InputSchemaMapping: InputSchemaMapping, DeliveryAttributeMapping: DeliveryAttributeMapping, + DeadLetterDestination: DeadLetterDestination, + Filter: Filter, EventSubscriptionDestination: EventSubscriptionDestination, AdvancedFilter: AdvancedFilter, - DeadLetterDestination: DeadLetterDestination, + PartnerClientAuthentication: PartnerClientAuthentication, + "PartnerDestinationInfo.WebHook": WebhookPartnerDestinationInfo, + "PartnerUpdateDestinationInfo.WebHook": WebhookUpdatePartnerDestinationInfo, "InputSchemaMapping.Json": JsonInputSchemaMapping, "DeliveryAttributeMapping.Static": StaticDeliveryAttributeMapping, "DeliveryAttributeMapping.Dynamic": DynamicDeliveryAttributeMapping, + "DeadLetterDestination.StorageBlob": StorageBlobDeadLetterDestination, + "Filter.NumberIn": NumberInFilter, + "Filter.NumberNotIn": NumberNotInFilter, + "Filter.NumberLessThan": NumberLessThanFilter, + "Filter.NumberGreaterThan": NumberGreaterThanFilter, + "Filter.NumberLessThanOrEquals": NumberLessThanOrEqualsFilter, + "Filter.NumberGreaterThanOrEquals": NumberGreaterThanOrEqualsFilter, + "Filter.BoolEquals": BoolEqualsFilter, + "Filter.StringIn": StringInFilter, + "Filter.StringNotIn": StringNotInFilter, + "Filter.StringBeginsWith": StringBeginsWithFilter, + "Filter.StringEndsWith": StringEndsWithFilter, + "Filter.StringContains": StringContainsFilter, + "Filter.NumberInRange": NumberInRangeFilter, + "Filter.NumberNotInRange": NumberNotInRangeFilter, + "Filter.StringNotBeginsWith": StringNotBeginsWithFilter, + "Filter.StringNotEndsWith": StringNotEndsWithFilter, + "Filter.StringNotContains": StringNotContainsFilter, + "Filter.IsNullOrUndefined": IsNullOrUndefinedFilter, + "Filter.IsNotNull": IsNotNullFilter, "EventSubscriptionDestination.WebHook": WebHookEventSubscriptionDestination, "EventSubscriptionDestination.EventHub": EventHubEventSubscriptionDestination, "EventSubscriptionDestination.StorageQueue": StorageQueueEventSubscriptionDestination, @@ -3480,6 +6305,7 @@ export let discriminators = { "EventSubscriptionDestination.ServiceBusQueue": ServiceBusQueueEventSubscriptionDestination, "EventSubscriptionDestination.ServiceBusTopic": ServiceBusTopicEventSubscriptionDestination, "EventSubscriptionDestination.AzureFunction": AzureFunctionEventSubscriptionDestination, + "EventSubscriptionDestination.PartnerDestination": PartnerEventSubscriptionDestination, "AdvancedFilter.NumberIn": NumberInAdvancedFilter, "AdvancedFilter.NumberNotIn": NumberNotInAdvancedFilter, "AdvancedFilter.NumberLessThan": NumberLessThanAdvancedFilter, @@ -3499,5 +6325,5 @@ export let discriminators = { "AdvancedFilter.StringNotContains": StringNotContainsAdvancedFilter, "AdvancedFilter.IsNullOrUndefined": IsNullOrUndefinedAdvancedFilter, "AdvancedFilter.IsNotNull": IsNotNullAdvancedFilter, - "DeadLetterDestination.StorageBlob": StorageBlobDeadLetterDestination + "PartnerClientAuthentication.AzureAD": AzureADPartnerClientAuthentication }; diff --git a/sdk/eventgrid/arm-eventgrid/src/models/parameters.ts b/sdk/eventgrid/arm-eventgrid/src/models/parameters.ts index e6cee1f05527..abb82d2fdf86 100644 --- a/sdk/eventgrid/arm-eventgrid/src/models/parameters.ts +++ b/sdk/eventgrid/arm-eventgrid/src/models/parameters.ts @@ -12,19 +12,29 @@ import { OperationQueryParameter } from "@azure/core-client"; import { + CaCertificate as CaCertificateMapper, Channel as ChannelMapper, ChannelUpdateParameters as ChannelUpdateParametersMapper, + ClientGroup as ClientGroupMapper, + Client as ClientMapper, Domain as DomainMapper, DomainUpdateParameters as DomainUpdateParametersMapper, DomainRegenerateKeyRequest as DomainRegenerateKeyRequestMapper, EventSubscription as EventSubscriptionMapper, EventSubscriptionUpdateParameters as EventSubscriptionUpdateParametersMapper, - Topic as TopicMapper, - TopicUpdateParameters as TopicUpdateParametersMapper, + Subscription as SubscriptionMapper, + SubscriptionUpdateParameters as SubscriptionUpdateParametersMapper, + Namespace as NamespaceMapper, + NamespaceUpdateParameters as NamespaceUpdateParametersMapper, + NamespaceRegenerateKeyRequest as NamespaceRegenerateKeyRequestMapper, + NamespaceTopic as NamespaceTopicMapper, + NamespaceTopicUpdateParameters as NamespaceTopicUpdateParametersMapper, TopicRegenerateKeyRequest as TopicRegenerateKeyRequestMapper, PartnerConfiguration as PartnerConfigurationMapper, PartnerConfigurationUpdateParameters as PartnerConfigurationUpdateParametersMapper, Partner as PartnerMapper, + PartnerDestination as PartnerDestinationMapper, + PartnerDestinationUpdateParameters as PartnerDestinationUpdateParametersMapper, PartnerNamespace as PartnerNamespaceMapper, PartnerNamespaceUpdateParameters as PartnerNamespaceUpdateParametersMapper, PartnerNamespaceRegenerateKeyRequest as PartnerNamespaceRegenerateKeyRequestMapper, @@ -32,9 +42,13 @@ import { PartnerRegistrationUpdateParameters as PartnerRegistrationUpdateParametersMapper, PartnerTopic as PartnerTopicMapper, PartnerTopicUpdateParameters as PartnerTopicUpdateParametersMapper, + PermissionBinding as PermissionBindingMapper, PrivateEndpointConnection as PrivateEndpointConnectionMapper, SystemTopic as SystemTopicMapper, - SystemTopicUpdateParameters as SystemTopicUpdateParametersMapper + SystemTopicUpdateParameters as SystemTopicUpdateParametersMapper, + Topic as TopicMapper, + TopicUpdateParameters as TopicUpdateParametersMapper, + TopicSpace as TopicSpaceMapper } from "../models/mappers"; export const accept: OperationParameter = { @@ -83,10 +97,15 @@ export const resourceGroupName: OperationURLParameter = { } }; -export const partnerNamespaceName: OperationURLParameter = { - parameterPath: "partnerNamespaceName", +export const namespaceName: OperationURLParameter = { + parameterPath: "namespaceName", mapper: { - serializedName: "partnerNamespaceName", + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "namespaceName", required: true, type: { name: "String" @@ -94,10 +113,15 @@ export const partnerNamespaceName: OperationURLParameter = { } }; -export const channelName: OperationURLParameter = { - parameterPath: "channelName", +export const caCertificateName: OperationURLParameter = { + parameterPath: "caCertificateName", mapper: { - serializedName: "channelName", + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "caCertificateName", required: true, type: { name: "String" @@ -108,7 +132,7 @@ export const channelName: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2022-06-15", + defaultValue: "2023-06-01-preview", isConstant: true, serializedName: "api-version", type: { @@ -129,14 +153,9 @@ export const contentType: OperationParameter = { } }; -export const channelInfo: OperationParameter = { - parameterPath: "channelInfo", - mapper: ChannelMapper -}; - -export const channelUpdateParameters: OperationParameter = { - parameterPath: "channelUpdateParameters", - mapper: ChannelUpdateParametersMapper +export const caCertificateInfo: OperationParameter = { + parameterPath: "caCertificateInfo", + mapper: CaCertificateMapper }; export const filter: OperationQueryParameter = { @@ -171,6 +190,80 @@ export const nextLink: OperationURLParameter = { skipEncoding: true }; +export const partnerNamespaceName: OperationURLParameter = { + parameterPath: "partnerNamespaceName", + mapper: { + serializedName: "partnerNamespaceName", + required: true, + type: { + name: "String" + } + } +}; + +export const channelName: OperationURLParameter = { + parameterPath: "channelName", + mapper: { + serializedName: "channelName", + required: true, + type: { + name: "String" + } + } +}; + +export const channelInfo: OperationParameter = { + parameterPath: "channelInfo", + mapper: ChannelMapper +}; + +export const channelUpdateParameters: OperationParameter = { + parameterPath: "channelUpdateParameters", + mapper: ChannelUpdateParametersMapper +}; + +export const clientGroupName: OperationURLParameter = { + parameterPath: "clientGroupName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "clientGroupName", + required: true, + type: { + name: "String" + } + } +}; + +export const clientGroupInfo: OperationParameter = { + parameterPath: "clientGroupInfo", + mapper: ClientGroupMapper +}; + +export const clientName: OperationURLParameter = { + parameterPath: "clientName", + mapper: { + constraints: { + Pattern: new RegExp("^[-a-zA-Z0-9:\\._]*$"), + MaxLength: 128, + MinLength: 1 + }, + serializedName: "clientName", + required: true, + type: { + name: "String" + } + } +}; + +export const clientInfo: OperationParameter = { + parameterPath: "clientInfo", + mapper: ClientMapper +}; + export const domainName: OperationURLParameter = { parameterPath: "domainName", mapper: { @@ -318,6 +411,48 @@ export const systemTopicName: OperationURLParameter = { } }; +export const topicName1: OperationURLParameter = { + parameterPath: "topicName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "topicName", + required: true, + type: { + name: "String" + } + } +}; + +export const eventSubscriptionName1: OperationURLParameter = { + parameterPath: "eventSubscriptionName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "eventSubscriptionName", + required: true, + type: { + name: "String" + } + } +}; + +export const eventSubscriptionInfo1: OperationParameter = { + parameterPath: "eventSubscriptionInfo", + mapper: SubscriptionMapper +}; + +export const eventSubscriptionUpdateParameters1: OperationParameter = { + parameterPath: "eventSubscriptionUpdateParameters", + mapper: SubscriptionUpdateParametersMapper +}; + export const partnerTopicName: OperationURLParameter = { parameterPath: "partnerTopicName", mapper: { @@ -329,17 +464,32 @@ export const partnerTopicName: OperationURLParameter = { } }; -export const topicInfo: OperationParameter = { - parameterPath: "topicInfo", - mapper: TopicMapper +export const namespaceInfo: OperationParameter = { + parameterPath: "namespaceInfo", + mapper: NamespaceMapper }; -export const topicUpdateParameters: OperationParameter = { - parameterPath: "topicUpdateParameters", - mapper: TopicUpdateParametersMapper +export const namespaceUpdateParameters: OperationParameter = { + parameterPath: "namespaceUpdateParameters", + mapper: NamespaceUpdateParametersMapper }; export const regenerateKeyRequest1: OperationParameter = { + parameterPath: "regenerateKeyRequest", + mapper: NamespaceRegenerateKeyRequestMapper +}; + +export const namespaceTopicInfo: OperationParameter = { + parameterPath: "namespaceTopicInfo", + mapper: NamespaceTopicMapper +}; + +export const namespaceTopicUpdateParameters: OperationParameter = { + parameterPath: "namespaceTopicUpdateParameters", + mapper: NamespaceTopicUpdateParametersMapper +}; + +export const regenerateKeyRequest2: OperationParameter = { parameterPath: "regenerateKeyRequest", mapper: TopicRegenerateKeyRequestMapper }; @@ -359,6 +509,32 @@ export const partnerInfo: OperationParameter = { mapper: PartnerMapper }; +export const partnerDestinationName: OperationURLParameter = { + parameterPath: "partnerDestinationName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "partnerDestinationName", + required: true, + type: { + name: "String" + } + } +}; + +export const partnerDestination: OperationParameter = { + parameterPath: "partnerDestination", + mapper: PartnerDestinationMapper +}; + +export const partnerDestinationUpdateParameters: OperationParameter = { + parameterPath: "partnerDestinationUpdateParameters", + mapper: PartnerDestinationUpdateParametersMapper +}; + export const partnerNamespaceInfo: OperationParameter = { parameterPath: "partnerNamespaceInfo", mapper: PartnerNamespaceMapper @@ -369,7 +545,7 @@ export const partnerNamespaceUpdateParameters: OperationParameter = { mapper: PartnerNamespaceUpdateParametersMapper }; -export const regenerateKeyRequest2: OperationParameter = { +export const regenerateKeyRequest3: OperationParameter = { parameterPath: "regenerateKeyRequest", mapper: PartnerNamespaceRegenerateKeyRequestMapper }; @@ -405,6 +581,27 @@ export const partnerTopicUpdateParameters: OperationParameter = { mapper: PartnerTopicUpdateParametersMapper }; +export const permissionBindingName: OperationURLParameter = { + parameterPath: "permissionBindingName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "permissionBindingName", + required: true, + type: { + name: "String" + } + } +}; + +export const permissionBindingInfo: OperationParameter = { + parameterPath: "permissionBindingInfo", + mapper: PermissionBindingMapper +}; + export const parentType: OperationURLParameter = { parameterPath: "parentType", mapper: { @@ -475,6 +672,16 @@ export const systemTopicUpdateParameters: OperationParameter = { mapper: SystemTopicUpdateParametersMapper }; +export const topicInfo: OperationParameter = { + parameterPath: "topicInfo", + mapper: TopicMapper +}; + +export const topicUpdateParameters: OperationParameter = { + parameterPath: "topicUpdateParameters", + mapper: TopicUpdateParametersMapper +}; + export const scope1: OperationURLParameter = { parameterPath: "scope", mapper: { @@ -486,6 +693,27 @@ export const scope1: OperationURLParameter = { } }; +export const topicSpaceName: OperationURLParameter = { + parameterPath: "topicSpaceName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9-]*$"), + MaxLength: 50, + MinLength: 3 + }, + serializedName: "topicSpaceName", + required: true, + type: { + name: "String" + } + } +}; + +export const topicSpaceInfo: OperationParameter = { + parameterPath: "topicSpaceInfo", + mapper: TopicSpaceMapper +}; + export const verifiedPartnerName: OperationURLParameter = { parameterPath: "verifiedPartnerName", mapper: { diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/caCertificates.ts b/sdk/eventgrid/arm-eventgrid/src/operations/caCertificates.ts new file mode 100644 index 000000000000..8505eb9c1c9b --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/caCertificates.ts @@ -0,0 +1,508 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { CaCertificates } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + CaCertificate, + CaCertificatesListByNamespaceNextOptionalParams, + CaCertificatesListByNamespaceOptionalParams, + CaCertificatesListByNamespaceResponse, + CaCertificatesGetOptionalParams, + CaCertificatesGetResponse, + CaCertificatesCreateOrUpdateOptionalParams, + CaCertificatesCreateOrUpdateResponse, + CaCertificatesDeleteOptionalParams, + CaCertificatesListByNamespaceNextResponse +} from "../models"; + +/// +/** Class containing CaCertificates operations. */ +export class CaCertificatesImpl implements CaCertificates { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class CaCertificates class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * Get all the CA certificates under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + public listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: CaCertificatesListByNamespaceOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByNamespacePagingAll( + resourceGroupName, + namespaceName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options, + settings + ); + } + }; + } + + private async *listByNamespacePagingPage( + resourceGroupName: string, + namespaceName: string, + options?: CaCertificatesListByNamespaceOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: CaCertificatesListByNamespaceResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByNamespace( + resourceGroupName, + namespaceName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByNamespaceNext( + resourceGroupName, + namespaceName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByNamespacePagingAll( + resourceGroupName: string, + namespaceName: string, + options?: CaCertificatesListByNamespaceOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a CA certificate. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName Name of the CA certificate. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + options?: CaCertificatesGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, caCertificateName, options }, + getOperationSpec + ); + } + + /** + * Create or update a CA certificate with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName The CA certificate name. + * @param caCertificateInfo CA certificate information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + caCertificateInfo: CaCertificate, + options?: CaCertificatesCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CaCertificatesCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + caCertificateName, + caCertificateInfo, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + CaCertificatesCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a CA certificate with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName The CA certificate name. + * @param caCertificateInfo CA certificate information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + caCertificateInfo: CaCertificate, + options?: CaCertificatesCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + caCertificateName, + caCertificateInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete an existing CA certificate. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName Name of the CA certificate. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + options?: CaCertificatesDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, caCertificateName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete an existing CA certificate. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName Name of the CA certificate. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + options?: CaCertificatesDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + caCertificateName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Get all the CA certificates under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + private _listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: CaCertificatesListByNamespaceOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + listByNamespaceOperationSpec + ); + } + + /** + * ListByNamespaceNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param nextLink The nextLink from the previous successful call to the ListByNamespace method. + * @param options The options parameters. + */ + private _listByNamespaceNext( + resourceGroupName: string, + namespaceName: string, + nextLink: string, + options?: CaCertificatesListByNamespaceNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, nextLink, options }, + listByNamespaceNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/caCertificates/{caCertificateName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CaCertificate + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.caCertificateName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/caCertificates/{caCertificateName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.CaCertificate + }, + 201: { + bodyMapper: Mappers.CaCertificate + }, + 202: { + bodyMapper: Mappers.CaCertificate + }, + 204: { + bodyMapper: Mappers.CaCertificate + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.caCertificateInfo, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.caCertificateName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/caCertificates/{caCertificateName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.caCertificateName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/caCertificates", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CaCertificatesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CaCertificatesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/channels.ts b/sdk/eventgrid/arm-eventgrid/src/operations/channels.ts index a3b368322421..ef4901608d46 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/channels.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/channels.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { Channel, ChannelsListByPartnerNamespaceNextOptionalParams, @@ -187,14 +191,14 @@ export class ChannelsImpl implements Channels { partnerNamespaceName: string, channelName: string, options?: ChannelsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -227,13 +231,13 @@ export class ChannelsImpl implements Channels { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, partnerNamespaceName, channelName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerNamespaceName, channelName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -481,8 +485,8 @@ const listByPartnerNamespaceNextOperationSpec: coreClient.OperationSpec = { Parameters.$host, Parameters.subscriptionId, Parameters.resourceGroupName, - Parameters.partnerNamespaceName, - Parameters.nextLink + Parameters.nextLink, + Parameters.partnerNamespaceName ], headerParameters: [Parameters.accept], serializer diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/clientGroups.ts b/sdk/eventgrid/arm-eventgrid/src/operations/clientGroups.ts new file mode 100644 index 000000000000..ad0dc0eae40d --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/clientGroups.ts @@ -0,0 +1,508 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { ClientGroups } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + ClientGroup, + ClientGroupsListByNamespaceNextOptionalParams, + ClientGroupsListByNamespaceOptionalParams, + ClientGroupsListByNamespaceResponse, + ClientGroupsGetOptionalParams, + ClientGroupsGetResponse, + ClientGroupsCreateOrUpdateOptionalParams, + ClientGroupsCreateOrUpdateResponse, + ClientGroupsDeleteOptionalParams, + ClientGroupsListByNamespaceNextResponse +} from "../models"; + +/// +/** Class containing ClientGroups operations. */ +export class ClientGroupsImpl implements ClientGroups { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class ClientGroups class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * Get all the client groups under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + public listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: ClientGroupsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByNamespacePagingAll( + resourceGroupName, + namespaceName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options, + settings + ); + } + }; + } + + private async *listByNamespacePagingPage( + resourceGroupName: string, + namespaceName: string, + options?: ClientGroupsListByNamespaceOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: ClientGroupsListByNamespaceResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByNamespace( + resourceGroupName, + namespaceName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByNamespaceNext( + resourceGroupName, + namespaceName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByNamespacePagingAll( + resourceGroupName: string, + namespaceName: string, + options?: ClientGroupsListByNamespaceOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a client group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName Name of the client group. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + options?: ClientGroupsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, clientGroupName, options }, + getOperationSpec + ); + } + + /** + * Create or update a client group with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName The client group name. + * @param clientGroupInfo Client group information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + clientGroupInfo: ClientGroup, + options?: ClientGroupsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + ClientGroupsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + clientGroupName, + clientGroupInfo, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + ClientGroupsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a client group with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName The client group name. + * @param clientGroupInfo Client group information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + clientGroupInfo: ClientGroup, + options?: ClientGroupsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + clientGroupName, + clientGroupInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete an existing client group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName Name of the client group. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + options?: ClientGroupsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, clientGroupName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete an existing client group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName Name of the client group. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + options?: ClientGroupsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + clientGroupName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Get all the client groups under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + private _listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: ClientGroupsListByNamespaceOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + listByNamespaceOperationSpec + ); + } + + /** + * ListByNamespaceNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param nextLink The nextLink from the previous successful call to the ListByNamespace method. + * @param options The options parameters. + */ + private _listByNamespaceNext( + resourceGroupName: string, + namespaceName: string, + nextLink: string, + options?: ClientGroupsListByNamespaceNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, nextLink, options }, + listByNamespaceNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clientGroups/{clientGroupName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ClientGroup + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.clientGroupName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clientGroups/{clientGroupName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.ClientGroup + }, + 201: { + bodyMapper: Mappers.ClientGroup + }, + 202: { + bodyMapper: Mappers.ClientGroup + }, + 204: { + bodyMapper: Mappers.ClientGroup + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.clientGroupInfo, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.clientGroupName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clientGroups/{clientGroupName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.clientGroupName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clientGroups", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ClientGroupsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ClientGroupsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/clients.ts b/sdk/eventgrid/arm-eventgrid/src/operations/clients.ts new file mode 100644 index 000000000000..59c5c68c31d6 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/clients.ts @@ -0,0 +1,508 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { Clients } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + Client, + ClientsListByNamespaceNextOptionalParams, + ClientsListByNamespaceOptionalParams, + ClientsListByNamespaceResponse, + ClientsGetOptionalParams, + ClientsGetResponse, + ClientsCreateOrUpdateOptionalParams, + ClientsCreateOrUpdateResponse, + ClientsDeleteOptionalParams, + ClientsListByNamespaceNextResponse +} from "../models"; + +/// +/** Class containing Clients operations. */ +export class ClientsImpl implements Clients { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class Clients class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * Get all the permission bindings under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + public listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: ClientsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByNamespacePagingAll( + resourceGroupName, + namespaceName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options, + settings + ); + } + }; + } + + private async *listByNamespacePagingPage( + resourceGroupName: string, + namespaceName: string, + options?: ClientsListByNamespaceOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: ClientsListByNamespaceResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByNamespace( + resourceGroupName, + namespaceName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByNamespaceNext( + resourceGroupName, + namespaceName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByNamespacePagingAll( + resourceGroupName: string, + namespaceName: string, + options?: ClientsListByNamespaceOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a client. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName Name of the client. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + clientName: string, + options?: ClientsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, clientName, options }, + getOperationSpec + ); + } + + /** + * Create or update a client with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName The client name. + * @param clientInfo Client information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + clientName: string, + clientInfo: Client, + options?: ClientsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + ClientsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + clientName, + clientInfo, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + ClientsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a client with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName The client name. + * @param clientInfo Client information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + clientName: string, + clientInfo: Client, + options?: ClientsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + clientName, + clientInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete an existing client. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName Name of the client. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + clientName: string, + options?: ClientsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, clientName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete an existing client. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName Name of the client. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + clientName: string, + options?: ClientsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + clientName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Get all the permission bindings under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + private _listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: ClientsListByNamespaceOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + listByNamespaceOperationSpec + ); + } + + /** + * ListByNamespaceNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param nextLink The nextLink from the previous successful call to the ListByNamespace method. + * @param options The options parameters. + */ + private _listByNamespaceNext( + resourceGroupName: string, + namespaceName: string, + nextLink: string, + options?: ClientsListByNamespaceNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, nextLink, options }, + listByNamespaceNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clients/{clientName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.Client + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.clientName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clients/{clientName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.Client + }, + 201: { + bodyMapper: Mappers.Client + }, + 202: { + bodyMapper: Mappers.Client + }, + 204: { + bodyMapper: Mappers.Client + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.clientInfo, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.clientName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clients/{clientName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.clientName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/clients", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ClientsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ClientsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/domainEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operations/domainEventSubscriptions.ts index f70636abe54d..839593cf2fdf 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/domainEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/domainEventSubscriptions.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { EventSubscription, DomainEventSubscriptionsListNextOptionalParams, @@ -127,7 +131,7 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { /** * Get all delivery attributes for an event subscription for domain. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param domainName Name of the domain topic. + * @param domainName Name of the domain. * @param eventSubscriptionName Name of the event subscription. * @param options The options parameters. */ @@ -146,7 +150,7 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { /** * Get properties of an event subscription of a domain. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param domainName Name of the partner topic. + * @param domainName Name of the domain. * @param eventSubscriptionName Name of the event subscription to be found. Event subscription names * must be between 3 and 100 characters in length and use alphanumeric letters only. * @param options The options parameters. @@ -180,8 +184,8 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: DomainEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainEventSubscriptionsCreateOrUpdateResponse > > { @@ -191,7 +195,7 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -224,19 +228,22 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, eventSubscriptionName, eventSubscriptionInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + DomainEventSubscriptionsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -283,14 +290,14 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { domainName: string, eventSubscriptionName: string, options?: DomainEventSubscriptionsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -323,13 +330,13 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainName, eventSubscriptionName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, eventSubscriptionName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -374,8 +381,8 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainEventSubscriptionsUpdateResponse > > { @@ -385,7 +392,7 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -418,19 +425,22 @@ export class DomainEventSubscriptionsImpl implements DomainEventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, eventSubscriptionName, eventSubscriptionUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + DomainEventSubscriptionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/domainTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operations/domainTopicEventSubscriptions.ts index faac7fa34c56..c533b5ce5084 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/domainTopicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/domainTopicEventSubscriptions.ts @@ -13,13 +13,19 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { EventSubscription, DomainTopicEventSubscriptionsListNextOptionalParams, DomainTopicEventSubscriptionsListOptionalParams, DomainTopicEventSubscriptionsListResponse, + DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, + DomainTopicEventSubscriptionsGetDeliveryAttributesResponse, DomainTopicEventSubscriptionsGetOptionalParams, DomainTopicEventSubscriptionsGetResponse, DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams, @@ -30,8 +36,6 @@ import { DomainTopicEventSubscriptionsUpdateResponse, DomainTopicEventSubscriptionsGetFullUrlOptionalParams, DomainTopicEventSubscriptionsGetFullUrlResponse, - DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, - DomainTopicEventSubscriptionsGetDeliveryAttributesResponse, DomainTopicEventSubscriptionsListNextResponse } from "../models"; @@ -142,6 +146,33 @@ export class DomainTopicEventSubscriptionsImpl } } + /** + * Get all delivery attributes for an event subscription for domain topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param domainName Name of the top level domain. + * @param topicName Name of the domain topic. + * @param eventSubscriptionName Name of the event subscription. + * @param options The options parameters. + */ + getDeliveryAttributes( + resourceGroupName: string, + domainName: string, + topicName: string, + eventSubscriptionName: string, + options?: DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + domainName, + topicName, + eventSubscriptionName, + options + }, + getDeliveryAttributesOperationSpec + ); + } + /** * Get properties of a nested event subscription for a domain topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -188,8 +219,8 @@ export class DomainTopicEventSubscriptionsImpl eventSubscriptionInfo: EventSubscription, options?: DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainTopicEventSubscriptionsCreateOrUpdateResponse > > { @@ -199,7 +230,7 @@ export class DomainTopicEventSubscriptionsImpl ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -232,9 +263,9 @@ export class DomainTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, topicName, @@ -242,10 +273,13 @@ export class DomainTopicEventSubscriptionsImpl eventSubscriptionInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + DomainTopicEventSubscriptionsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -297,14 +331,14 @@ export class DomainTopicEventSubscriptionsImpl topicName: string, eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -337,19 +371,19 @@ export class DomainTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, topicName, eventSubscriptionName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -399,8 +433,8 @@ export class DomainTopicEventSubscriptionsImpl eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainTopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainTopicEventSubscriptionsUpdateResponse > > { @@ -410,7 +444,7 @@ export class DomainTopicEventSubscriptionsImpl ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -443,9 +477,9 @@ export class DomainTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, topicName, @@ -453,10 +487,13 @@ export class DomainTopicEventSubscriptionsImpl eventSubscriptionUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + DomainTopicEventSubscriptionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -537,33 +574,6 @@ export class DomainTopicEventSubscriptionsImpl ); } - /** - * Get all delivery attributes for an event subscription for domain topic. - * @param resourceGroupName The name of the resource group within the user's subscription. - * @param domainName Name of the top level domain. - * @param topicName Name of the domain topic. - * @param eventSubscriptionName Name of the event subscription. - * @param options The options parameters. - */ - getDeliveryAttributes( - resourceGroupName: string, - domainName: string, - topicName: string, - eventSubscriptionName: string, - options?: DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { - resourceGroupName, - domainName, - topicName, - eventSubscriptionName, - options - }, - getDeliveryAttributesOperationSpec - ); - } - /** * ListNext * @param resourceGroupName The name of the resource group within the user's subscription. @@ -588,6 +598,28 @@ export class DomainTopicEventSubscriptionsImpl // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); +const getDeliveryAttributesOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.DeliveryAttributeListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.domainName, + Parameters.topicName, + Parameters.eventSubscriptionName + ], + headerParameters: [Parameters.accept], + serializer +}; const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}/eventSubscriptions/{eventSubscriptionName}", @@ -735,28 +767,6 @@ const listOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; -const getDeliveryAttributesOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/domains/{domainName}/topics/{topicName}/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes", - httpMethod: "POST", - responses: { - 200: { - bodyMapper: Mappers.DeliveryAttributeListResult - }, - default: {} - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.domainName, - Parameters.topicName, - Parameters.eventSubscriptionName - ], - headerParameters: [Parameters.accept], - serializer -}; const listNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/domainTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operations/domainTopics.ts index faf10172e192..fca3f0f9c763 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/domainTopics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/domainTopics.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { DomainTopic, DomainTopicsListByDomainNextOptionalParams, @@ -153,8 +157,8 @@ export class DomainTopicsImpl implements DomainTopics { domainTopicName: string, options?: DomainTopicsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainTopicsCreateOrUpdateResponse > > { @@ -164,7 +168,7 @@ export class DomainTopicsImpl implements DomainTopics { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -197,13 +201,16 @@ export class DomainTopicsImpl implements DomainTopics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainName, domainTopicName, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, domainTopicName, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + DomainTopicsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -244,14 +251,14 @@ export class DomainTopicsImpl implements DomainTopics { domainName: string, domainTopicName: string, options?: DomainTopicsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -284,13 +291,13 @@ export class DomainTopicsImpl implements DomainTopics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainName, domainTopicName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, domainTopicName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/domains.ts b/sdk/eventgrid/arm-eventgrid/src/operations/domains.ts index 8daef25fd49f..35eb61a6ef34 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/domains.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/domains.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { Domain, DomainsListBySubscriptionNextOptionalParams, @@ -205,8 +209,8 @@ export class DomainsImpl implements Domains { domainInfo: Domain, options?: DomainsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainsCreateOrUpdateResponse > > { @@ -216,7 +220,7 @@ export class DomainsImpl implements Domains { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -249,13 +253,16 @@ export class DomainsImpl implements Domains { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainName, domainInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, domainInfo, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + DomainsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -294,14 +301,14 @@ export class DomainsImpl implements Domains { resourceGroupName: string, domainName: string, options?: DomainsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -334,13 +341,13 @@ export class DomainsImpl implements Domains { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -378,14 +385,14 @@ export class DomainsImpl implements Domains { domainName: string, domainUpdateParameters: DomainUpdateParameters, options?: DomainsUpdateOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -418,13 +425,13 @@ export class DomainsImpl implements Domains { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, domainName, domainUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, domainName, domainUpdateParameters, options }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/eventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operations/eventSubscriptions.ts index 80829b33361e..61b6b0ddd4ab 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/eventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/eventSubscriptions.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { EventSubscription, EventSubscriptionsListGlobalBySubscriptionNextOptionalParams, @@ -47,6 +51,8 @@ import { EventSubscriptionsListByDomainTopicNextOptionalParams, EventSubscriptionsListByDomainTopicOptionalParams, EventSubscriptionsListByDomainTopicResponse, + EventSubscriptionsGetDeliveryAttributesOptionalParams, + EventSubscriptionsGetDeliveryAttributesResponse, EventSubscriptionsGetOptionalParams, EventSubscriptionsGetResponse, EventSubscriptionsCreateOrUpdateOptionalParams, @@ -57,8 +63,6 @@ import { EventSubscriptionsUpdateResponse, EventSubscriptionsGetFullUrlOptionalParams, EventSubscriptionsGetFullUrlResponse, - EventSubscriptionsGetDeliveryAttributesOptionalParams, - EventSubscriptionsGetDeliveryAttributesResponse, EventSubscriptionsListGlobalBySubscriptionNextResponse, EventSubscriptionsListGlobalBySubscriptionForTopicTypeNextResponse, EventSubscriptionsListGlobalByResourceGroupNextResponse, @@ -903,6 +907,30 @@ export class EventSubscriptionsImpl implements EventSubscriptions { } } + /** + * Get all delivery attributes for an event subscription. + * @param scope The scope of the event subscription. The scope can be a subscription, or a resource + * group, or a top level resource belonging to a resource provider namespace, or an EventGrid topic. + * For example, use '/subscriptions/{subscriptionId}/' for a subscription, + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' + * for a resource, and + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}' + * for an EventGrid topic. + * @param eventSubscriptionName Name of the event subscription. + * @param options The options parameters. + */ + getDeliveryAttributes( + scope: string, + eventSubscriptionName: string, + options?: EventSubscriptionsGetDeliveryAttributesOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { scope, eventSubscriptionName, options }, + getDeliveryAttributesOperationSpec + ); + } + /** * Get properties of an event subscription. * @param scope The scope of the event subscription. The scope can be a subscription, or a resource @@ -951,8 +979,8 @@ export class EventSubscriptionsImpl implements EventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: EventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, EventSubscriptionsCreateOrUpdateResponse > > { @@ -962,7 +990,7 @@ export class EventSubscriptionsImpl implements EventSubscriptions { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -995,13 +1023,16 @@ export class EventSubscriptionsImpl implements EventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { scope, eventSubscriptionName, eventSubscriptionInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { scope, eventSubscriptionName, eventSubscriptionInfo, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + EventSubscriptionsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -1058,14 +1089,14 @@ export class EventSubscriptionsImpl implements EventSubscriptions { scope: string, eventSubscriptionName: string, options?: EventSubscriptionsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -1098,13 +1129,13 @@ export class EventSubscriptionsImpl implements EventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { scope, eventSubscriptionName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { scope, eventSubscriptionName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -1157,8 +1188,8 @@ export class EventSubscriptionsImpl implements EventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: EventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, EventSubscriptionsUpdateResponse > > { @@ -1168,7 +1199,7 @@ export class EventSubscriptionsImpl implements EventSubscriptions { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -1201,18 +1232,21 @@ export class EventSubscriptionsImpl implements EventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { scope, eventSubscriptionName, eventSubscriptionUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + EventSubscriptionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -1451,30 +1485,6 @@ export class EventSubscriptionsImpl implements EventSubscriptions { ); } - /** - * Get all delivery attributes for an event subscription. - * @param scope The scope of the event subscription. The scope can be a subscription, or a resource - * group, or a top level resource belonging to a resource provider namespace, or an EventGrid topic. - * For example, use '/subscriptions/{subscriptionId}/' for a subscription, - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' - * for a resource, and - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}' - * for an EventGrid topic. - * @param eventSubscriptionName Name of the event subscription. - * @param options The options parameters. - */ - getDeliveryAttributes( - scope: string, - eventSubscriptionName: string, - options?: EventSubscriptionsGetDeliveryAttributesOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { scope, eventSubscriptionName, options }, - getDeliveryAttributesOperationSpec - ); - } - /** * ListGlobalBySubscriptionNext * @param nextLink The nextLink from the previous successful call to the ListGlobalBySubscription @@ -1689,6 +1699,25 @@ export class EventSubscriptionsImpl implements EventSubscriptions { // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); +const getDeliveryAttributesOperationSpec: coreClient.OperationSpec = { + path: + "/{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.DeliveryAttributeListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.eventSubscriptionName, + Parameters.scope + ], + headerParameters: [Parameters.accept], + serializer +}; const getOperationSpec: coreClient.OperationSpec = { path: "/{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{eventSubscriptionName}", @@ -1996,25 +2025,6 @@ const listByDomainTopicOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; -const getDeliveryAttributesOperationSpec: coreClient.OperationSpec = { - path: - "/{scope}/providers/Microsoft.EventGrid/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes", - httpMethod: "POST", - responses: { - 200: { - bodyMapper: Mappers.DeliveryAttributeListResult - }, - default: {} - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.eventSubscriptionName, - Parameters.scope - ], - headerParameters: [Parameters.accept], - serializer -}; const listGlobalBySubscriptionNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/index.ts b/sdk/eventgrid/arm-eventgrid/src/operations/index.ts index e5ca2281f9a3..8a8dc2e80bf6 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/index.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/index.ts @@ -6,24 +6,33 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +export * from "./caCertificates"; export * from "./channels"; +export * from "./clientGroups"; +export * from "./clients"; export * from "./domains"; export * from "./domainTopics"; +export * from "./domainTopicEventSubscriptions"; export * from "./topicEventSubscriptions"; export * from "./domainEventSubscriptions"; export * from "./eventSubscriptions"; -export * from "./domainTopicEventSubscriptions"; export * from "./systemTopicEventSubscriptions"; +export * from "./namespaceTopicEventSubscriptions"; export * from "./partnerTopicEventSubscriptions"; +export * from "./namespaces"; +export * from "./namespaceTopics"; export * from "./operations"; -export * from "./topics"; export * from "./partnerConfigurations"; +export * from "./partnerDestinations"; export * from "./partnerNamespaces"; export * from "./partnerRegistrations"; export * from "./partnerTopics"; +export * from "./permissionBindings"; export * from "./privateEndpointConnections"; export * from "./privateLinkResources"; export * from "./systemTopics"; +export * from "./topics"; export * from "./extensionTopics"; +export * from "./topicSpaces"; export * from "./topicTypes"; export * from "./verifiedPartners"; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/namespaceTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operations/namespaceTopicEventSubscriptions.ts new file mode 100644 index 000000000000..5f5c1854858d --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/namespaceTopicEventSubscriptions.ts @@ -0,0 +1,714 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { NamespaceTopicEventSubscriptions } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + Subscription, + NamespaceTopicEventSubscriptionsListByNamespaceTopicNextOptionalParams, + NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams, + NamespaceTopicEventSubscriptionsListByNamespaceTopicResponse, + NamespaceTopicEventSubscriptionsGetOptionalParams, + NamespaceTopicEventSubscriptionsGetResponse, + NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams, + NamespaceTopicEventSubscriptionsCreateOrUpdateResponse, + NamespaceTopicEventSubscriptionsDeleteOptionalParams, + SubscriptionUpdateParameters, + NamespaceTopicEventSubscriptionsUpdateOptionalParams, + NamespaceTopicEventSubscriptionsUpdateResponse, + NamespaceTopicEventSubscriptionsListByNamespaceTopicNextResponse +} from "../models"; + +/// +/** Class containing NamespaceTopicEventSubscriptions operations. */ +export class NamespaceTopicEventSubscriptionsImpl + implements NamespaceTopicEventSubscriptions { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class NamespaceTopicEventSubscriptions class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * List event subscriptions that belong to a specific namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param options The options parameters. + */ + public listByNamespaceTopic( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByNamespaceTopicPagingAll( + resourceGroupName, + namespaceName, + topicName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByNamespaceTopicPagingPage( + resourceGroupName, + namespaceName, + topicName, + options, + settings + ); + } + }; + } + + private async *listByNamespaceTopicPagingPage( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: NamespaceTopicEventSubscriptionsListByNamespaceTopicResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByNamespaceTopic( + resourceGroupName, + namespaceName, + topicName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByNamespaceTopicNext( + resourceGroupName, + namespaceName, + topicName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByNamespaceTopicPagingAll( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByNamespaceTopicPagingPage( + resourceGroupName, + namespaceName, + topicName, + options + )) { + yield* page; + } + } + + /** + * Get properties of an event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + options?: NamespaceTopicEventSubscriptionsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + namespaceName, + topicName, + eventSubscriptionName, + options + }, + getOperationSpec + ); + } + + /** + * Asynchronously creates or updates an event subscription of a namespace topic with the specified + * parameters. Existing event subscriptions will be updated with this API. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionInfo Event subscription properties containing the delivery mode, filter + * information, and others. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionInfo: Subscription, + options?: NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicEventSubscriptionsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + topicName, + eventSubscriptionName, + eventSubscriptionInfo, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + NamespaceTopicEventSubscriptionsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Asynchronously creates or updates an event subscription of a namespace topic with the specified + * parameters. Existing event subscriptions will be updated with this API. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionInfo Event subscription properties containing the delivery mode, filter + * information, and others. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionInfo: Subscription, + options?: NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + topicName, + eventSubscriptionName, + eventSubscriptionInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + options?: NamespaceTopicEventSubscriptionsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + topicName, + eventSubscriptionName, + options + }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + options?: NamespaceTopicEventSubscriptionsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + topicName, + eventSubscriptionName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Update an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionUpdateParameters Updated event subscription information. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionUpdateParameters: SubscriptionUpdateParameters, + options?: NamespaceTopicEventSubscriptionsUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicEventSubscriptionsUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + topicName, + eventSubscriptionName, + eventSubscriptionUpdateParameters, + options + }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + NamespaceTopicEventSubscriptionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Update an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionUpdateParameters Updated event subscription information. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionUpdateParameters: SubscriptionUpdateParameters, + options?: NamespaceTopicEventSubscriptionsUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + namespaceName, + topicName, + eventSubscriptionName, + eventSubscriptionUpdateParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * List event subscriptions that belong to a specific namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param options The options parameters. + */ + private _listByNamespaceTopic( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, topicName, options }, + listByNamespaceTopicOperationSpec + ); + } + + /** + * ListByNamespaceTopicNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param nextLink The nextLink from the previous successful call to the ListByNamespaceTopic method. + * @param options The options parameters. + */ + private _listByNamespaceTopicNext( + resourceGroupName: string, + namespaceName: string, + topicName: string, + nextLink: string, + options?: NamespaceTopicEventSubscriptionsListByNamespaceTopicNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, topicName, nextLink, options }, + listByNamespaceTopicNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}/eventSubscriptions/{eventSubscriptionName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.Subscription + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1, + Parameters.eventSubscriptionName1 + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}/eventSubscriptions/{eventSubscriptionName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.Subscription + }, + 201: { + bodyMapper: Mappers.Subscription + }, + 202: { + bodyMapper: Mappers.Subscription + }, + 204: { + bodyMapper: Mappers.Subscription + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.eventSubscriptionInfo1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1, + Parameters.eventSubscriptionName1 + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}/eventSubscriptions/{eventSubscriptionName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1, + Parameters.eventSubscriptionName1 + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}/eventSubscriptions/{eventSubscriptionName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.Subscription + }, + 201: { + bodyMapper: Mappers.Subscription + }, + 202: { + bodyMapper: Mappers.Subscription + }, + 204: { + bodyMapper: Mappers.Subscription + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.eventSubscriptionUpdateParameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1, + Parameters.eventSubscriptionName1 + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listByNamespaceTopicOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}/eventSubscriptions", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SubscriptionsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceTopicNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.SubscriptionsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.nextLink, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/namespaceTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operations/namespaceTopics.ts new file mode 100644 index 000000000000..650f32d667b0 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/namespaceTopics.ts @@ -0,0 +1,840 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { NamespaceTopics } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + NamespaceTopic, + NamespaceTopicsListByNamespaceNextOptionalParams, + NamespaceTopicsListByNamespaceOptionalParams, + NamespaceTopicsListByNamespaceResponse, + NamespaceTopicsGetOptionalParams, + NamespaceTopicsGetResponse, + NamespaceTopicsCreateOrUpdateOptionalParams, + NamespaceTopicsCreateOrUpdateResponse, + NamespaceTopicsDeleteOptionalParams, + NamespaceTopicUpdateParameters, + NamespaceTopicsUpdateOptionalParams, + NamespaceTopicsUpdateResponse, + NamespaceTopicsListSharedAccessKeysOptionalParams, + NamespaceTopicsListSharedAccessKeysResponse, + TopicRegenerateKeyRequest, + NamespaceTopicsRegenerateKeyOptionalParams, + NamespaceTopicsRegenerateKeyResponse, + NamespaceTopicsListByNamespaceNextResponse +} from "../models"; + +/// +/** Class containing NamespaceTopics operations. */ +export class NamespaceTopicsImpl implements NamespaceTopics { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class NamespaceTopics class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * List all the namespace topics under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + public listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: NamespaceTopicsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByNamespacePagingAll( + resourceGroupName, + namespaceName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options, + settings + ); + } + }; + } + + private async *listByNamespacePagingPage( + resourceGroupName: string, + namespaceName: string, + options?: NamespaceTopicsListByNamespaceOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: NamespaceTopicsListByNamespaceResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByNamespace( + resourceGroupName, + namespaceName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByNamespaceNext( + resourceGroupName, + namespaceName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByNamespacePagingAll( + resourceGroupName: string, + namespaceName: string, + options?: NamespaceTopicsListByNamespaceOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, topicName, options }, + getOperationSpec + ); + } + + /** + * Asynchronously creates a new namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicInfo Namespace topic information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicInfo: NamespaceTopic, + options?: NamespaceTopicsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + topicName, + namespaceTopicInfo, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + NamespaceTopicsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Asynchronously creates a new namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicInfo Namespace topic information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicInfo: NamespaceTopic, + options?: NamespaceTopicsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + topicName, + namespaceTopicInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete existing namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, topicName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete existing namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + topicName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Asynchronously updates a namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicUpdateParameters Namespace topic update information. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicUpdateParameters: NamespaceTopicUpdateParameters, + options?: NamespaceTopicsUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicsUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + topicName, + namespaceTopicUpdateParameters, + options + }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + NamespaceTopicsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Asynchronously updates a namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicUpdateParameters Namespace topic update information. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicUpdateParameters: NamespaceTopicUpdateParameters, + options?: NamespaceTopicsUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + namespaceName, + topicName, + namespaceTopicUpdateParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * List all the namespace topics under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + private _listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: NamespaceTopicsListByNamespaceOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + listByNamespaceOperationSpec + ); + } + + /** + * List the two keys used to publish to a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param options The options parameters. + */ + listSharedAccessKeys( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsListSharedAccessKeysOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, topicName, options }, + listSharedAccessKeysOperationSpec + ); + } + + /** + * Regenerate a shared access key for a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + async beginRegenerateKey( + resourceGroupName: string, + namespaceName: string, + topicName: string, + regenerateKeyRequest: TopicRegenerateKeyRequest, + options?: NamespaceTopicsRegenerateKeyOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicsRegenerateKeyResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + topicName, + regenerateKeyRequest, + options + }, + spec: regenerateKeyOperationSpec + }); + const poller = await createHttpPoller< + NamespaceTopicsRegenerateKeyResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Regenerate a shared access key for a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + async beginRegenerateKeyAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + regenerateKeyRequest: TopicRegenerateKeyRequest, + options?: NamespaceTopicsRegenerateKeyOptionalParams + ): Promise { + const poller = await this.beginRegenerateKey( + resourceGroupName, + namespaceName, + topicName, + regenerateKeyRequest, + options + ); + return poller.pollUntilDone(); + } + + /** + * ListByNamespaceNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param nextLink The nextLink from the previous successful call to the ListByNamespace method. + * @param options The options parameters. + */ + private _listByNamespaceNext( + resourceGroupName: string, + namespaceName: string, + nextLink: string, + options?: NamespaceTopicsListByNamespaceNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, nextLink, options }, + listByNamespaceNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.NamespaceTopic + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.NamespaceTopic + }, + 201: { + bodyMapper: Mappers.NamespaceTopic + }, + 202: { + bodyMapper: Mappers.NamespaceTopic + }, + 204: { + bodyMapper: Mappers.NamespaceTopic + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.namespaceTopicInfo, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.NamespaceTopic + }, + 201: { + bodyMapper: Mappers.NamespaceTopic + }, + 202: { + bodyMapper: Mappers.NamespaceTopic + }, + 204: { + bodyMapper: Mappers.NamespaceTopic + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.namespaceTopicUpdateParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listByNamespaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.NamespaceTopicsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listSharedAccessKeysOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}/listKeys", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.TopicSharedAccessKeys + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept], + serializer +}; +const regenerateKeyOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topics/{topicName}/regenerateKey", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.TopicSharedAccessKeys + }, + 201: { + bodyMapper: Mappers.TopicSharedAccessKeys + }, + 202: { + bodyMapper: Mappers.TopicSharedAccessKeys + }, + 204: { + bodyMapper: Mappers.TopicSharedAccessKeys + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.regenerateKeyRequest2, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicName1 + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listByNamespaceNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.NamespaceTopicsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/namespaces.ts b/sdk/eventgrid/arm-eventgrid/src/operations/namespaces.ts new file mode 100644 index 000000000000..9cf8ea3a1617 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/namespaces.ts @@ -0,0 +1,898 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { Namespaces } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + Namespace, + NamespacesListBySubscriptionNextOptionalParams, + NamespacesListBySubscriptionOptionalParams, + NamespacesListBySubscriptionResponse, + NamespacesListByResourceGroupNextOptionalParams, + NamespacesListByResourceGroupOptionalParams, + NamespacesListByResourceGroupResponse, + NamespacesGetOptionalParams, + NamespacesGetResponse, + NamespacesCreateOrUpdateOptionalParams, + NamespacesCreateOrUpdateResponse, + NamespacesDeleteOptionalParams, + NamespaceUpdateParameters, + NamespacesUpdateOptionalParams, + NamespacesUpdateResponse, + NamespacesListSharedAccessKeysOptionalParams, + NamespacesListSharedAccessKeysResponse, + NamespaceRegenerateKeyRequest, + NamespacesRegenerateKeyOptionalParams, + NamespacesRegenerateKeyResponse, + NamespacesListBySubscriptionNextResponse, + NamespacesListByResourceGroupNextResponse +} from "../models"; + +/// +/** Class containing Namespaces operations. */ +export class NamespacesImpl implements Namespaces { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class Namespaces class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * List all the namespaces under an Azure subscription. + * @param options The options parameters. + */ + public listBySubscription( + options?: NamespacesListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listBySubscriptionPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listBySubscriptionPagingPage(options, settings); + } + }; + } + + private async *listBySubscriptionPagingPage( + options?: NamespacesListBySubscriptionOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: NamespacesListBySubscriptionResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listBySubscription(options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listBySubscriptionNext(continuationToken, options); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listBySubscriptionPagingAll( + options?: NamespacesListBySubscriptionOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listBySubscriptionPagingPage(options)) { + yield* page; + } + } + + /** + * List all the namespaces under a resource group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param options The options parameters. + */ + public listByResourceGroup( + resourceGroupName: string, + options?: NamespacesListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings + ); + } + }; + } + + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: NamespacesListByResourceGroupOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: NamespacesListByResourceGroupResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByResourceGroup(resourceGroupName, options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: NamespacesListByResourceGroupOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + getOperationSpec + ); + } + + /** + * Asynchronously creates or updates a new namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceInfo Namespace information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + namespaceInfo: Namespace, + options?: NamespacesCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespacesCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, namespaceInfo, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + NamespacesCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Asynchronously creates or updates a new namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceInfo Namespace information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + namespaceInfo: Namespace, + options?: NamespacesCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + namespaceInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete existing namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete existing namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Asynchronously updates a namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceUpdateParameters Namespace update information. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + namespaceName: string, + namespaceUpdateParameters: NamespaceUpdateParameters, + options?: NamespacesUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespacesUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + namespaceUpdateParameters, + options + }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + NamespacesUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Asynchronously updates a namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceUpdateParameters Namespace update information. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + namespaceUpdateParameters: NamespaceUpdateParameters, + options?: NamespacesUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + namespaceName, + namespaceUpdateParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * List all the namespaces under an Azure subscription. + * @param options The options parameters. + */ + private _listBySubscription( + options?: NamespacesListBySubscriptionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec + ); + } + + /** + * List all the namespaces under a resource group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: NamespacesListByResourceGroupOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec + ); + } + + /** + * List the two keys used to publish to a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listSharedAccessKeys( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesListSharedAccessKeysOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + listSharedAccessKeysOperationSpec + ); + } + + /** + * Regenerate a shared access key for a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the Namespace. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + async beginRegenerateKey( + resourceGroupName: string, + namespaceName: string, + regenerateKeyRequest: NamespaceRegenerateKeyRequest, + options?: NamespacesRegenerateKeyOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespacesRegenerateKeyResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, regenerateKeyRequest, options }, + spec: regenerateKeyOperationSpec + }); + const poller = await createHttpPoller< + NamespacesRegenerateKeyResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Regenerate a shared access key for a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the Namespace. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + async beginRegenerateKeyAndWait( + resourceGroupName: string, + namespaceName: string, + regenerateKeyRequest: NamespaceRegenerateKeyRequest, + options?: NamespacesRegenerateKeyOptionalParams + ): Promise { + const poller = await this.beginRegenerateKey( + resourceGroupName, + namespaceName, + regenerateKeyRequest, + options + ); + return poller.pollUntilDone(); + } + + /** + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. + * @param options The options parameters. + */ + private _listBySubscriptionNext( + nextLink: string, + options?: NamespacesListBySubscriptionNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { nextLink, options }, + listBySubscriptionNextOperationSpec + ); + } + + /** + * ListByResourceGroupNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param options The options parameters. + */ + private _listByResourceGroupNext( + resourceGroupName: string, + nextLink: string, + options?: NamespacesListByResourceGroupNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.Namespace + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.Namespace + }, + 201: { + bodyMapper: Mappers.Namespace + }, + 202: { + bodyMapper: Mappers.Namespace + }, + 204: { + bodyMapper: Mappers.Namespace + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.namespaceInfo, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.Namespace + }, + 201: { + bodyMapper: Mappers.Namespace + }, + 202: { + bodyMapper: Mappers.Namespace + }, + 204: { + bodyMapper: Mappers.Namespace + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.namespaceUpdateParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/namespaces", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.NamespacesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.NamespacesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listSharedAccessKeysOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/listKeys", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.NamespaceSharedAccessKeys + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const regenerateKeyOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/regenerateKey", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.NamespaceSharedAccessKeys + }, + 201: { + bodyMapper: Mappers.NamespaceSharedAccessKeys + }, + 202: { + bodyMapper: Mappers.NamespaceSharedAccessKeys + }, + 204: { + bodyMapper: Mappers.NamespaceSharedAccessKeys + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.regenerateKeyRequest1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.NamespacesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.NamespacesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/partnerConfigurations.ts b/sdk/eventgrid/arm-eventgrid/src/operations/partnerConfigurations.ts index 4b88ac1b06be..e59bba5a6b17 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/partnerConfigurations.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/partnerConfigurations.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { PartnerConfiguration, PartnerConfigurationsListByResourceGroupOptionalParams, @@ -183,8 +187,8 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { partnerConfigurationInfo: PartnerConfiguration, options?: PartnerConfigurationsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerConfigurationsCreateOrUpdateResponse > > { @@ -194,7 +198,7 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -227,13 +231,16 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, partnerConfigurationInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerConfigurationInfo, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + PartnerConfigurationsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -267,14 +274,14 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { async beginDelete( resourceGroupName: string, options?: PartnerConfigurationsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -307,13 +314,13 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -344,8 +351,8 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { partnerConfigurationUpdateParameters: PartnerConfigurationUpdateParameters, options?: PartnerConfigurationsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerConfigurationsUpdateResponse > > { @@ -355,7 +362,7 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -388,13 +395,20 @@ export class PartnerConfigurationsImpl implements PartnerConfigurations { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, partnerConfigurationUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + partnerConfigurationUpdateParameters, + options + }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + PartnerConfigurationsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/partnerDestinations.ts b/sdk/eventgrid/arm-eventgrid/src/operations/partnerDestinations.ts new file mode 100644 index 000000000000..cc4db09a4792 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/partnerDestinations.ts @@ -0,0 +1,771 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { PartnerDestinations } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + PartnerDestination, + PartnerDestinationsListBySubscriptionNextOptionalParams, + PartnerDestinationsListBySubscriptionOptionalParams, + PartnerDestinationsListBySubscriptionResponse, + PartnerDestinationsListByResourceGroupNextOptionalParams, + PartnerDestinationsListByResourceGroupOptionalParams, + PartnerDestinationsListByResourceGroupResponse, + PartnerDestinationsGetOptionalParams, + PartnerDestinationsGetResponse, + PartnerDestinationsCreateOrUpdateOptionalParams, + PartnerDestinationsCreateOrUpdateResponse, + PartnerDestinationsDeleteOptionalParams, + PartnerDestinationUpdateParameters, + PartnerDestinationsUpdateOptionalParams, + PartnerDestinationsUpdateResponse, + PartnerDestinationsActivateOptionalParams, + PartnerDestinationsActivateResponse, + PartnerDestinationsListBySubscriptionNextResponse, + PartnerDestinationsListByResourceGroupNextResponse +} from "../models"; + +/// +/** Class containing PartnerDestinations operations. */ +export class PartnerDestinationsImpl implements PartnerDestinations { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class PartnerDestinations class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * List all the partner destinations under an Azure subscription. + * @param options The options parameters. + */ + public listBySubscription( + options?: PartnerDestinationsListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listBySubscriptionPagingAll(options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listBySubscriptionPagingPage(options, settings); + } + }; + } + + private async *listBySubscriptionPagingPage( + options?: PartnerDestinationsListBySubscriptionOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: PartnerDestinationsListBySubscriptionResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listBySubscription(options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listBySubscriptionNext(continuationToken, options); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listBySubscriptionPagingAll( + options?: PartnerDestinationsListBySubscriptionOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listBySubscriptionPagingPage(options)) { + yield* page; + } + } + + /** + * List all the partner destinations under a resource group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param options The options parameters. + */ + public listByResourceGroup( + resourceGroupName: string, + options?: PartnerDestinationsListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByResourceGroupPagingAll(resourceGroupName, options); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByResourceGroupPagingPage( + resourceGroupName, + options, + settings + ); + } + }; + } + + private async *listByResourceGroupPagingPage( + resourceGroupName: string, + options?: PartnerDestinationsListByResourceGroupOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: PartnerDestinationsListByResourceGroupResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByResourceGroup(resourceGroupName, options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByResourceGroupNext( + resourceGroupName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByResourceGroupPagingAll( + resourceGroupName: string, + options?: PartnerDestinationsListByResourceGroupOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, partnerDestinationName, options }, + getOperationSpec + ); + } + + /** + * Asynchronously creates a new partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestination Partner destination create information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestination: PartnerDestination, + options?: PartnerDestinationsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + PartnerDestinationsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + partnerDestinationName, + partnerDestination, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + PartnerDestinationsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Asynchronously creates a new partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestination Partner destination create information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestination: PartnerDestination, + options?: PartnerDestinationsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + partnerDestinationName, + partnerDestination, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete existing partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerDestinationName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete existing partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + partnerDestinationName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Asynchronously updates a partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestinationUpdateParameters Partner destination update information. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestinationUpdateParameters: PartnerDestinationUpdateParameters, + options?: PartnerDestinationsUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + PartnerDestinationsUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + partnerDestinationName, + partnerDestinationUpdateParameters, + options + }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + PartnerDestinationsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Asynchronously updates a partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestinationUpdateParameters Partner destination update information. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestinationUpdateParameters: PartnerDestinationUpdateParameters, + options?: PartnerDestinationsUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + partnerDestinationName, + partnerDestinationUpdateParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * List all the partner destinations under an Azure subscription. + * @param options The options parameters. + */ + private _listBySubscription( + options?: PartnerDestinationsListBySubscriptionOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { options }, + listBySubscriptionOperationSpec + ); + } + + /** + * List all the partner destinations under a resource group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: PartnerDestinationsListByResourceGroupOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec + ); + } + + /** + * Activate a newly created partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + activate( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsActivateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, partnerDestinationName, options }, + activateOperationSpec + ); + } + + /** + * ListBySubscriptionNext + * @param nextLink The nextLink from the previous successful call to the ListBySubscription method. + * @param options The options parameters. + */ + private _listBySubscriptionNext( + nextLink: string, + options?: PartnerDestinationsListBySubscriptionNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { nextLink, options }, + listBySubscriptionNextOperationSpec + ); + } + + /** + * ListByResourceGroupNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method. + * @param options The options parameters. + */ + private _listByResourceGroupNext( + resourceGroupName: string, + nextLink: string, + options?: PartnerDestinationsListByResourceGroupNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerDestinations/{partnerDestinationName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestination + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.partnerDestinationName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerDestinations/{partnerDestinationName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestination + }, + 201: { + bodyMapper: Mappers.PartnerDestination + }, + 202: { + bodyMapper: Mappers.PartnerDestination + }, + 204: { + bodyMapper: Mappers.PartnerDestination + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.partnerDestination, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.partnerDestinationName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerDestinations/{partnerDestinationName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.partnerDestinationName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerDestinations/{partnerDestinationName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestination + }, + 201: { + bodyMapper: Mappers.PartnerDestination + }, + 202: { + bodyMapper: Mappers.PartnerDestination + }, + 204: { + bodyMapper: Mappers.PartnerDestination + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.partnerDestinationUpdateParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.partnerDestinationName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listBySubscriptionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.EventGrid/partnerDestinations", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestinationsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerDestinations", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestinationsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + headerParameters: [Parameters.accept], + serializer +}; +const activateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/partnerDestinations/{partnerDestinationName}/activate", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestination + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.partnerDestinationName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listBySubscriptionNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestinationsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PartnerDestinationsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/partnerNamespaces.ts b/sdk/eventgrid/arm-eventgrid/src/operations/partnerNamespaces.ts index 6ef37ceadb2b..7cfdfa467152 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/partnerNamespaces.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/partnerNamespaces.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { PartnerNamespace, PartnerNamespacesListBySubscriptionNextOptionalParams, @@ -205,8 +209,8 @@ export class PartnerNamespacesImpl implements PartnerNamespaces { partnerNamespaceInfo: PartnerNamespace, options?: PartnerNamespacesCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerNamespacesCreateOrUpdateResponse > > { @@ -216,7 +220,7 @@ export class PartnerNamespacesImpl implements PartnerNamespaces { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -249,18 +253,21 @@ export class PartnerNamespacesImpl implements PartnerNamespaces { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerNamespaceName, partnerNamespaceInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + PartnerNamespacesCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -299,14 +306,14 @@ export class PartnerNamespacesImpl implements PartnerNamespaces { resourceGroupName: string, partnerNamespaceName: string, options?: PartnerNamespacesDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -339,13 +346,13 @@ export class PartnerNamespacesImpl implements PartnerNamespaces { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, partnerNamespaceName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerNamespaceName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -383,14 +390,14 @@ export class PartnerNamespacesImpl implements PartnerNamespaces { partnerNamespaceName: string, partnerNamespaceUpdateParameters: PartnerNamespaceUpdateParameters, options?: PartnerNamespacesUpdateOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -423,18 +430,18 @@ export class PartnerNamespacesImpl implements PartnerNamespaces { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerNamespaceName, partnerNamespaceUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -575,7 +582,9 @@ const getOperationSpec: coreClient.OperationSpec = { 200: { bodyMapper: Mappers.PartnerNamespace }, - default: {} + default: { + bodyMapper: Mappers.ErrorResponse + } }, queryParameters: [Parameters.apiVersion], urlParameters: [ @@ -713,7 +722,7 @@ const regenerateKeyOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.regenerateKeyRequest2, + requestBody: Parameters.regenerateKeyRequest3, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/partnerRegistrations.ts b/sdk/eventgrid/arm-eventgrid/src/operations/partnerRegistrations.ts index b91a021c24c8..5b843e4358e9 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/partnerRegistrations.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/partnerRegistrations.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { PartnerRegistration, PartnerRegistrationsListBySubscriptionNextOptionalParams, @@ -200,8 +204,8 @@ export class PartnerRegistrationsImpl implements PartnerRegistrations { partnerRegistrationInfo: PartnerRegistration, options?: PartnerRegistrationsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerRegistrationsCreateOrUpdateResponse > > { @@ -211,7 +215,7 @@ export class PartnerRegistrationsImpl implements PartnerRegistrations { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -244,18 +248,21 @@ export class PartnerRegistrationsImpl implements PartnerRegistrations { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerRegistrationName, partnerRegistrationInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + PartnerRegistrationsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -294,14 +301,14 @@ export class PartnerRegistrationsImpl implements PartnerRegistrations { resourceGroupName: string, partnerRegistrationName: string, options?: PartnerRegistrationsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -334,13 +341,13 @@ export class PartnerRegistrationsImpl implements PartnerRegistrations { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, partnerRegistrationName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerRegistrationName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -378,14 +385,14 @@ export class PartnerRegistrationsImpl implements PartnerRegistrations { partnerRegistrationName: string, partnerRegistrationUpdateParameters: PartnerRegistrationUpdateParameters, options?: PartnerRegistrationsUpdateOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -418,18 +425,18 @@ export class PartnerRegistrationsImpl implements PartnerRegistrations { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerRegistrationName, partnerRegistrationUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopicEventSubscriptions.ts index 5cfe2903df4e..275bf936ec5c 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopicEventSubscriptions.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { EventSubscription, PartnerTopicEventSubscriptionsListByPartnerTopicNextOptionalParams, @@ -171,8 +175,8 @@ export class PartnerTopicEventSubscriptionsImpl eventSubscriptionInfo: EventSubscription, options?: PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerTopicEventSubscriptionsCreateOrUpdateResponse > > { @@ -182,7 +186,7 @@ export class PartnerTopicEventSubscriptionsImpl ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -215,19 +219,22 @@ export class PartnerTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerTopicName, eventSubscriptionName, eventSubscriptionInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + PartnerTopicEventSubscriptionsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -275,14 +282,14 @@ export class PartnerTopicEventSubscriptionsImpl partnerTopicName: string, eventSubscriptionName: string, options?: PartnerTopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -315,13 +322,18 @@ export class PartnerTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, partnerTopicName, eventSubscriptionName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + partnerTopicName, + eventSubscriptionName, + options + }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -367,8 +379,8 @@ export class PartnerTopicEventSubscriptionsImpl eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: PartnerTopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerTopicEventSubscriptionsUpdateResponse > > { @@ -378,7 +390,7 @@ export class PartnerTopicEventSubscriptionsImpl ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -411,19 +423,22 @@ export class PartnerTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerTopicName, eventSubscriptionName, eventSubscriptionUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + PartnerTopicEventSubscriptionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopics.ts index ae7794c9688b..0b1d53792bc5 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/partnerTopics.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { PartnerTopic, PartnerTopicsListBySubscriptionNextOptionalParams, @@ -221,14 +225,14 @@ export class PartnerTopicsImpl implements PartnerTopics { resourceGroupName: string, partnerTopicName: string, options?: PartnerTopicsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -261,13 +265,13 @@ export class PartnerTopicsImpl implements PartnerTopics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, partnerTopicName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, partnerTopicName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/permissionBindings.ts b/sdk/eventgrid/arm-eventgrid/src/operations/permissionBindings.ts new file mode 100644 index 000000000000..924dfa9e6e5b --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/permissionBindings.ts @@ -0,0 +1,513 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { PermissionBindings } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + PermissionBinding, + PermissionBindingsListByNamespaceNextOptionalParams, + PermissionBindingsListByNamespaceOptionalParams, + PermissionBindingsListByNamespaceResponse, + PermissionBindingsGetOptionalParams, + PermissionBindingsGetResponse, + PermissionBindingsCreateOrUpdateOptionalParams, + PermissionBindingsCreateOrUpdateResponse, + PermissionBindingsDeleteOptionalParams, + PermissionBindingsListByNamespaceNextResponse +} from "../models"; + +/// +/** Class containing PermissionBindings operations. */ +export class PermissionBindingsImpl implements PermissionBindings { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class PermissionBindings class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * Get all the permission bindings under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + public listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: PermissionBindingsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByNamespacePagingAll( + resourceGroupName, + namespaceName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options, + settings + ); + } + }; + } + + private async *listByNamespacePagingPage( + resourceGroupName: string, + namespaceName: string, + options?: PermissionBindingsListByNamespaceOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: PermissionBindingsListByNamespaceResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByNamespace( + resourceGroupName, + namespaceName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByNamespaceNext( + resourceGroupName, + namespaceName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByNamespacePagingAll( + resourceGroupName: string, + namespaceName: string, + options?: PermissionBindingsListByNamespaceOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a permission binding. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName Name of the permission binding. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + options?: PermissionBindingsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, permissionBindingName, options }, + getOperationSpec + ); + } + + /** + * Create or update a permission binding with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName The permission binding name. + * @param permissionBindingInfo Permission binding information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + permissionBindingInfo: PermissionBinding, + options?: PermissionBindingsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + PermissionBindingsCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + permissionBindingName, + permissionBindingInfo, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + PermissionBindingsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a permission binding with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName The permission binding name. + * @param permissionBindingInfo Permission binding information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + permissionBindingInfo: PermissionBinding, + options?: PermissionBindingsCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + permissionBindingName, + permissionBindingInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete an existing permission binding. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName Name of the permission binding. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + options?: PermissionBindingsDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + permissionBindingName, + options + }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete an existing permission binding. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName Name of the permission binding. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + options?: PermissionBindingsDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + permissionBindingName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Get all the permission bindings under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + private _listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: PermissionBindingsListByNamespaceOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + listByNamespaceOperationSpec + ); + } + + /** + * ListByNamespaceNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param nextLink The nextLink from the previous successful call to the ListByNamespace method. + * @param options The options parameters. + */ + private _listByNamespaceNext( + resourceGroupName: string, + namespaceName: string, + nextLink: string, + options?: PermissionBindingsListByNamespaceNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, nextLink, options }, + listByNamespaceNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/permissionBindings/{permissionBindingName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PermissionBinding + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.permissionBindingName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/permissionBindings/{permissionBindingName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.PermissionBinding + }, + 201: { + bodyMapper: Mappers.PermissionBinding + }, + 202: { + bodyMapper: Mappers.PermissionBinding + }, + 204: { + bodyMapper: Mappers.PermissionBinding + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.permissionBindingInfo, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.permissionBindingName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/permissionBindings/{permissionBindingName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.permissionBindingName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/permissionBindings", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PermissionBindingsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.PermissionBindingsListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/privateEndpointConnections.ts b/sdk/eventgrid/arm-eventgrid/src/operations/privateEndpointConnections.ts index 6907a13c4454..01b2183e6dc9 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/privateEndpointConnections.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/privateEndpointConnections.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { PrivateEndpointConnection, PrivateEndpointConnectionsParentType, @@ -26,6 +30,7 @@ import { PrivateEndpointConnectionsUpdateOptionalParams, PrivateEndpointConnectionsUpdateResponse, PrivateEndpointConnectionsDeleteOptionalParams, + PrivateEndpointConnectionsDeleteResponse, PrivateEndpointConnectionsListByResourceNextResponse } from "../models"; @@ -44,12 +49,12 @@ export class PrivateEndpointConnectionsImpl } /** - * Get all private endpoint connections under a topic, domain, or partner namespace. + * Get all private endpoint connections under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param options The options parameters. */ public listByResource( @@ -139,12 +144,12 @@ export class PrivateEndpointConnectionsImpl } /** - * Get a specific private endpoint connection under a topic, domain, or partner namespace. + * Get a specific private endpoint connection under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param options The options parameters. */ @@ -171,9 +176,9 @@ export class PrivateEndpointConnectionsImpl * Update a specific private endpoint connection under a topic, domain or partner namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param privateEndpointConnection The private endpoint connection object to update. * @param options The options parameters. @@ -186,8 +191,8 @@ export class PrivateEndpointConnectionsImpl privateEndpointConnection: PrivateEndpointConnection, options?: PrivateEndpointConnectionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PrivateEndpointConnectionsUpdateResponse > > { @@ -197,7 +202,7 @@ export class PrivateEndpointConnectionsImpl ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -230,9 +235,9 @@ export class PrivateEndpointConnectionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, parentType, parentName, @@ -240,10 +245,13 @@ export class PrivateEndpointConnectionsImpl privateEndpointConnection, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + PrivateEndpointConnectionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -254,9 +262,9 @@ export class PrivateEndpointConnectionsImpl * Update a specific private endpoint connection under a topic, domain or partner namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param privateEndpointConnection The private endpoint connection object to update. * @param options The options parameters. @@ -281,12 +289,13 @@ export class PrivateEndpointConnectionsImpl } /** - * Delete a specific private endpoint connection under a topic, domain, or partner namespace. + * Delete a specific private endpoint connection under a topic, domain, or partner namespace or + * namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param options The options parameters. */ @@ -296,14 +305,19 @@ export class PrivateEndpointConnectionsImpl parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams - ): Promise, void>> { + ): Promise< + SimplePollerLike< + OperationState, + PrivateEndpointConnectionsDeleteResponse + > + > { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec - ): Promise => { + ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -336,19 +350,22 @@ export class PrivateEndpointConnectionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, parentType, parentName, privateEndpointConnectionName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller< + PrivateEndpointConnectionsDeleteResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -356,12 +373,13 @@ export class PrivateEndpointConnectionsImpl } /** - * Delete a specific private endpoint connection under a topic, domain, or partner namespace. + * Delete a specific private endpoint connection under a topic, domain, or partner namespace or + * namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param options The options parameters. */ @@ -371,7 +389,7 @@ export class PrivateEndpointConnectionsImpl parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams - ): Promise { + ): Promise { const poller = await this.beginDelete( resourceGroupName, parentType, @@ -383,12 +401,12 @@ export class PrivateEndpointConnectionsImpl } /** - * Get all private endpoint connections under a topic, domain, or partner namespace. + * Get all private endpoint connections under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param options The options parameters. */ private _listByResource( @@ -407,9 +425,9 @@ export class PrivateEndpointConnectionsImpl * ListByResourceNext * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param nextLink The nextLink from the previous successful call to the ListByResource method. * @param options The options parameters. */ @@ -488,7 +506,21 @@ const deleteOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/{parentType}/{parentName}/privateEndpointConnections/{privateEndpointConnectionName}", httpMethod: "DELETE", - responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + responses: { + 200: { + headersMapper: Mappers.PrivateEndpointConnectionsDeleteHeaders + }, + 201: { + headersMapper: Mappers.PrivateEndpointConnectionsDeleteHeaders + }, + 202: { + headersMapper: Mappers.PrivateEndpointConnectionsDeleteHeaders + }, + 204: { + headersMapper: Mappers.PrivateEndpointConnectionsDeleteHeaders + }, + default: {} + }, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/privateLinkResources.ts b/sdk/eventgrid/arm-eventgrid/src/operations/privateLinkResources.ts index eb272c4902a9..3e58f21094f4 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/privateLinkResources.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/privateLinkResources.ts @@ -37,12 +37,12 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { } /** - * List all the private link resources under a topic, domain, or partner namespace. + * List all the private link resources under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace or namespace name). * @param options The options parameters. */ public listByResource( @@ -135,10 +135,11 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { * Get properties of a private link resource. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). - * @param privateLinkResourceName The name of private link resource. + * partner namespace name or namespace name). + * @param privateLinkResourceName The name of private link resource will be either topic, domain, + * partnerNamespace or namespace. * @param options The options parameters. */ get( @@ -161,12 +162,12 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { } /** - * List all the private link resources under a topic, domain, or partner namespace. + * List all the private link resources under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace or namespace name). * @param options The options parameters. */ private _listByResource( @@ -185,9 +186,9 @@ export class PrivateLinkResourcesImpl implements PrivateLinkResources { * ListByResourceNext * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace or namespace name). * @param nextLink The nextLink from the previous successful call to the ListByResource method. * @param options The options parameters. */ diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/systemTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operations/systemTopicEventSubscriptions.ts index 5292bacb9813..d02d6687fb5a 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/systemTopicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/systemTopicEventSubscriptions.ts @@ -13,13 +13,19 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { EventSubscription, SystemTopicEventSubscriptionsListBySystemTopicNextOptionalParams, SystemTopicEventSubscriptionsListBySystemTopicOptionalParams, SystemTopicEventSubscriptionsListBySystemTopicResponse, + SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, + SystemTopicEventSubscriptionsGetDeliveryAttributesResponse, SystemTopicEventSubscriptionsGetOptionalParams, SystemTopicEventSubscriptionsGetResponse, SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams, @@ -30,8 +36,6 @@ import { SystemTopicEventSubscriptionsUpdateResponse, SystemTopicEventSubscriptionsGetFullUrlOptionalParams, SystemTopicEventSubscriptionsGetFullUrlResponse, - SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, - SystemTopicEventSubscriptionsGetDeliveryAttributesResponse, SystemTopicEventSubscriptionsListBySystemTopicNextResponse } from "../models"; @@ -133,6 +137,26 @@ export class SystemTopicEventSubscriptionsImpl } } + /** + * Get all delivery attributes for an event subscription. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param systemTopicName Name of the system topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + getDeliveryAttributes( + resourceGroupName: string, + systemTopicName: string, + eventSubscriptionName: string, + options?: SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, systemTopicName, eventSubscriptionName, options }, + getDeliveryAttributesOperationSpec + ); + } + /** * Get an event subscription. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -171,8 +195,8 @@ export class SystemTopicEventSubscriptionsImpl eventSubscriptionInfo: EventSubscription, options?: SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicEventSubscriptionsCreateOrUpdateResponse > > { @@ -182,7 +206,7 @@ export class SystemTopicEventSubscriptionsImpl ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -215,19 +239,22 @@ export class SystemTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, systemTopicName, eventSubscriptionName, eventSubscriptionInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + SystemTopicEventSubscriptionsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -275,14 +302,14 @@ export class SystemTopicEventSubscriptionsImpl systemTopicName: string, eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -315,13 +342,18 @@ export class SystemTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, systemTopicName, eventSubscriptionName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + systemTopicName, + eventSubscriptionName, + options + }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -367,8 +399,8 @@ export class SystemTopicEventSubscriptionsImpl eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: SystemTopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicEventSubscriptionsUpdateResponse > > { @@ -378,7 +410,7 @@ export class SystemTopicEventSubscriptionsImpl ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -411,19 +443,22 @@ export class SystemTopicEventSubscriptionsImpl }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, systemTopicName, eventSubscriptionName, eventSubscriptionUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + SystemTopicEventSubscriptionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -493,26 +528,6 @@ export class SystemTopicEventSubscriptionsImpl ); } - /** - * Get all delivery attributes for an event subscription. - * @param resourceGroupName The name of the resource group within the user's subscription. - * @param systemTopicName Name of the system topic. - * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names - * must be between 3 and 100 characters in length and use alphanumeric letters only. - * @param options The options parameters. - */ - getDeliveryAttributes( - resourceGroupName: string, - systemTopicName: string, - eventSubscriptionName: string, - options?: SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, systemTopicName, eventSubscriptionName, options }, - getDeliveryAttributesOperationSpec - ); - } - /** * ListBySystemTopicNext * @param resourceGroupName The name of the resource group within the user's subscription. @@ -535,6 +550,27 @@ export class SystemTopicEventSubscriptionsImpl // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); +const getDeliveryAttributesOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.DeliveryAttributeListResult + }, + default: {} + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.eventSubscriptionName, + Parameters.systemTopicName + ], + headerParameters: [Parameters.accept], + serializer +}; const getOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}", @@ -676,27 +712,6 @@ const listBySystemTopicOperationSpec: coreClient.OperationSpec = { headerParameters: [Parameters.accept], serializer }; -const getDeliveryAttributesOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/systemTopics/{systemTopicName}/eventSubscriptions/{eventSubscriptionName}/getDeliveryAttributes", - httpMethod: "POST", - responses: { - 200: { - bodyMapper: Mappers.DeliveryAttributeListResult - }, - default: {} - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.eventSubscriptionName, - Parameters.systemTopicName - ], - headerParameters: [Parameters.accept], - serializer -}; const listBySystemTopicNextOperationSpec: coreClient.OperationSpec = { path: "{nextLink}", httpMethod: "GET", diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/systemTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operations/systemTopics.ts index d0039d035b5b..5c9e96ea31ea 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/systemTopics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/systemTopics.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { SystemTopic, SystemTopicsListBySubscriptionNextOptionalParams, @@ -201,8 +205,8 @@ export class SystemTopicsImpl implements SystemTopics { systemTopicInfo: SystemTopic, options?: SystemTopicsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicsCreateOrUpdateResponse > > { @@ -212,7 +216,7 @@ export class SystemTopicsImpl implements SystemTopics { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -245,13 +249,16 @@ export class SystemTopicsImpl implements SystemTopics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, systemTopicName, systemTopicInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, systemTopicName, systemTopicInfo, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + SystemTopicsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -290,14 +297,14 @@ export class SystemTopicsImpl implements SystemTopics { resourceGroupName: string, systemTopicName: string, options?: SystemTopicsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -330,13 +337,13 @@ export class SystemTopicsImpl implements SystemTopics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, systemTopicName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, systemTopicName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -375,8 +382,8 @@ export class SystemTopicsImpl implements SystemTopics { systemTopicUpdateParameters: SystemTopicUpdateParameters, options?: SystemTopicsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicsUpdateResponse > > { @@ -386,7 +393,7 @@ export class SystemTopicsImpl implements SystemTopics { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -419,18 +426,21 @@ export class SystemTopicsImpl implements SystemTopics { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, systemTopicName, systemTopicUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + SystemTopicsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/topicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operations/topicEventSubscriptions.ts index ef97a187a48c..05d206c98e7c 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/topicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/topicEventSubscriptions.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { EventSubscription, TopicEventSubscriptionsListNextOptionalParams, @@ -127,7 +131,7 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { /** * Get all delivery attributes for an event subscription for topic. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param topicName Name of the domain topic. + * @param topicName Name of the topic. * @param eventSubscriptionName Name of the event subscription. * @param options The options parameters. */ @@ -146,7 +150,7 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { /** * Get properties of an event subscription of a topic. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param topicName Name of the partner topic. + * @param topicName Name of the topic. * @param eventSubscriptionName Name of the event subscription to be found. Event subscription names * must be between 3 and 100 characters in length and use alphanumeric letters only. * @param options The options parameters. @@ -180,8 +184,8 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: TopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicEventSubscriptionsCreateOrUpdateResponse > > { @@ -191,7 +195,7 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -224,19 +228,22 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, topicName, eventSubscriptionName, eventSubscriptionInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + TopicEventSubscriptionsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -283,14 +290,14 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { topicName: string, eventSubscriptionName: string, options?: TopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -323,13 +330,13 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, topicName, eventSubscriptionName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, topicName, eventSubscriptionName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -374,8 +381,8 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: TopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicEventSubscriptionsUpdateResponse > > { @@ -385,7 +392,7 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -418,19 +425,22 @@ export class TopicEventSubscriptionsImpl implements TopicEventSubscriptions { }; }; - const lro = new LroImpl( - sendOperation, - { + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, topicName, eventSubscriptionName, eventSubscriptionUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + TopicEventSubscriptionsUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/topicSpaces.ts b/sdk/eventgrid/arm-eventgrid/src/operations/topicSpaces.ts new file mode 100644 index 000000000000..3be49c360b98 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operations/topicSpaces.ts @@ -0,0 +1,508 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging"; +import { setContinuationToken } from "../pagingHelper"; +import { TopicSpaces } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { EventGridManagementClient } from "../eventGridManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + TopicSpace, + TopicSpacesListByNamespaceNextOptionalParams, + TopicSpacesListByNamespaceOptionalParams, + TopicSpacesListByNamespaceResponse, + TopicSpacesGetOptionalParams, + TopicSpacesGetResponse, + TopicSpacesCreateOrUpdateOptionalParams, + TopicSpacesCreateOrUpdateResponse, + TopicSpacesDeleteOptionalParams, + TopicSpacesListByNamespaceNextResponse +} from "../models"; + +/// +/** Class containing TopicSpaces operations. */ +export class TopicSpacesImpl implements TopicSpaces { + private readonly client: EventGridManagementClient; + + /** + * Initialize a new instance of the class TopicSpaces class. + * @param client Reference to the service client + */ + constructor(client: EventGridManagementClient) { + this.client = client; + } + + /** + * Get all the topic spaces under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + public listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: TopicSpacesListByNamespaceOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByNamespacePagingAll( + resourceGroupName, + namespaceName, + options + ); + return { + next() { + return iter.next(); + }, + [Symbol.asyncIterator]() { + return this; + }, + byPage: (settings?: PageSettings) => { + if (settings?.maxPageSize) { + throw new Error("maxPageSize is not supported by this operation."); + } + return this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options, + settings + ); + } + }; + } + + private async *listByNamespacePagingPage( + resourceGroupName: string, + namespaceName: string, + options?: TopicSpacesListByNamespaceOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: TopicSpacesListByNamespaceResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByNamespace( + resourceGroupName, + namespaceName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByNamespaceNext( + resourceGroupName, + namespaceName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByNamespacePagingAll( + resourceGroupName: string, + namespaceName: string, + options?: TopicSpacesListByNamespaceOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByNamespacePagingPage( + resourceGroupName, + namespaceName, + options + )) { + yield* page; + } + } + + /** + * Get properties of a topic space. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName Name of the Topic space. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + options?: TopicSpacesGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, topicSpaceName, options }, + getOperationSpec + ); + } + + /** + * Create or update a topic space with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName The topic space name. + * @param topicSpaceInfo Topic space information. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + topicSpaceInfo: TopicSpace, + options?: TopicSpacesCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + TopicSpacesCreateOrUpdateResponse + > + > { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { + resourceGroupName, + namespaceName, + topicSpaceName, + topicSpaceInfo, + options + }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + TopicSpacesCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a topic space with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName The topic space name. + * @param topicSpaceInfo Topic space information. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + topicSpaceInfo: TopicSpace, + options?: TopicSpacesCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + namespaceName, + topicSpaceName, + topicSpaceInfo, + options + ); + return poller.pollUntilDone(); + } + + /** + * Delete an existing topic space. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName Name of the Topic space. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + options?: TopicSpacesDeleteOptionalParams + ): Promise, void>> { + const directSendOperation = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ): Promise => { + return this.client.sendOperationRequest(args, spec); + }; + const sendOperationFn = async ( + args: coreClient.OperationArguments, + spec: coreClient.OperationSpec + ) => { + let currentRawResponse: + | coreClient.FullOperationResponse + | undefined = undefined; + const providedCallback = args.options?.onResponse; + const callback: coreClient.RawResponseCallback = ( + rawResponse: coreClient.FullOperationResponse, + flatResponse: unknown + ) => { + currentRawResponse = rawResponse; + providedCallback?.(rawResponse, flatResponse); + }; + const updatedArgs = { + ...args, + options: { + ...args.options, + onResponse: callback + } + }; + const flatResponse = await directSendOperation(updatedArgs, spec); + return { + flatResponse, + rawResponse: { + statusCode: currentRawResponse!.status, + body: currentRawResponse!.parsedBody, + headers: currentRawResponse!.headers.toJSON() + } + }; + }; + + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, namespaceName, topicSpaceName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Delete an existing topic space. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName Name of the Topic space. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + options?: TopicSpacesDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + namespaceName, + topicSpaceName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Get all the topic spaces under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + private _listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: TopicSpacesListByNamespaceOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, options }, + listByNamespaceOperationSpec + ); + } + + /** + * ListByNamespaceNext + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param nextLink The nextLink from the previous successful call to the ListByNamespace method. + * @param options The options parameters. + */ + private _listByNamespaceNext( + resourceGroupName: string, + namespaceName: string, + nextLink: string, + options?: TopicSpacesListByNamespaceNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, namespaceName, nextLink, options }, + listByNamespaceNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topicSpaces/{topicSpaceName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.TopicSpace + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicSpaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topicSpaces/{topicSpaceName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.TopicSpace + }, + 201: { + bodyMapper: Mappers.TopicSpace + }, + 202: { + bodyMapper: Mappers.TopicSpace + }, + 204: { + bodyMapper: Mappers.TopicSpace + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + requestBody: Parameters.topicSpaceInfo, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicSpaceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topicSpaces/{topicSpaceName}", + httpMethod: "DELETE", + responses: { + 200: {}, + 201: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.topicSpaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/namespaces/{namespaceName}/topicSpaces", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.TopicSpacesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + queryParameters: [Parameters.apiVersion, Parameters.filter, Parameters.top], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByNamespaceNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.TopicSpacesListResult + }, + default: { + bodyMapper: Mappers.ErrorResponse + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.namespaceName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/eventgrid/arm-eventgrid/src/operations/topics.ts b/sdk/eventgrid/arm-eventgrid/src/operations/topics.ts index c88f468d5d87..e58827f8b191 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operations/topics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operations/topics.ts @@ -13,8 +13,12 @@ import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { EventGridManagementClient } from "../eventGridManagementClient"; -import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro"; -import { LroImpl } from "../lroImpl"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; import { Topic, TopicsListBySubscriptionNextOptionalParams, @@ -31,6 +35,7 @@ import { TopicsCreateOrUpdateOptionalParams, TopicsCreateOrUpdateResponse, TopicsDeleteOptionalParams, + TopicsDeleteResponse, TopicUpdateParameters, TopicsUpdateOptionalParams, TopicsListSharedAccessKeysOptionalParams, @@ -290,8 +295,8 @@ export class TopicsImpl implements Topics { topicInfo: Topic, options?: TopicsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicsCreateOrUpdateResponse > > { @@ -301,7 +306,7 @@ export class TopicsImpl implements Topics { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -334,13 +339,16 @@ export class TopicsImpl implements Topics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, topicName, topicInfo, options }, - createOrUpdateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, topicName, topicInfo, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + TopicsCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -379,14 +387,16 @@ export class TopicsImpl implements Topics { resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams - ): Promise, void>> { + ): Promise< + SimplePollerLike, TopicsDeleteResponse> + > { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec - ): Promise => { + ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -419,13 +429,16 @@ export class TopicsImpl implements Topics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, topicName, options }, - deleteOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, topicName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller< + TopicsDeleteResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -442,7 +455,7 @@ export class TopicsImpl implements Topics { resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams - ): Promise { + ): Promise { const poller = await this.beginDelete( resourceGroupName, topicName, @@ -463,14 +476,14 @@ export class TopicsImpl implements Topics { topicName: string, topicUpdateParameters: TopicUpdateParameters, options?: TopicsUpdateOptionalParams - ): Promise, void>> { + ): Promise, void>> { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -503,13 +516,13 @@ export class TopicsImpl implements Topics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, topicName, topicUpdateParameters, options }, - updateOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, topicName, topicUpdateParameters, options }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -596,8 +609,8 @@ export class TopicsImpl implements Topics { regenerateKeyRequest: TopicRegenerateKeyRequest, options?: TopicsRegenerateKeyOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicsRegenerateKeyResponse > > { @@ -607,7 +620,7 @@ export class TopicsImpl implements Topics { ): Promise => { return this.client.sendOperationRequest(args, spec); }; - const sendOperation = async ( + const sendOperationFn = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec ) => { @@ -640,13 +653,16 @@ export class TopicsImpl implements Topics { }; }; - const lro = new LroImpl( - sendOperation, - { resourceGroupName, topicName, regenerateKeyRequest, options }, - regenerateKeyOperationSpec - ); - const poller = new LroEngine(lro, { - resumeFrom: options?.resumeFrom, + const lro = createLroSpec({ + sendOperationFn, + args: { resourceGroupName, topicName, regenerateKeyRequest, options }, + spec: regenerateKeyOperationSpec + }); + const poller = await createHttpPoller< + TopicsRegenerateKeyResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, intervalInMs: options?.updateIntervalInMs }); await poller.poll(); @@ -792,7 +808,21 @@ const deleteOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}", httpMethod: "DELETE", - responses: { 200: {}, 201: {}, 202: {}, 204: {}, default: {} }, + responses: { + 200: { + headersMapper: Mappers.TopicsDeleteHeaders + }, + 201: { + headersMapper: Mappers.TopicsDeleteHeaders + }, + 202: { + headersMapper: Mappers.TopicsDeleteHeaders + }, + 204: { + headersMapper: Mappers.TopicsDeleteHeaders + }, + default: {} + }, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -891,7 +921,7 @@ const regenerateKeyOperationSpec: coreClient.OperationSpec = { }, default: {} }, - requestBody: Parameters.regenerateKeyRequest1, + requestBody: Parameters.regenerateKeyRequest2, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/caCertificates.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/caCertificates.ts new file mode 100644 index 000000000000..a35b057cea02 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/caCertificates.ts @@ -0,0 +1,109 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + CaCertificate, + CaCertificatesListByNamespaceOptionalParams, + CaCertificatesGetOptionalParams, + CaCertificatesGetResponse, + CaCertificatesCreateOrUpdateOptionalParams, + CaCertificatesCreateOrUpdateResponse, + CaCertificatesDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a CaCertificates. */ +export interface CaCertificates { + /** + * Get all the CA certificates under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: CaCertificatesListByNamespaceOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a CA certificate. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName Name of the CA certificate. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + options?: CaCertificatesGetOptionalParams + ): Promise; + /** + * Create or update a CA certificate with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName The CA certificate name. + * @param caCertificateInfo CA certificate information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + caCertificateInfo: CaCertificate, + options?: CaCertificatesCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CaCertificatesCreateOrUpdateResponse + > + >; + /** + * Create or update a CA certificate with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName The CA certificate name. + * @param caCertificateInfo CA certificate information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + caCertificateInfo: CaCertificate, + options?: CaCertificatesCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete an existing CA certificate. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName Name of the CA certificate. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + options?: CaCertificatesDeleteOptionalParams + ): Promise, void>>; + /** + * Delete an existing CA certificate. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param caCertificateName Name of the CA certificate. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + caCertificateName: string, + options?: CaCertificatesDeleteOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/channels.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/channels.ts index 4b3bf09768d7..18fb35009463 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/channels.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/channels.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { Channel, ChannelsListByPartnerNamespaceOptionalParams, @@ -76,7 +76,7 @@ export interface Channels { partnerNamespaceName: string, channelName: string, options?: ChannelsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete an existing channel. * @param resourceGroupName The name of the resource group within the partners subscription. diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/clientGroups.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/clientGroups.ts new file mode 100644 index 000000000000..6756419b35cb --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/clientGroups.ts @@ -0,0 +1,109 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + ClientGroup, + ClientGroupsListByNamespaceOptionalParams, + ClientGroupsGetOptionalParams, + ClientGroupsGetResponse, + ClientGroupsCreateOrUpdateOptionalParams, + ClientGroupsCreateOrUpdateResponse, + ClientGroupsDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a ClientGroups. */ +export interface ClientGroups { + /** + * Get all the client groups under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: ClientGroupsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a client group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName Name of the client group. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + options?: ClientGroupsGetOptionalParams + ): Promise; + /** + * Create or update a client group with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName The client group name. + * @param clientGroupInfo Client group information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + clientGroupInfo: ClientGroup, + options?: ClientGroupsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + ClientGroupsCreateOrUpdateResponse + > + >; + /** + * Create or update a client group with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName The client group name. + * @param clientGroupInfo Client group information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + clientGroupInfo: ClientGroup, + options?: ClientGroupsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete an existing client group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName Name of the client group. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + options?: ClientGroupsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete an existing client group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientGroupName Name of the client group. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + clientGroupName: string, + options?: ClientGroupsDeleteOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/clients.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/clients.ts new file mode 100644 index 000000000000..27c2459f43ac --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/clients.ts @@ -0,0 +1,109 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + Client, + ClientsListByNamespaceOptionalParams, + ClientsGetOptionalParams, + ClientsGetResponse, + ClientsCreateOrUpdateOptionalParams, + ClientsCreateOrUpdateResponse, + ClientsDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a Clients. */ +export interface Clients { + /** + * Get all the permission bindings under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: ClientsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a client. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName Name of the client. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + clientName: string, + options?: ClientsGetOptionalParams + ): Promise; + /** + * Create or update a client with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName The client name. + * @param clientInfo Client information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + clientName: string, + clientInfo: Client, + options?: ClientsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + ClientsCreateOrUpdateResponse + > + >; + /** + * Create or update a client with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName The client name. + * @param clientInfo Client information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + clientName: string, + clientInfo: Client, + options?: ClientsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete an existing client. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName Name of the client. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + clientName: string, + options?: ClientsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete an existing client. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param clientName Name of the client. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + clientName: string, + options?: ClientsDeleteOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainEventSubscriptions.ts index 3dd9b59bf007..a4f1354eda08 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainEventSubscriptions.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { EventSubscription, DomainEventSubscriptionsListOptionalParams, @@ -42,7 +42,7 @@ export interface DomainEventSubscriptions { /** * Get all delivery attributes for an event subscription for domain. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param domainName Name of the domain topic. + * @param domainName Name of the domain. * @param eventSubscriptionName Name of the event subscription. * @param options The options parameters. */ @@ -55,7 +55,7 @@ export interface DomainEventSubscriptions { /** * Get properties of an event subscription of a domain. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param domainName Name of the partner topic. + * @param domainName Name of the domain. * @param eventSubscriptionName Name of the event subscription to be found. Event subscription names * must be between 3 and 100 characters in length and use alphanumeric letters only. * @param options The options parameters. @@ -83,8 +83,8 @@ export interface DomainEventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: DomainEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainEventSubscriptionsCreateOrUpdateResponse > >; @@ -118,7 +118,7 @@ export interface DomainEventSubscriptions { domainName: string, eventSubscriptionName: string, options?: DomainEventSubscriptionsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete an existing event subscription for a domain. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -148,8 +148,8 @@ export interface DomainEventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainEventSubscriptionsUpdateResponse > >; diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopicEventSubscriptions.ts index 015214376b5c..d8629185f7f4 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopicEventSubscriptions.ts @@ -7,10 +7,12 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { EventSubscription, DomainTopicEventSubscriptionsListOptionalParams, + DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, + DomainTopicEventSubscriptionsGetDeliveryAttributesResponse, DomainTopicEventSubscriptionsGetOptionalParams, DomainTopicEventSubscriptionsGetResponse, DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams, @@ -20,9 +22,7 @@ import { DomainTopicEventSubscriptionsUpdateOptionalParams, DomainTopicEventSubscriptionsUpdateResponse, DomainTopicEventSubscriptionsGetFullUrlOptionalParams, - DomainTopicEventSubscriptionsGetFullUrlResponse, - DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, - DomainTopicEventSubscriptionsGetDeliveryAttributesResponse + DomainTopicEventSubscriptionsGetFullUrlResponse } from "../models"; /// @@ -41,6 +41,21 @@ export interface DomainTopicEventSubscriptions { topicName: string, options?: DomainTopicEventSubscriptionsListOptionalParams ): PagedAsyncIterableIterator; + /** + * Get all delivery attributes for an event subscription for domain topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param domainName Name of the top level domain. + * @param topicName Name of the domain topic. + * @param eventSubscriptionName Name of the event subscription. + * @param options The options parameters. + */ + getDeliveryAttributes( + resourceGroupName: string, + domainName: string, + topicName: string, + eventSubscriptionName: string, + options?: DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams + ): Promise; /** * Get properties of a nested event subscription for a domain topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -75,8 +90,8 @@ export interface DomainTopicEventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: DomainTopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainTopicEventSubscriptionsCreateOrUpdateResponse > >; @@ -114,7 +129,7 @@ export interface DomainTopicEventSubscriptions { topicName: string, eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete a nested existing event subscription for a domain topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -148,8 +163,8 @@ export interface DomainTopicEventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: DomainTopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainTopicEventSubscriptionsUpdateResponse > >; @@ -185,19 +200,4 @@ export interface DomainTopicEventSubscriptions { eventSubscriptionName: string, options?: DomainTopicEventSubscriptionsGetFullUrlOptionalParams ): Promise; - /** - * Get all delivery attributes for an event subscription for domain topic. - * @param resourceGroupName The name of the resource group within the user's subscription. - * @param domainName Name of the top level domain. - * @param topicName Name of the domain topic. - * @param eventSubscriptionName Name of the event subscription. - * @param options The options parameters. - */ - getDeliveryAttributes( - resourceGroupName: string, - domainName: string, - topicName: string, - eventSubscriptionName: string, - options?: DomainTopicEventSubscriptionsGetDeliveryAttributesOptionalParams - ): Promise; } diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopics.ts index 60db5b6edf41..d92082c06086 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domainTopics.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { DomainTopic, DomainTopicsListByDomainOptionalParams, @@ -58,8 +58,8 @@ export interface DomainTopics { domainTopicName: string, options?: DomainTopicsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainTopicsCreateOrUpdateResponse > >; @@ -88,7 +88,7 @@ export interface DomainTopics { domainName: string, domainTopicName: string, options?: DomainTopicsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete existing domain topic. * @param resourceGroupName The name of the resource group within the user's subscription. diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domains.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domains.ts index a7574bfb2c4e..24fb58d5f549 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domains.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/domains.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { Domain, DomainsListBySubscriptionOptionalParams, @@ -69,8 +69,8 @@ export interface Domains { domainInfo: Domain, options?: DomainsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, DomainsCreateOrUpdateResponse > >; @@ -97,7 +97,7 @@ export interface Domains { resourceGroupName: string, domainName: string, options?: DomainsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete existing domain. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -121,7 +121,7 @@ export interface Domains { domainName: string, domainUpdateParameters: DomainUpdateParameters, options?: DomainsUpdateOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Asynchronously updates a domain with the specified parameters. * @param resourceGroupName The name of the resource group within the user's subscription. diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/eventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/eventSubscriptions.ts index ae1498644e13..af3d00707dea 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/eventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/eventSubscriptions.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { EventSubscription, EventSubscriptionsListGlobalBySubscriptionOptionalParams, @@ -20,6 +20,8 @@ import { EventSubscriptionsListRegionalByResourceGroupForTopicTypeOptionalParams, EventSubscriptionsListByResourceOptionalParams, EventSubscriptionsListByDomainTopicOptionalParams, + EventSubscriptionsGetDeliveryAttributesOptionalParams, + EventSubscriptionsGetDeliveryAttributesResponse, EventSubscriptionsGetOptionalParams, EventSubscriptionsGetResponse, EventSubscriptionsCreateOrUpdateOptionalParams, @@ -29,9 +31,7 @@ import { EventSubscriptionsUpdateOptionalParams, EventSubscriptionsUpdateResponse, EventSubscriptionsGetFullUrlOptionalParams, - EventSubscriptionsGetFullUrlResponse, - EventSubscriptionsGetDeliveryAttributesOptionalParams, - EventSubscriptionsGetDeliveryAttributesResponse + EventSubscriptionsGetFullUrlResponse } from "../models"; /// @@ -148,6 +148,24 @@ export interface EventSubscriptions { topicName: string, options?: EventSubscriptionsListByDomainTopicOptionalParams ): PagedAsyncIterableIterator; + /** + * Get all delivery attributes for an event subscription. + * @param scope The scope of the event subscription. The scope can be a subscription, or a resource + * group, or a top level resource belonging to a resource provider namespace, or an EventGrid topic. + * For example, use '/subscriptions/{subscriptionId}/' for a subscription, + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' + * for a resource, and + * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}' + * for an EventGrid topic. + * @param eventSubscriptionName Name of the event subscription. + * @param options The options parameters. + */ + getDeliveryAttributes( + scope: string, + eventSubscriptionName: string, + options?: EventSubscriptionsGetDeliveryAttributesOptionalParams + ): Promise; /** * Get properties of an event subscription. * @param scope The scope of the event subscription. The scope can be a subscription, or a resource @@ -190,8 +208,8 @@ export interface EventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: EventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, EventSubscriptionsCreateOrUpdateResponse > >; @@ -236,7 +254,7 @@ export interface EventSubscriptions { scope: string, eventSubscriptionName: string, options?: EventSubscriptionsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete an existing event subscription. * @param scope The scope of the event subscription. The scope can be a subscription, or a resource @@ -275,8 +293,8 @@ export interface EventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: EventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, EventSubscriptionsUpdateResponse > >; @@ -318,22 +336,4 @@ export interface EventSubscriptions { eventSubscriptionName: string, options?: EventSubscriptionsGetFullUrlOptionalParams ): Promise; - /** - * Get all delivery attributes for an event subscription. - * @param scope The scope of the event subscription. The scope can be a subscription, or a resource - * group, or a top level resource belonging to a resource provider namespace, or an EventGrid topic. - * For example, use '/subscriptions/{subscriptionId}/' for a subscription, - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}' for a resource group, and - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}' - * for a resource, and - * '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.EventGrid/topics/{topicName}' - * for an EventGrid topic. - * @param eventSubscriptionName Name of the event subscription. - * @param options The options parameters. - */ - getDeliveryAttributes( - scope: string, - eventSubscriptionName: string, - options?: EventSubscriptionsGetDeliveryAttributesOptionalParams - ): Promise; } diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/index.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/index.ts index e5ca2281f9a3..8a8dc2e80bf6 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/index.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/index.ts @@ -6,24 +6,33 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ +export * from "./caCertificates"; export * from "./channels"; +export * from "./clientGroups"; +export * from "./clients"; export * from "./domains"; export * from "./domainTopics"; +export * from "./domainTopicEventSubscriptions"; export * from "./topicEventSubscriptions"; export * from "./domainEventSubscriptions"; export * from "./eventSubscriptions"; -export * from "./domainTopicEventSubscriptions"; export * from "./systemTopicEventSubscriptions"; +export * from "./namespaceTopicEventSubscriptions"; export * from "./partnerTopicEventSubscriptions"; +export * from "./namespaces"; +export * from "./namespaceTopics"; export * from "./operations"; -export * from "./topics"; export * from "./partnerConfigurations"; +export * from "./partnerDestinations"; export * from "./partnerNamespaces"; export * from "./partnerRegistrations"; export * from "./partnerTopics"; +export * from "./permissionBindings"; export * from "./privateEndpointConnections"; export * from "./privateLinkResources"; export * from "./systemTopics"; +export * from "./topics"; export * from "./extensionTopics"; +export * from "./topicSpaces"; export * from "./topicTypes"; export * from "./verifiedPartners"; diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaceTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaceTopicEventSubscriptions.ts new file mode 100644 index 000000000000..822840c75794 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaceTopicEventSubscriptions.ts @@ -0,0 +1,174 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + Subscription, + NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams, + NamespaceTopicEventSubscriptionsGetOptionalParams, + NamespaceTopicEventSubscriptionsGetResponse, + NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams, + NamespaceTopicEventSubscriptionsCreateOrUpdateResponse, + NamespaceTopicEventSubscriptionsDeleteOptionalParams, + SubscriptionUpdateParameters, + NamespaceTopicEventSubscriptionsUpdateOptionalParams, + NamespaceTopicEventSubscriptionsUpdateResponse +} from "../models"; + +/// +/** Interface representing a NamespaceTopicEventSubscriptions. */ +export interface NamespaceTopicEventSubscriptions { + /** + * List event subscriptions that belong to a specific namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param options The options parameters. + */ + listByNamespaceTopic( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicEventSubscriptionsListByNamespaceTopicOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of an event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + options?: NamespaceTopicEventSubscriptionsGetOptionalParams + ): Promise; + /** + * Asynchronously creates or updates an event subscription of a namespace topic with the specified + * parameters. Existing event subscriptions will be updated with this API. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionInfo Event subscription properties containing the delivery mode, filter + * information, and others. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionInfo: Subscription, + options?: NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicEventSubscriptionsCreateOrUpdateResponse + > + >; + /** + * Asynchronously creates or updates an event subscription of a namespace topic with the specified + * parameters. Existing event subscriptions will be updated with this API. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionInfo Event subscription properties containing the delivery mode, filter + * information, and others. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionInfo: Subscription, + options?: NamespaceTopicEventSubscriptionsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + options?: NamespaceTopicEventSubscriptionsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + options?: NamespaceTopicEventSubscriptionsDeleteOptionalParams + ): Promise; + /** + * Update an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionUpdateParameters Updated event subscription information. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionUpdateParameters: SubscriptionUpdateParameters, + options?: NamespaceTopicEventSubscriptionsUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicEventSubscriptionsUpdateResponse + > + >; + /** + * Update an existing event subscription of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param eventSubscriptionUpdateParameters Updated event subscription information. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + eventSubscriptionName: string, + eventSubscriptionUpdateParameters: SubscriptionUpdateParameters, + options?: NamespaceTopicEventSubscriptionsUpdateOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaceTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaceTopics.ts new file mode 100644 index 000000000000..665ad66f21b5 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaceTopics.ts @@ -0,0 +1,200 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + NamespaceTopic, + NamespaceTopicsListByNamespaceOptionalParams, + NamespaceTopicsGetOptionalParams, + NamespaceTopicsGetResponse, + NamespaceTopicsCreateOrUpdateOptionalParams, + NamespaceTopicsCreateOrUpdateResponse, + NamespaceTopicsDeleteOptionalParams, + NamespaceTopicUpdateParameters, + NamespaceTopicsUpdateOptionalParams, + NamespaceTopicsUpdateResponse, + NamespaceTopicsListSharedAccessKeysOptionalParams, + NamespaceTopicsListSharedAccessKeysResponse, + TopicRegenerateKeyRequest, + NamespaceTopicsRegenerateKeyOptionalParams, + NamespaceTopicsRegenerateKeyResponse +} from "../models"; + +/// +/** Interface representing a NamespaceTopics. */ +export interface NamespaceTopics { + /** + * List all the namespace topics under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: NamespaceTopicsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsGetOptionalParams + ): Promise; + /** + * Asynchronously creates a new namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicInfo Namespace topic information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicInfo: NamespaceTopic, + options?: NamespaceTopicsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicsCreateOrUpdateResponse + > + >; + /** + * Asynchronously creates a new namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicInfo Namespace topic information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicInfo: NamespaceTopic, + options?: NamespaceTopicsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete existing namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete existing namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsDeleteOptionalParams + ): Promise; + /** + * Asynchronously updates a namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicUpdateParameters Namespace topic update information. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicUpdateParameters: NamespaceTopicUpdateParameters, + options?: NamespaceTopicsUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicsUpdateResponse + > + >; + /** + * Asynchronously updates a namespace topic with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the namespace topic. + * @param namespaceTopicUpdateParameters Namespace topic update information. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + namespaceTopicUpdateParameters: NamespaceTopicUpdateParameters, + options?: NamespaceTopicsUpdateOptionalParams + ): Promise; + /** + * List the two keys used to publish to a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param options The options parameters. + */ + listSharedAccessKeys( + resourceGroupName: string, + namespaceName: string, + topicName: string, + options?: NamespaceTopicsListSharedAccessKeysOptionalParams + ): Promise; + /** + * Regenerate a shared access key for a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + beginRegenerateKey( + resourceGroupName: string, + namespaceName: string, + topicName: string, + regenerateKeyRequest: TopicRegenerateKeyRequest, + options?: NamespaceTopicsRegenerateKeyOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespaceTopicsRegenerateKeyResponse + > + >; + /** + * Regenerate a shared access key for a namespace topic. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicName Name of the topic. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + beginRegenerateKeyAndWait( + resourceGroupName: string, + namespaceName: string, + topicName: string, + regenerateKeyRequest: TopicRegenerateKeyRequest, + options?: NamespaceTopicsRegenerateKeyOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaces.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaces.ts new file mode 100644 index 000000000000..907d488c50d9 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/namespaces.ts @@ -0,0 +1,186 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + Namespace, + NamespacesListBySubscriptionOptionalParams, + NamespacesListByResourceGroupOptionalParams, + NamespacesGetOptionalParams, + NamespacesGetResponse, + NamespacesCreateOrUpdateOptionalParams, + NamespacesCreateOrUpdateResponse, + NamespacesDeleteOptionalParams, + NamespaceUpdateParameters, + NamespacesUpdateOptionalParams, + NamespacesUpdateResponse, + NamespacesListSharedAccessKeysOptionalParams, + NamespacesListSharedAccessKeysResponse, + NamespaceRegenerateKeyRequest, + NamespacesRegenerateKeyOptionalParams, + NamespacesRegenerateKeyResponse +} from "../models"; + +/// +/** Interface representing a Namespaces. */ +export interface Namespaces { + /** + * List all the namespaces under an Azure subscription. + * @param options The options parameters. + */ + listBySubscription( + options?: NamespacesListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator; + /** + * List all the namespaces under a resource group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: NamespacesListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesGetOptionalParams + ): Promise; + /** + * Asynchronously creates or updates a new namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceInfo Namespace information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + namespaceInfo: Namespace, + options?: NamespacesCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespacesCreateOrUpdateResponse + > + >; + /** + * Asynchronously creates or updates a new namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceInfo Namespace information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + namespaceInfo: Namespace, + options?: NamespacesCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete existing namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesDeleteOptionalParams + ): Promise, void>>; + /** + * Delete existing namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesDeleteOptionalParams + ): Promise; + /** + * Asynchronously updates a namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceUpdateParameters Namespace update information. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + namespaceName: string, + namespaceUpdateParameters: NamespaceUpdateParameters, + options?: NamespacesUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespacesUpdateResponse + > + >; + /** + * Asynchronously updates a namespace with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param namespaceUpdateParameters Namespace update information. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + namespaceUpdateParameters: NamespaceUpdateParameters, + options?: NamespacesUpdateOptionalParams + ): Promise; + /** + * List the two keys used to publish to a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listSharedAccessKeys( + resourceGroupName: string, + namespaceName: string, + options?: NamespacesListSharedAccessKeysOptionalParams + ): Promise; + /** + * Regenerate a shared access key for a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the Namespace. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + beginRegenerateKey( + resourceGroupName: string, + namespaceName: string, + regenerateKeyRequest: NamespaceRegenerateKeyRequest, + options?: NamespacesRegenerateKeyOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + NamespacesRegenerateKeyResponse + > + >; + /** + * Regenerate a shared access key for a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the Namespace. + * @param regenerateKeyRequest Request body to regenerate key. + * @param options The options parameters. + */ + beginRegenerateKeyAndWait( + resourceGroupName: string, + namespaceName: string, + regenerateKeyRequest: NamespaceRegenerateKeyRequest, + options?: NamespacesRegenerateKeyOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerConfigurations.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerConfigurations.ts index 83b59d0d34c8..0be309dc189e 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerConfigurations.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerConfigurations.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { PartnerConfiguration, PartnerConfigurationsListByResourceGroupOptionalParams, @@ -66,8 +66,8 @@ export interface PartnerConfigurations { partnerConfigurationInfo: PartnerConfiguration, options?: PartnerConfigurationsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerConfigurationsCreateOrUpdateResponse > >; @@ -90,7 +90,7 @@ export interface PartnerConfigurations { beginDelete( resourceGroupName: string, options?: PartnerConfigurationsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete existing partner configuration. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -111,8 +111,8 @@ export interface PartnerConfigurations { partnerConfigurationUpdateParameters: PartnerConfigurationUpdateParameters, options?: PartnerConfigurationsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerConfigurationsUpdateResponse > >; diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerDestinations.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerDestinations.ts new file mode 100644 index 000000000000..2499b64cabb8 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerDestinations.ts @@ -0,0 +1,152 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + PartnerDestination, + PartnerDestinationsListBySubscriptionOptionalParams, + PartnerDestinationsListByResourceGroupOptionalParams, + PartnerDestinationsGetOptionalParams, + PartnerDestinationsGetResponse, + PartnerDestinationsCreateOrUpdateOptionalParams, + PartnerDestinationsCreateOrUpdateResponse, + PartnerDestinationsDeleteOptionalParams, + PartnerDestinationUpdateParameters, + PartnerDestinationsUpdateOptionalParams, + PartnerDestinationsUpdateResponse, + PartnerDestinationsActivateOptionalParams, + PartnerDestinationsActivateResponse +} from "../models"; + +/// +/** Interface representing a PartnerDestinations. */ +export interface PartnerDestinations { + /** + * List all the partner destinations under an Azure subscription. + * @param options The options parameters. + */ + listBySubscription( + options?: PartnerDestinationsListBySubscriptionOptionalParams + ): PagedAsyncIterableIterator; + /** + * List all the partner destinations under a resource group. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: PartnerDestinationsListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsGetOptionalParams + ): Promise; + /** + * Asynchronously creates a new partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestination Partner destination create information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestination: PartnerDestination, + options?: PartnerDestinationsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + PartnerDestinationsCreateOrUpdateResponse + > + >; + /** + * Asynchronously creates a new partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestination Partner destination create information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestination: PartnerDestination, + options?: PartnerDestinationsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete existing partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete existing partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsDeleteOptionalParams + ): Promise; + /** + * Asynchronously updates a partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestinationUpdateParameters Partner destination update information. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestinationUpdateParameters: PartnerDestinationUpdateParameters, + options?: PartnerDestinationsUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + PartnerDestinationsUpdateResponse + > + >; + /** + * Asynchronously updates a partner destination with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param partnerDestinationUpdateParameters Partner destination update information. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + partnerDestinationName: string, + partnerDestinationUpdateParameters: PartnerDestinationUpdateParameters, + options?: PartnerDestinationsUpdateOptionalParams + ): Promise; + /** + * Activate a newly created partner destination. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param partnerDestinationName Name of the partner destination. + * @param options The options parameters. + */ + activate( + resourceGroupName: string, + partnerDestinationName: string, + options?: PartnerDestinationsActivateOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerNamespaces.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerNamespaces.ts index 4efeaa866667..e794639db862 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerNamespaces.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerNamespaces.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { PartnerNamespace, PartnerNamespacesListBySubscriptionOptionalParams, @@ -69,8 +69,8 @@ export interface PartnerNamespaces { partnerNamespaceInfo: PartnerNamespace, options?: PartnerNamespacesCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerNamespacesCreateOrUpdateResponse > >; @@ -97,7 +97,7 @@ export interface PartnerNamespaces { resourceGroupName: string, partnerNamespaceName: string, options?: PartnerNamespacesDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete existing partner namespace. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -121,7 +121,7 @@ export interface PartnerNamespaces { partnerNamespaceName: string, partnerNamespaceUpdateParameters: PartnerNamespaceUpdateParameters, options?: PartnerNamespacesUpdateOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Asynchronously updates a partner namespace with the specified parameters. * @param resourceGroupName The name of the resource group within the user's subscription. diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerRegistrations.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerRegistrations.ts index f981cf0489df..327f9040462f 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerRegistrations.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerRegistrations.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { PartnerRegistration, PartnerRegistrationsListBySubscriptionOptionalParams, @@ -64,8 +64,8 @@ export interface PartnerRegistrations { partnerRegistrationInfo: PartnerRegistration, options?: PartnerRegistrationsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerRegistrationsCreateOrUpdateResponse > >; @@ -92,7 +92,7 @@ export interface PartnerRegistrations { resourceGroupName: string, partnerRegistrationName: string, options?: PartnerRegistrationsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Deletes a partner registration with the specified parameters. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -116,7 +116,7 @@ export interface PartnerRegistrations { partnerRegistrationName: string, partnerRegistrationUpdateParameters: PartnerRegistrationUpdateParameters, options?: PartnerRegistrationsUpdateOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Updates a partner registration with the specified parameters. * @param resourceGroupName The name of the resource group within the user's subscription. diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopicEventSubscriptions.ts index dce9c3d932a0..6a18b39bae26 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopicEventSubscriptions.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { EventSubscription, PartnerTopicEventSubscriptionsListByPartnerTopicOptionalParams, @@ -71,8 +71,8 @@ export interface PartnerTopicEventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: PartnerTopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerTopicEventSubscriptionsCreateOrUpdateResponse > >; @@ -107,7 +107,7 @@ export interface PartnerTopicEventSubscriptions { partnerTopicName: string, eventSubscriptionName: string, options?: PartnerTopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete an existing event subscription of a partner topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -138,8 +138,8 @@ export interface PartnerTopicEventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: PartnerTopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PartnerTopicEventSubscriptionsUpdateResponse > >; diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopics.ts index a62fe27710fe..a37c52a9f2bd 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/partnerTopics.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { PartnerTopic, PartnerTopicsListBySubscriptionOptionalParams, @@ -79,7 +79,7 @@ export interface PartnerTopics { resourceGroupName: string, partnerTopicName: string, options?: PartnerTopicsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete existing partner topic. * @param resourceGroupName The name of the resource group within the user's subscription. diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/permissionBindings.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/permissionBindings.ts new file mode 100644 index 000000000000..65df692b37f1 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/permissionBindings.ts @@ -0,0 +1,109 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + PermissionBinding, + PermissionBindingsListByNamespaceOptionalParams, + PermissionBindingsGetOptionalParams, + PermissionBindingsGetResponse, + PermissionBindingsCreateOrUpdateOptionalParams, + PermissionBindingsCreateOrUpdateResponse, + PermissionBindingsDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a PermissionBindings. */ +export interface PermissionBindings { + /** + * Get all the permission bindings under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: PermissionBindingsListByNamespaceOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a permission binding. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName Name of the permission binding. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + options?: PermissionBindingsGetOptionalParams + ): Promise; + /** + * Create or update a permission binding with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName The permission binding name. + * @param permissionBindingInfo Permission binding information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + permissionBindingInfo: PermissionBinding, + options?: PermissionBindingsCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + PermissionBindingsCreateOrUpdateResponse + > + >; + /** + * Create or update a permission binding with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName The permission binding name. + * @param permissionBindingInfo Permission binding information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + permissionBindingInfo: PermissionBinding, + options?: PermissionBindingsCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete an existing permission binding. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName Name of the permission binding. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + options?: PermissionBindingsDeleteOptionalParams + ): Promise, void>>; + /** + * Delete an existing permission binding. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param permissionBindingName Name of the permission binding. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + permissionBindingName: string, + options?: PermissionBindingsDeleteOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateEndpointConnections.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateEndpointConnections.ts index eb0e3b865a8b..708f63aed761 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateEndpointConnections.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateEndpointConnections.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { PrivateEndpointConnection, PrivateEndpointConnectionsParentType, @@ -16,19 +16,20 @@ import { PrivateEndpointConnectionsGetResponse, PrivateEndpointConnectionsUpdateOptionalParams, PrivateEndpointConnectionsUpdateResponse, - PrivateEndpointConnectionsDeleteOptionalParams + PrivateEndpointConnectionsDeleteOptionalParams, + PrivateEndpointConnectionsDeleteResponse } from "../models"; /// /** Interface representing a PrivateEndpointConnections. */ export interface PrivateEndpointConnections { /** - * Get all private endpoint connections under a topic, domain, or partner namespace. + * Get all private endpoint connections under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param options The options parameters. */ listByResource( @@ -38,12 +39,12 @@ export interface PrivateEndpointConnections { options?: PrivateEndpointConnectionsListByResourceOptionalParams ): PagedAsyncIterableIterator; /** - * Get a specific private endpoint connection under a topic, domain, or partner namespace. + * Get a specific private endpoint connection under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param options The options parameters. */ @@ -58,9 +59,9 @@ export interface PrivateEndpointConnections { * Update a specific private endpoint connection under a topic, domain or partner namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param privateEndpointConnection The private endpoint connection object to update. * @param options The options parameters. @@ -73,8 +74,8 @@ export interface PrivateEndpointConnections { privateEndpointConnection: PrivateEndpointConnection, options?: PrivateEndpointConnectionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, PrivateEndpointConnectionsUpdateResponse > >; @@ -82,9 +83,9 @@ export interface PrivateEndpointConnections { * Update a specific private endpoint connection under a topic, domain or partner namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param privateEndpointConnection The private endpoint connection object to update. * @param options The options parameters. @@ -98,12 +99,13 @@ export interface PrivateEndpointConnections { options?: PrivateEndpointConnectionsUpdateOptionalParams ): Promise; /** - * Delete a specific private endpoint connection under a topic, domain, or partner namespace. + * Delete a specific private endpoint connection under a topic, domain, or partner namespace or + * namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param options The options parameters. */ @@ -113,14 +115,20 @@ export interface PrivateEndpointConnections { parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams - ): Promise, void>>; + ): Promise< + SimplePollerLike< + OperationState, + PrivateEndpointConnectionsDeleteResponse + > + >; /** - * Delete a specific private endpoint connection under a topic, domain, or partner namespace. + * Delete a specific private endpoint connection under a topic, domain, or partner namespace or + * namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace name or namespace name). * @param privateEndpointConnectionName The name of the private endpoint connection connection. * @param options The options parameters. */ @@ -130,5 +138,5 @@ export interface PrivateEndpointConnections { parentName: string, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams - ): Promise; + ): Promise; } diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateLinkResources.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateLinkResources.ts index 63a9ba89ceae..0f7874e0e345 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateLinkResources.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/privateLinkResources.ts @@ -18,12 +18,12 @@ import { /** Interface representing a PrivateLinkResources. */ export interface PrivateLinkResources { /** - * List all the private link resources under a topic, domain, or partner namespace. + * List all the private link resources under a topic, domain, or partner namespace or namespace. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). + * partner namespace or namespace name). * @param options The options parameters. */ listByResource( @@ -36,10 +36,11 @@ export interface PrivateLinkResources { * Get properties of a private link resource. * @param resourceGroupName The name of the resource group within the user's subscription. * @param parentType The type of the parent resource. This can be either \'topics\', \'domains\', or - * \'partnerNamespaces\'. + * \'partnerNamespaces\' or \'namespaces\'. * @param parentName The name of the parent resource (namely, either, the topic name, domain name, or - * partner namespace name). - * @param privateLinkResourceName The name of private link resource. + * partner namespace name or namespace name). + * @param privateLinkResourceName The name of private link resource will be either topic, domain, + * partnerNamespace or namespace. * @param options The options parameters. */ get( diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopicEventSubscriptions.ts index 2ab7cee8c02b..fd23b1cc3234 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopicEventSubscriptions.ts @@ -7,10 +7,12 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { EventSubscription, SystemTopicEventSubscriptionsListBySystemTopicOptionalParams, + SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, + SystemTopicEventSubscriptionsGetDeliveryAttributesResponse, SystemTopicEventSubscriptionsGetOptionalParams, SystemTopicEventSubscriptionsGetResponse, SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams, @@ -20,9 +22,7 @@ import { SystemTopicEventSubscriptionsUpdateOptionalParams, SystemTopicEventSubscriptionsUpdateResponse, SystemTopicEventSubscriptionsGetFullUrlOptionalParams, - SystemTopicEventSubscriptionsGetFullUrlResponse, - SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams, - SystemTopicEventSubscriptionsGetDeliveryAttributesResponse + SystemTopicEventSubscriptionsGetFullUrlResponse } from "../models"; /// @@ -39,6 +39,20 @@ export interface SystemTopicEventSubscriptions { systemTopicName: string, options?: SystemTopicEventSubscriptionsListBySystemTopicOptionalParams ): PagedAsyncIterableIterator; + /** + * Get all delivery attributes for an event subscription. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param systemTopicName Name of the system topic. + * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names + * must be between 3 and 100 characters in length and use alphanumeric letters only. + * @param options The options parameters. + */ + getDeliveryAttributes( + resourceGroupName: string, + systemTopicName: string, + eventSubscriptionName: string, + options?: SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams + ): Promise; /** * Get an event subscription. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -71,8 +85,8 @@ export interface SystemTopicEventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: SystemTopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicEventSubscriptionsCreateOrUpdateResponse > >; @@ -107,7 +121,7 @@ export interface SystemTopicEventSubscriptions { systemTopicName: string, eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete an existing event subscription of a system topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -138,8 +152,8 @@ export interface SystemTopicEventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: SystemTopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicEventSubscriptionsUpdateResponse > >; @@ -173,18 +187,4 @@ export interface SystemTopicEventSubscriptions { eventSubscriptionName: string, options?: SystemTopicEventSubscriptionsGetFullUrlOptionalParams ): Promise; - /** - * Get all delivery attributes for an event subscription. - * @param resourceGroupName The name of the resource group within the user's subscription. - * @param systemTopicName Name of the system topic. - * @param eventSubscriptionName Name of the event subscription to be created. Event subscription names - * must be between 3 and 100 characters in length and use alphanumeric letters only. - * @param options The options parameters. - */ - getDeliveryAttributes( - resourceGroupName: string, - systemTopicName: string, - eventSubscriptionName: string, - options?: SystemTopicEventSubscriptionsGetDeliveryAttributesOptionalParams - ): Promise; } diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopics.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopics.ts index 10d9df45428a..19895c1fbe8a 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/systemTopics.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { SystemTopic, SystemTopicsListBySubscriptionOptionalParams, @@ -65,8 +65,8 @@ export interface SystemTopics { systemTopicInfo: SystemTopic, options?: SystemTopicsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicsCreateOrUpdateResponse > >; @@ -93,7 +93,7 @@ export interface SystemTopics { resourceGroupName: string, systemTopicName: string, options?: SystemTopicsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete existing system topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -118,8 +118,8 @@ export interface SystemTopics { systemTopicUpdateParameters: SystemTopicUpdateParameters, options?: SystemTopicsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, SystemTopicsUpdateResponse > >; diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topicEventSubscriptions.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topicEventSubscriptions.ts index 14261ff2963c..f16e472eb267 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topicEventSubscriptions.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topicEventSubscriptions.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { EventSubscription, TopicEventSubscriptionsListOptionalParams, @@ -42,7 +42,7 @@ export interface TopicEventSubscriptions { /** * Get all delivery attributes for an event subscription for topic. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param topicName Name of the domain topic. + * @param topicName Name of the topic. * @param eventSubscriptionName Name of the event subscription. * @param options The options parameters. */ @@ -55,7 +55,7 @@ export interface TopicEventSubscriptions { /** * Get properties of an event subscription of a topic. * @param resourceGroupName The name of the resource group within the user's subscription. - * @param topicName Name of the partner topic. + * @param topicName Name of the topic. * @param eventSubscriptionName Name of the event subscription to be found. Event subscription names * must be between 3 and 100 characters in length and use alphanumeric letters only. * @param options The options parameters. @@ -83,8 +83,8 @@ export interface TopicEventSubscriptions { eventSubscriptionInfo: EventSubscription, options?: TopicEventSubscriptionsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicEventSubscriptionsCreateOrUpdateResponse > >; @@ -118,7 +118,7 @@ export interface TopicEventSubscriptions { topicName: string, eventSubscriptionName: string, options?: TopicEventSubscriptionsDeleteOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Delete an existing event subscription for a topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -148,8 +148,8 @@ export interface TopicEventSubscriptions { eventSubscriptionUpdateParameters: EventSubscriptionUpdateParameters, options?: TopicEventSubscriptionsUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicEventSubscriptionsUpdateResponse > >; diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topicSpaces.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topicSpaces.ts new file mode 100644 index 000000000000..786e53f609b4 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topicSpaces.ts @@ -0,0 +1,109 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { PagedAsyncIterableIterator } from "@azure/core-paging"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; +import { + TopicSpace, + TopicSpacesListByNamespaceOptionalParams, + TopicSpacesGetOptionalParams, + TopicSpacesGetResponse, + TopicSpacesCreateOrUpdateOptionalParams, + TopicSpacesCreateOrUpdateResponse, + TopicSpacesDeleteOptionalParams +} from "../models"; + +/// +/** Interface representing a TopicSpaces. */ +export interface TopicSpaces { + /** + * Get all the topic spaces under a namespace. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param options The options parameters. + */ + listByNamespace( + resourceGroupName: string, + namespaceName: string, + options?: TopicSpacesListByNamespaceOptionalParams + ): PagedAsyncIterableIterator; + /** + * Get properties of a topic space. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName Name of the Topic space. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + options?: TopicSpacesGetOptionalParams + ): Promise; + /** + * Create or update a topic space with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName The topic space name. + * @param topicSpaceInfo Topic space information. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + topicSpaceInfo: TopicSpace, + options?: TopicSpacesCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + TopicSpacesCreateOrUpdateResponse + > + >; + /** + * Create or update a topic space with the specified parameters. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName The topic space name. + * @param topicSpaceInfo Topic space information. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + topicSpaceInfo: TopicSpace, + options?: TopicSpacesCreateOrUpdateOptionalParams + ): Promise; + /** + * Delete an existing topic space. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName Name of the Topic space. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + options?: TopicSpacesDeleteOptionalParams + ): Promise, void>>; + /** + * Delete an existing topic space. + * @param resourceGroupName The name of the resource group within the user's subscription. + * @param namespaceName Name of the namespace. + * @param topicSpaceName Name of the Topic space. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + namespaceName: string, + topicSpaceName: string, + options?: TopicSpacesDeleteOptionalParams + ): Promise; +} diff --git a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topics.ts b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topics.ts index 631a23953ef5..32df730d0847 100644 --- a/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topics.ts +++ b/sdk/eventgrid/arm-eventgrid/src/operationsInterfaces/topics.ts @@ -7,7 +7,7 @@ */ import { PagedAsyncIterableIterator } from "@azure/core-paging"; -import { PollerLike, PollOperationState } from "@azure/core-lro"; +import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { Topic, TopicsListBySubscriptionOptionalParams, @@ -19,6 +19,7 @@ import { TopicsCreateOrUpdateOptionalParams, TopicsCreateOrUpdateResponse, TopicsDeleteOptionalParams, + TopicsDeleteResponse, TopicUpdateParameters, TopicsUpdateOptionalParams, TopicsListSharedAccessKeysOptionalParams, @@ -86,8 +87,8 @@ export interface Topics { topicInfo: Topic, options?: TopicsCreateOrUpdateOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicsCreateOrUpdateResponse > >; @@ -114,7 +115,9 @@ export interface Topics { resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams - ): Promise, void>>; + ): Promise< + SimplePollerLike, TopicsDeleteResponse> + >; /** * Delete existing topic. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -125,7 +128,7 @@ export interface Topics { resourceGroupName: string, topicName: string, options?: TopicsDeleteOptionalParams - ): Promise; + ): Promise; /** * Asynchronously updates a topic with the specified parameters. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -138,7 +141,7 @@ export interface Topics { topicName: string, topicUpdateParameters: TopicUpdateParameters, options?: TopicsUpdateOptionalParams - ): Promise, void>>; + ): Promise, void>>; /** * Asynchronously updates a topic with the specified parameters. * @param resourceGroupName The name of the resource group within the user's subscription. @@ -176,8 +179,8 @@ export interface Topics { regenerateKeyRequest: TopicRegenerateKeyRequest, options?: TopicsRegenerateKeyOptionalParams ): Promise< - PollerLike< - PollOperationState, + SimplePollerLike< + OperationState, TopicsRegenerateKeyResponse > >; diff --git a/sdk/eventgrid/arm-eventgrid/test/sampleTest.ts b/sdk/eventgrid/arm-eventgrid/test/sampleTest.ts new file mode 100644 index 000000000000..25aeb3ebcc36 --- /dev/null +++ b/sdk/eventgrid/arm-eventgrid/test/sampleTest.ts @@ -0,0 +1,43 @@ +/* + * Copyright (c) Microsoft Corporation. + * Licensed under the MIT License. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import { + Recorder, + RecorderStartOptions, + env +} from "@azure-tools/test-recorder"; +import { assert } from "chai"; +import { Context } from "mocha"; + +const replaceableVariables: Record = { + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", + SUBSCRIPTION_ID: "azure_subscription_id" +}; + +const recorderOptions: RecorderStartOptions = { + envSetupForPlayback: replaceableVariables +}; + +describe("My test", () => { + let recorder: Recorder; + + beforeEach(async function(this: Context) { + recorder = new Recorder(this.currentTest); + await recorder.start(recorderOptions); + }); + + afterEach(async function() { + await recorder.stop(); + }); + + it("sample test", async function() { + console.log("Hi, I'm a test!"); + }); +}); diff --git a/sdk/eventgrid/arm-eventgrid/tsconfig.json b/sdk/eventgrid/arm-eventgrid/tsconfig.json index bf7a2cee2deb..3e6ae96443f3 100644 --- a/sdk/eventgrid/arm-eventgrid/tsconfig.json +++ b/sdk/eventgrid/arm-eventgrid/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-eventgrid": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"