From 9258a3ee6648b83a5f305a5b8661cf4d321a1ca6 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Wed, 15 Mar 2023 08:52:51 +0000 Subject: [PATCH] CodeGen from PR 23081 in Azure/azure-rest-api-specs [Hub Generated] Review request for Microsoft.DocumentDB to add version preview/2023-03-01-preview (#23081) * Adds base for updating Microsoft.DocumentDB from version preview/2022-11-15-preview to version 2023-03-01-preview * Updates readme * Updates API version in new specs and examples * Apply 2023-03-01-preview addditions * Apply mongocluster additions * Minor changes. * Fixes fo go and Lintdiff/descriptions. * Add back canceled provisioningState --- common/config/rush/pnpm-lock.yaml | 51 +- sdk/cosmosdb/arm-cosmosdb/CHANGELOG.md | 260 + sdk/cosmosdb/arm-cosmosdb/README.md | 2 +- sdk/cosmosdb/arm-cosmosdb/_meta.json | 6 +- sdk/cosmosdb/arm-cosmosdb/package.json | 16 +- .../arm-cosmosdb/review/arm-cosmosdb.api.md | 1143 +++- .../src/cosmosDBManagementClient.ts | 16 +- sdk/cosmosdb/arm-cosmosdb/src/models/index.ts | 1851 ++++++- .../arm-cosmosdb/src/models/mappers.ts | 4727 ++++++++++++----- .../arm-cosmosdb/src/models/parameters.ts | 190 +- .../src/operations/cassandraClusters.ts | 148 + .../src/operations/cassandraResources.ts | 1279 ++++- .../src/operations/dataTransferJobs.ts | 427 ++ .../src/operations/graphResources.ts | 424 ++ .../src/operations/gremlinResources.ts | 32 +- .../arm-cosmosdb/src/operations/index.ts | 3 + .../src/operations/mongoClusters.ts | 1308 +++++ .../src/operations/mongoDBResources.ts | 771 +++ .../operations/privateEndpointConnections.ts | 2 +- .../src/operations/sqlResources.ts | 1013 +++- .../operationsInterfaces/cassandraClusters.ts | 28 + .../cassandraResources.ts | 244 +- .../operationsInterfaces/dataTransferJobs.ts | 107 + .../operationsInterfaces/graphResources.ts | 110 + .../src/operationsInterfaces/index.ts | 3 + .../src/operationsInterfaces/mongoClusters.ts | 275 + .../operationsInterfaces/mongoDBResources.ts | 222 + .../src/operationsInterfaces/sqlResources.ts | 296 +- sdk/cosmosdb/arm-cosmosdb/test/sampleTest.ts | 43 + sdk/cosmosdb/arm-cosmosdb/tsconfig.json | 10 +- 30 files changed, 12970 insertions(+), 2037 deletions(-) create mode 100644 sdk/cosmosdb/arm-cosmosdb/src/operations/dataTransferJobs.ts create mode 100644 sdk/cosmosdb/arm-cosmosdb/src/operations/graphResources.ts create mode 100644 sdk/cosmosdb/arm-cosmosdb/src/operations/mongoClusters.ts create mode 100644 sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/dataTransferJobs.ts create mode 100644 sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/graphResources.ts create mode 100644 sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoClusters.ts create mode 100644 sdk/cosmosdb/arm-cosmosdb/test/sampleTest.ts diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index e60341f62c497..66d3a7891410f 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -704,6 +704,19 @@ packages: - supports-color dev: false + /@azure-tools/test-recorder/2.0.0: + resolution: {integrity: sha512-OTic1OwOk25B8ecdMQ4wgyDaUNMMw0qzO4/0sy9ScPXWLmUFGMlkS0+BOQ2K9t8WCksM/wU+NjUZo/5T4zaG6A==} + engines: {node: '>=12.0.0'} + dependencies: + '@azure/core-auth': 1.4.0 + '@azure/core-http': 2.3.1 + '@azure/core-rest-pipeline': 1.10.2 + '@azure/core-util': 1.2.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: false + /@azure/abort-controller/1.1.0: resolution: {integrity: sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw==} engines: {node: '>=12.0.0'} @@ -757,6 +770,21 @@ packages: - supports-color dev: false + /@azure/arm-cosmosdb/15.3.0: + resolution: {integrity: sha512-XT0tgDyrmEw7rO+SuTrUQkF9yqmp/TCEacnZJQM2xydu4chB49ES3KCtBBWdtdi1fYI1AE7z6XrEIvgL3ngVzg==} + engines: {node: '>=14.0.0'} + dependencies: + '@azure/abort-controller': 1.1.0 + '@azure/core-auth': 1.4.0 + '@azure/core-client': 1.7.2 + '@azure/core-lro': 2.5.1 + '@azure/core-paging': 1.5.0 + '@azure/core-rest-pipeline': 1.10.2 + tslib: 2.5.0 + transitivePeerDependencies: + - supports-color + dev: false + /@azure/arm-network/26.0.0: resolution: {integrity: sha512-Hp0Q4ZzChs8C0DUdGZOChWKMrhzZ53V0Q681puREZ9S1E6o2yWM0Vb+cYuWoyPOylwuzP2fjNjJZGtB7WuFd3w==} engines: {node: '>=12.0.0'} @@ -3871,7 +3899,7 @@ packages: dependencies: semver: 7.3.8 shelljs: 0.8.5 - typescript: 5.1.0-dev.20230313 + typescript: 5.1.0-dev.20230315 dev: false /ecdsa-sig-formatter/1.0.11: @@ -8727,8 +8755,8 @@ packages: hasBin: true dev: false - /typescript/5.1.0-dev.20230313: - resolution: {integrity: sha512-vveGdy/uNUyKJ/JbXsJTSP8Z8gfCRsiXdHBMbvJ2XzuzHsDQC3mR+ZPvIGrXoTWMn5XNbyJ8ufYuqGiCGTi6tg==} + /typescript/5.1.0-dev.20230315: + resolution: {integrity: sha512-lHUjpyLQRGRdkxHROCqNyAeoq8ytzxFqAY2nCOTiI/sSygZsAsTyUS521ldoNcjym/DiR+rmaNG6mpt29enm9g==} engines: {node: '>=12.20'} hasBin: true dev: false @@ -10627,10 +10655,11 @@ packages: dev: false file:projects/arm-chaos.tgz: - resolution: {integrity: sha512-njjDx1kDxnztWCBBmTJ40+TWFRwcSBFvCRJTT+08lUKWLWx+GJyOb8osMNB8/OTQXXk+5hDIR7v6lpqoeT55Jg==, tarball: file:projects/arm-chaos.tgz} + resolution: {integrity: sha512-d6DfG5mp95Xc6jKCEfY+qURWZEYg3mbM4Fe2OKS+K5tC1PtU4oMaPRamLDW/GXNeC0M8UANqJ7YHDTB5zGxcFA==, tarball: file:projects/arm-chaos.tgz} name: '@rush-temp/arm-chaos' version: 0.0.0 dependencies: + '@azure/arm-cosmosdb': 15.3.0 '@azure/identity': 2.1.0 '@microsoft/api-extractor': 7.34.4_@types+node@14.18.37 '@rollup/plugin-commonjs': 24.0.1_rollup@2.79.1 @@ -11128,10 +11157,11 @@ packages: dev: false file:projects/arm-cosmosdb.tgz: - resolution: {integrity: sha512-/cXAXd6ZDWA/sgZVwJSyEG2UdHr2R6yonrsI/ffxgZ5hE0yajoVkjKxvkKjcnoykCP107tSxF20gdoCtqJ6/zQ==, tarball: file:projects/arm-cosmosdb.tgz} + resolution: {integrity: sha512-RPcRcW/G/geH2Zzkf8Zn+oFyNEWz/dCuX4owTFg51ZYFL7Ybs5ZhDV3jRW28MP7Qiix4/nuV76KNzVhs2xmmwQ==, tarball: file:projects/arm-cosmosdb.tgz} name: '@rush-temp/arm-cosmosdb' version: 0.0.0 dependencies: + '@azure-tools/test-recorder': 2.0.0 '@azure/identity': 2.1.0 '@microsoft/api-extractor': 7.34.4_@types+node@14.18.37 '@rollup/plugin-commonjs': 24.0.1_rollup@2.79.1 @@ -11152,6 +11182,7 @@ packages: typescript: 4.8.4 uglify-js: 3.17.4 transitivePeerDependencies: + - encoding - supports-color dev: false @@ -13309,7 +13340,7 @@ packages: dev: false file:projects/arm-network-1.tgz: - resolution: {integrity: sha512-h69TQy3Jv3Sq4nOUUoQ1PqUMQ5vPWhMxTAhPG2D0ci1lXMpmDgg0eLov6oGX5/Q1uzaa4yXyc4OToGLF7p3BBA==, tarball: file:projects/arm-network-1.tgz} + resolution: {integrity: sha512-HP4VbHNAjhBlsVcszfjybzzFd7MlgIBwbEnYhkPOk+uNySUPuU1whPAIPsgcbAkwf90ulTjitwCRSmBdf91Zhg==, tarball: file:projects/arm-network-1.tgz} name: '@rush-temp/arm-network-1' version: 0.0.0 dependencies: @@ -13334,7 +13365,6 @@ packages: typescript: 4.8.4 uglify-js: 3.17.4 transitivePeerDependencies: - - encoding - supports-color dev: false @@ -15296,7 +15326,7 @@ packages: dev: false file:projects/arm-webpubsub.tgz: - resolution: {integrity: sha512-EjFMfROIleuK8B/I2xiUMpXg9aBaxGkT+2uR4P51hS5oe+lmBVqnCJ8dlkGKbauBdwBqjt6jxeouvPWmCHBbjA==, tarball: file:projects/arm-webpubsub.tgz} + resolution: {integrity: sha512-p2yKPQQABjap5rsdwWPO/pDmLhwsEZfsd5KjA7TU/rb+kwJu3OG6ZCfBsJj6OIT5+0ZuVabpLVOQgZCJzTVxRw==, tarball: file:projects/arm-webpubsub.tgz} name: '@rush-temp/arm-webpubsub' version: 0.0.0 dependencies: @@ -15321,7 +15351,6 @@ packages: typescript: 4.8.4 uglify-js: 3.17.4 transitivePeerDependencies: - - encoding - supports-color dev: false @@ -16861,7 +16890,7 @@ packages: dev: false file:projects/event-hubs.tgz: - resolution: {integrity: sha512-19yBgs9YYynzl6fcHlrWVHrqz+5BQlzWhXk8R3s70JGbf7ZvQRCznNpM6n7MHUZU/n1OnqPB4Bw0tt+ADqxtQg==, tarball: file:projects/event-hubs.tgz} + resolution: {integrity: sha512-5TzCX3EbyrKQTJlA9IvX6pwajWdeU/5wOtqYoq6r/1DGoI87ffCek+ws57UkSExMwKw0gg6E1wDG0uFUMpzcPQ==, tarball: file:projects/event-hubs.tgz} name: '@rush-temp/event-hubs' version: 0.0.0 dependencies: @@ -19006,7 +19035,7 @@ packages: dev: false file:projects/service-bus.tgz: - resolution: {integrity: sha512-capTfQmTOxtimRb9xqcMuZE6wAVbDx1EK+GllnqYjLm3+sMfyB71R9JLbhN0ncmTeweJVv5/RnKxTbAsJUNSEw==, tarball: file:projects/service-bus.tgz} + resolution: {integrity: sha512-WsequaezjWAVEEDEhVWOq+MwN7tcmgtiCPZS4o7B4HuT2u9JW90z0k2uJTkQzhwozGU/G1GFai8EJw5xIAoxZA==, tarball: file:projects/service-bus.tgz} name: '@rush-temp/service-bus' version: 0.0.0 dependencies: diff --git a/sdk/cosmosdb/arm-cosmosdb/CHANGELOG.md b/sdk/cosmosdb/arm-cosmosdb/CHANGELOG.md index 65a207e235321..f187619aed04e 100644 --- a/sdk/cosmosdb/arm-cosmosdb/CHANGELOG.md +++ b/sdk/cosmosdb/arm-cosmosdb/CHANGELOG.md @@ -1,5 +1,265 @@ # Release History +## 15.4.0-beta.1 (2023-03-15) + +**Features** + + - Added operation group DataTransferJobs + - Added operation group GraphResources + - Added operation group MongoClusters + - Added operation CassandraClusters.getBackup + - Added operation CassandraClusters.listBackups + - Added operation CassandraResources.beginCreateUpdateCassandraView + - Added operation CassandraResources.beginCreateUpdateCassandraViewAndWait + - Added operation CassandraResources.beginDeleteCassandraView + - Added operation CassandraResources.beginDeleteCassandraViewAndWait + - Added operation CassandraResources.beginMigrateCassandraViewToAutoscale + - Added operation CassandraResources.beginMigrateCassandraViewToAutoscaleAndWait + - Added operation CassandraResources.beginMigrateCassandraViewToManualThroughput + - Added operation CassandraResources.beginMigrateCassandraViewToManualThroughputAndWait + - Added operation CassandraResources.beginUpdateCassandraViewThroughput + - Added operation CassandraResources.beginUpdateCassandraViewThroughputAndWait + - Added operation CassandraResources.getCassandraView + - Added operation CassandraResources.getCassandraViewThroughput + - Added operation CassandraResources.listCassandraViews + - Added operation MongoDBResources.beginListMongoDBCollectionPartitionMerge + - Added operation MongoDBResources.beginListMongoDBCollectionPartitionMergeAndWait + - Added operation MongoDBResources.beginMongoDBContainerRedistributeThroughput + - Added operation MongoDBResources.beginMongoDBContainerRedistributeThroughputAndWait + - Added operation MongoDBResources.beginMongoDBContainerRetrieveThroughputDistribution + - Added operation MongoDBResources.beginMongoDBContainerRetrieveThroughputDistributionAndWait + - Added operation MongoDBResources.beginMongoDBDatabaseRedistributeThroughput + - Added operation MongoDBResources.beginMongoDBDatabaseRedistributeThroughputAndWait + - Added operation MongoDBResources.beginMongoDBDatabaseRetrieveThroughputDistribution + - Added operation MongoDBResources.beginMongoDBDatabaseRetrieveThroughputDistributionAndWait + - Added operation SqlResources.beginListSqlContainerPartitionMerge + - Added operation SqlResources.beginListSqlContainerPartitionMergeAndWait + - Added operation SqlResources.beginSqlContainerRedistributeThroughput + - Added operation SqlResources.beginSqlContainerRedistributeThroughputAndWait + - Added operation SqlResources.beginSqlContainerRetrieveThroughputDistribution + - Added operation SqlResources.beginSqlContainerRetrieveThroughputDistributionAndWait + - Added operation SqlResources.beginSqlDatabaseRedistributeThroughput + - Added operation SqlResources.beginSqlDatabaseRedistributeThroughputAndWait + - Added operation SqlResources.beginSqlDatabaseRetrieveThroughputDistribution + - Added operation SqlResources.beginSqlDatabaseRetrieveThroughputDistributionAndWait + - Added Interface AuthenticationMethodLdapProperties + - Added Interface AzureBlobDataTransferDataSourceSink + - Added Interface BackupResource + - Added Interface BackupResourceProperties + - Added Interface CassandraClustersGetBackupOptionalParams + - Added Interface CassandraClustersListBackupsOptionalParams + - Added Interface CassandraResourcesCreateUpdateCassandraViewHeaders + - Added Interface CassandraResourcesCreateUpdateCassandraViewOptionalParams + - Added Interface CassandraResourcesDeleteCassandraViewHeaders + - Added Interface CassandraResourcesDeleteCassandraViewOptionalParams + - Added Interface CassandraResourcesGetCassandraViewOptionalParams + - Added Interface CassandraResourcesGetCassandraViewThroughputOptionalParams + - Added Interface CassandraResourcesListCassandraViewsOptionalParams + - Added Interface CassandraResourcesMigrateCassandraViewToAutoscaleHeaders + - Added Interface CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams + - Added Interface CassandraResourcesMigrateCassandraViewToManualThroughputHeaders + - Added Interface CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams + - Added Interface CassandraResourcesUpdateCassandraViewThroughputHeaders + - Added Interface CassandraResourcesUpdateCassandraViewThroughputOptionalParams + - Added Interface CassandraViewCreateUpdateParameters + - Added Interface CassandraViewGetPropertiesOptions + - Added Interface CassandraViewGetPropertiesResource + - Added Interface CassandraViewGetResults + - Added Interface CassandraViewListResult + - Added Interface CassandraViewResource + - Added Interface CheckNameAvailabilityRequest + - Added Interface CheckNameAvailabilityResponse + - Added Interface ConnectionString + - Added Interface ContinuousModeProperties + - Added Interface CosmosCassandraDataTransferDataSourceSink + - Added Interface CosmosSqlDataTransferDataSourceSink + - Added Interface CreateJobRequest + - Added Interface DataTransferDataSourceSink + - Added Interface DataTransferJobFeedResults + - Added Interface DataTransferJobGetResults + - Added Interface DataTransferJobProperties + - Added Interface DataTransferJobsCancelOptionalParams + - Added Interface DataTransferJobsCreateOptionalParams + - Added Interface DataTransferJobsGetOptionalParams + - Added Interface DataTransferJobsListByDatabaseAccountNextOptionalParams + - Added Interface DataTransferJobsListByDatabaseAccountOptionalParams + - Added Interface DataTransferJobsPauseOptionalParams + - Added Interface DataTransferJobsResumeOptionalParams + - Added Interface DiagnosticLogSettings + - Added Interface ErrorAdditionalInfo + - Added Interface ErrorDetail + - Added Interface ErrorResponseAutoGenerated + - Added Interface FirewallRule + - Added Interface FirewallRuleListResult + - Added Interface GraphResource + - Added Interface GraphResourceCreateUpdateParameters + - Added Interface GraphResourceGetPropertiesOptions + - Added Interface GraphResourceGetPropertiesResource + - Added Interface GraphResourceGetResults + - Added Interface GraphResourcesCreateUpdateGraphHeaders + - Added Interface GraphResourcesCreateUpdateGraphOptionalParams + - Added Interface GraphResourcesDeleteGraphResourceHeaders + - Added Interface GraphResourcesDeleteGraphResourceOptionalParams + - Added Interface GraphResourcesGetGraphOptionalParams + - Added Interface GraphResourcesListGraphsOptionalParams + - Added Interface GraphResourcesListResult + - Added Interface ListBackups + - Added Interface ListConnectionStringsResult + - Added Interface MergeParameters + - Added Interface MongoCluster + - Added Interface MongoClusterListResult + - Added Interface MongoClusterRestoreParameters + - Added Interface MongoClustersCheckNameAvailabilityOptionalParams + - Added Interface MongoClustersCreateOrUpdateFirewallRuleOptionalParams + - Added Interface MongoClustersCreateOrUpdateOptionalParams + - Added Interface MongoClustersDeleteFirewallRuleHeaders + - Added Interface MongoClustersDeleteFirewallRuleOptionalParams + - Added Interface MongoClustersDeleteHeaders + - Added Interface MongoClustersDeleteOptionalParams + - Added Interface MongoClustersGetFirewallRuleOptionalParams + - Added Interface MongoClustersGetOptionalParams + - Added Interface MongoClustersListByResourceGroupNextOptionalParams + - Added Interface MongoClustersListByResourceGroupOptionalParams + - Added Interface MongoClustersListConnectionStringsOptionalParams + - Added Interface MongoClustersListFirewallRulesNextOptionalParams + - Added Interface MongoClustersListFirewallRulesOptionalParams + - Added Interface MongoClustersListNextOptionalParams + - Added Interface MongoClustersListOptionalParams + - Added Interface MongoClustersUpdateHeaders + - Added Interface MongoClustersUpdateOptionalParams + - Added Interface MongoClusterUpdate + - Added Interface MongoDBResourcesListMongoDBCollectionPartitionMergeHeaders + - Added Interface MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams + - Added Interface MongoDBResourcesMongoDBContainerRedistributeThroughputHeaders + - Added Interface MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams + - Added Interface MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionHeaders + - Added Interface MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams + - Added Interface MongoDBResourcesMongoDBDatabaseRedistributeThroughputHeaders + - Added Interface MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams + - Added Interface MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionHeaders + - Added Interface MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams + - Added Interface NodeGroupProperties + - Added Interface NodeGroupSpec + - Added Interface PhysicalPartitionId + - Added Interface PhysicalPartitionStorageInfo + - Added Interface PhysicalPartitionStorageInfoCollection + - Added Interface PhysicalPartitionThroughputInfoProperties + - Added Interface PhysicalPartitionThroughputInfoResource + - Added Interface PhysicalPartitionThroughputInfoResult + - Added Interface PhysicalPartitionThroughputInfoResultPropertiesResource + - Added Interface ProxyResourceAutoGenerated + - Added Interface RedistributeThroughputParameters + - Added Interface RedistributeThroughputPropertiesResource + - Added Interface ResourceAutoGenerated + - Added Interface ResourceRestoreParameters + - Added Interface RestoreParametersBase + - Added Interface RetrieveThroughputParameters + - Added Interface RetrieveThroughputPropertiesResource + - Added Interface SqlResourcesListSqlContainerPartitionMergeHeaders + - Added Interface SqlResourcesListSqlContainerPartitionMergeOptionalParams + - Added Interface SqlResourcesSqlContainerRedistributeThroughputHeaders + - Added Interface SqlResourcesSqlContainerRedistributeThroughputOptionalParams + - Added Interface SqlResourcesSqlContainerRetrieveThroughputDistributionHeaders + - Added Interface SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams + - Added Interface SqlResourcesSqlDatabaseRedistributeThroughputHeaders + - Added Interface SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams + - Added Interface SqlResourcesSqlDatabaseRetrieveThroughputDistributionHeaders + - Added Interface SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams + - Added Interface TrackedResource + - Added Type Alias CassandraClustersGetBackupResponse + - Added Type Alias CassandraClustersListBackupsResponse + - Added Type Alias CassandraResourcesCreateUpdateCassandraViewResponse + - Added Type Alias CassandraResourcesGetCassandraViewResponse + - Added Type Alias CassandraResourcesGetCassandraViewThroughputResponse + - Added Type Alias CassandraResourcesListCassandraViewsResponse + - Added Type Alias CassandraResourcesMigrateCassandraViewToAutoscaleResponse + - Added Type Alias CassandraResourcesMigrateCassandraViewToManualThroughputResponse + - Added Type Alias CassandraResourcesUpdateCassandraViewThroughputResponse + - Added Type Alias CheckNameAvailabilityReason + - Added Type Alias ContinuousTier + - Added Type Alias DataTransferComponent + - Added Type Alias DataTransferDataSourceSinkUnion + - Added Type Alias DataTransferJobsCancelResponse + - Added Type Alias DataTransferJobsCreateResponse + - Added Type Alias DataTransferJobsGetResponse + - Added Type Alias DataTransferJobsListByDatabaseAccountNextResponse + - Added Type Alias DataTransferJobsListByDatabaseAccountResponse + - Added Type Alias DataTransferJobsPauseResponse + - Added Type Alias DataTransferJobsResumeResponse + - Added Type Alias EnableFullTextQuery + - Added Type Alias GraphResourcesCreateUpdateGraphResponse + - Added Type Alias GraphResourcesGetGraphResponse + - Added Type Alias GraphResourcesListGraphsResponse + - Added Type Alias MongoClustersCheckNameAvailabilityResponse + - Added Type Alias MongoClustersCreateOrUpdateFirewallRuleResponse + - Added Type Alias MongoClustersCreateOrUpdateResponse + - Added Type Alias MongoClustersDeleteFirewallRuleResponse + - Added Type Alias MongoClustersDeleteResponse + - Added Type Alias MongoClustersGetFirewallRuleResponse + - Added Type Alias MongoClustersGetResponse + - Added Type Alias MongoClustersListByResourceGroupNextResponse + - Added Type Alias MongoClustersListByResourceGroupResponse + - Added Type Alias MongoClustersListConnectionStringsResponse + - Added Type Alias MongoClustersListFirewallRulesNextResponse + - Added Type Alias MongoClustersListFirewallRulesResponse + - Added Type Alias MongoClustersListNextResponse + - Added Type Alias MongoClustersListResponse + - Added Type Alias MongoClusterStatus + - Added Type Alias MongoClustersUpdateResponse + - Added Type Alias MongoDBResourcesListMongoDBCollectionPartitionMergeResponse + - Added Type Alias MongoDBResourcesMongoDBContainerRedistributeThroughputResponse + - Added Type Alias MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + - Added Type Alias MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse + - Added Type Alias MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + - Added Type Alias NodeKind + - Added Type Alias ProvisioningState + - Added Type Alias SqlResourcesListSqlContainerPartitionMergeResponse + - Added Type Alias SqlResourcesSqlContainerRedistributeThroughputResponse + - Added Type Alias SqlResourcesSqlContainerRetrieveThroughputDistributionResponse + - Added Type Alias SqlResourcesSqlDatabaseRedistributeThroughputResponse + - Added Type Alias SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse + - Added Type Alias ThroughputPolicyType + - Interface ARMResourceProperties has a new optional parameter identity + - Interface ContinuousModeBackupPolicy has a new optional parameter continuousModeProperties + - Interface DatabaseAccountCreateUpdateParameters has a new optional parameter diagnosticLogSettings + - Interface DatabaseAccountCreateUpdateParameters has a new optional parameter enableBurstCapacity + - Interface DatabaseAccountCreateUpdateParameters has a new optional parameter enableMaterializedViews + - Interface DatabaseAccountGetResults has a new optional parameter diagnosticLogSettings + - Interface DatabaseAccountGetResults has a new optional parameter enableBurstCapacity + - Interface DatabaseAccountGetResults has a new optional parameter enableMaterializedViews + - Interface DatabaseAccountUpdateParameters has a new optional parameter diagnosticLogSettings + - Interface DatabaseAccountUpdateParameters has a new optional parameter enableBurstCapacity + - Interface DatabaseAccountUpdateParameters has a new optional parameter enableMaterializedViews + - Interface DataCenterResourceProperties has a new optional parameter authenticationMethodLdapProperties + - Interface GremlinDatabaseResource has a new optional parameter createMode + - Interface GremlinDatabaseResource has a new optional parameter restoreParameters + - Interface GremlinGraphResource has a new optional parameter createMode + - Interface GremlinGraphResource has a new optional parameter restoreParameters + - Interface LocationProperties has a new optional parameter status + - Interface MongoDBCollectionResource has a new optional parameter createMode + - Interface MongoDBCollectionResource has a new optional parameter restoreParameters + - Interface MongoDBDatabaseResource has a new optional parameter createMode + - Interface MongoDBDatabaseResource has a new optional parameter restoreParameters + - Interface RestorableDatabaseAccountGetResult has a new optional parameter oldestRestorableTime + - Interface RestoreParameters has a new optional parameter sourceBackupLocation + - Interface SqlContainerResource has a new optional parameter createMode + - Interface SqlContainerResource has a new optional parameter restoreParameters + - Interface SqlDatabaseResource has a new optional parameter createMode + - Interface SqlDatabaseResource has a new optional parameter restoreParameters + - Interface TableResource has a new optional parameter createMode + - Interface TableResource has a new optional parameter restoreParameters + - Added Enum KnownCheckNameAvailabilityReason + - Added Enum KnownContinuousTier + - Added Enum KnownDataTransferComponent + - Added Enum KnownMongoClusterStatus + - Added Enum KnownNodeKind + - Added Enum KnownProvisioningState + - Added Enum KnownThroughputPolicyType + - Enum KnownAuthenticationMethod has a new value Ldap + - Enum KnownCreateMode has a new value PointInTimeRestore + - Enum KnownOperationType has a new value Recreate + + ## 15.3.0 (2023-02-10) **Features** diff --git a/sdk/cosmosdb/arm-cosmosdb/README.md b/sdk/cosmosdb/arm-cosmosdb/README.md index 028cf521dcd2e..0de6091bc8088 100644 --- a/sdk/cosmosdb/arm-cosmosdb/README.md +++ b/sdk/cosmosdb/arm-cosmosdb/README.md @@ -6,7 +6,7 @@ Azure Cosmos DB Database Service Resource Provider REST API [Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cosmosdb/arm-cosmosdb) | [Package (NPM)](https://www.npmjs.com/package/@azure/arm-cosmosdb) | -[API reference documentation](https://docs.microsoft.com/javascript/api/@azure/arm-cosmosdb) | +[API reference documentation](https://docs.microsoft.com/javascript/api/@azure/arm-cosmosdb?view=azure-node-preview) | [Samples](https://github.com/Azure-Samples/azure-samples-js-management) ## Getting started diff --git a/sdk/cosmosdb/arm-cosmosdb/_meta.json b/sdk/cosmosdb/arm-cosmosdb/_meta.json index e03c407643b7b..e4f2355a54194 100644 --- a/sdk/cosmosdb/arm-cosmosdb/_meta.json +++ b/sdk/cosmosdb/arm-cosmosdb/_meta.json @@ -1,8 +1,8 @@ { - "commit": "0f11f8a9062efd957f6c343b53b8850522f8dde7", + "commit": "ee157d6bbf6e4c4fdc8a47b380e00ddd56a0e852", "readme": "specification/cosmos-db/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=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\cosmos-db\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-rc.8 --generate-sample=true", + "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/cosmos-db/resource-manager/readme.md --use=@autorest/typescript@6.0.0-rc.9", "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", "release_tool": "@azure-tools/js-sdk-release-tools@2.6.2", - "use": "@autorest/typescript@6.0.0-rc.8" + "use": "@autorest/typescript@6.0.0-rc.9" } \ No newline at end of file diff --git a/sdk/cosmosdb/arm-cosmosdb/package.json b/sdk/cosmosdb/arm-cosmosdb/package.json index d8049b2a36808..03e6bb2a9a627 100644 --- a/sdk/cosmosdb/arm-cosmosdb/package.json +++ b/sdk/cosmosdb/arm-cosmosdb/package.json @@ -3,7 +3,7 @@ "sdk-type": "mgmt", "author": "Microsoft Corporation", "description": "A generated SDK for CosmosDBManagementClient.", - "version": "15.3.0", + "version": "15.4.0-beta.1", "engines": { "node": ">=14.0.0" }, @@ -41,7 +41,7 @@ "rimraf": "^3.0.0", "dotenv": "^16.0.0", "@azure/identity": "^2.0.1", - "@azure-tools/test-recorder": "^3.0.0", + "@azure-tools/test-recorder": "^2.0.0", "@azure-tools/test-credential": "^1.0.0", "mocha": "^7.1.1", "@types/chai": "^4.2.8", @@ -111,13 +111,5 @@ ] }, "autoPublish": true, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cosmosdb/arm-cosmosdb", - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-cosmosdb?view=azure-node-preview" - } -} + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/cosmosdb/arm-cosmosdb" +} \ No newline at end of file diff --git a/sdk/cosmosdb/arm-cosmosdb/review/arm-cosmosdb.api.md b/sdk/cosmosdb/arm-cosmosdb/review/arm-cosmosdb.api.md index 953437fec513c..31493a3736b2a 100644 --- a/sdk/cosmosdb/arm-cosmosdb/review/arm-cosmosdb.api.md +++ b/sdk/cosmosdb/arm-cosmosdb/review/arm-cosmosdb.api.md @@ -41,6 +41,7 @@ export interface ARMProxyResource { // @public export interface ARMResourceProperties { readonly id?: string; + identity?: ManagedServiceIdentity; location?: string; readonly name?: string; tags?: { @@ -52,6 +53,18 @@ export interface ARMResourceProperties { // @public export type AuthenticationMethod = string; +// @public +export interface AuthenticationMethodLdapProperties { + searchBaseDistinguishedName?: string; + searchFilterTemplate?: string; + // (undocumented) + serverCertificates?: Certificate[]; + serverHostname?: string; + serverPort?: number; + serviceUserDistinguishedName?: string; + serviceUserPassword?: string; +} + // @public (undocumented) export interface AutoscaleSettings { maxThroughput?: number; @@ -69,6 +82,15 @@ export interface AutoUpgradePolicyResource { throughputPolicy?: ThroughputPolicyResource; } +// @public +export interface AzureBlobDataTransferDataSourceSink extends DataTransferDataSourceSink { + component: "AzureBlobStorage"; + // (undocumented) + containerName: string; + // (undocumented) + endpointUrl?: string; +} + // @public export interface BackupInformation { readonly continuousBackupInformation?: ContinuousBackupInformation; @@ -96,6 +118,17 @@ export type BackupPolicyType = string; // @public (undocumented) export type BackupPolicyUnion = BackupPolicy | PeriodicModeBackupPolicy | ContinuousModeBackupPolicy; +// @public +export interface BackupResource extends ARMProxyResource { + // (undocumented) + properties?: BackupResourceProperties; +} + +// @public (undocumented) +export interface BackupResourceProperties { + timestamp?: Date; +} + // @public export type BackupStorageRedundancy = string; @@ -142,6 +175,8 @@ export interface CassandraClusters { beginUpdate(resourceGroupName: string, clusterName: string, body: ClusterResource, options?: CassandraClustersUpdateOptionalParams): Promise, CassandraClustersUpdateResponse>>; beginUpdateAndWait(resourceGroupName: string, clusterName: string, body: ClusterResource, options?: CassandraClustersUpdateOptionalParams): Promise; get(resourceGroupName: string, clusterName: string, options?: CassandraClustersGetOptionalParams): Promise; + getBackup(resourceGroupName: string, clusterName: string, backupId: string, options?: CassandraClustersGetBackupOptionalParams): Promise; + listBackups(resourceGroupName: string, clusterName: string, options?: CassandraClustersListBackupsOptionalParams): PagedAsyncIterableIterator; listByResourceGroup(resourceGroupName: string, options?: CassandraClustersListByResourceGroupOptionalParams): PagedAsyncIterableIterator; listBySubscription(options?: CassandraClustersListBySubscriptionOptionalParams): PagedAsyncIterableIterator; status(resourceGroupName: string, clusterName: string, options?: CassandraClustersStatusOptionalParams): Promise; @@ -168,6 +203,13 @@ export interface CassandraClustersDeleteOptionalParams extends coreClient.Operat updateIntervalInMs?: number; } +// @public +export interface CassandraClustersGetBackupOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type CassandraClustersGetBackupResponse = BackupResource; + // @public export interface CassandraClustersGetOptionalParams extends coreClient.OperationOptions { } @@ -184,6 +226,13 @@ export interface CassandraClustersInvokeCommandOptionalParams extends coreClient // @public export type CassandraClustersInvokeCommandResponse = CommandOutput; +// @public +export interface CassandraClustersListBackupsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type CassandraClustersListBackupsResponse = ListBackups; + // @public export interface CassandraClustersListByResourceGroupOptionalParams extends coreClient.OperationOptions { } @@ -313,10 +362,14 @@ export interface CassandraResources { beginCreateUpdateCassandraKeyspaceAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, createUpdateCassandraKeyspaceParameters: CassandraKeyspaceCreateUpdateParameters, options?: CassandraResourcesCreateUpdateCassandraKeyspaceOptionalParams): Promise; beginCreateUpdateCassandraTable(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, createUpdateCassandraTableParameters: CassandraTableCreateUpdateParameters, options?: CassandraResourcesCreateUpdateCassandraTableOptionalParams): Promise, CassandraResourcesCreateUpdateCassandraTableResponse>>; beginCreateUpdateCassandraTableAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, createUpdateCassandraTableParameters: CassandraTableCreateUpdateParameters, options?: CassandraResourcesCreateUpdateCassandraTableOptionalParams): Promise; + beginCreateUpdateCassandraView(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, createUpdateCassandraViewParameters: CassandraViewCreateUpdateParameters, options?: CassandraResourcesCreateUpdateCassandraViewOptionalParams): Promise, CassandraResourcesCreateUpdateCassandraViewResponse>>; + beginCreateUpdateCassandraViewAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, createUpdateCassandraViewParameters: CassandraViewCreateUpdateParameters, options?: CassandraResourcesCreateUpdateCassandraViewOptionalParams): Promise; beginDeleteCassandraKeyspace(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesDeleteCassandraKeyspaceOptionalParams): Promise, CassandraResourcesDeleteCassandraKeyspaceResponse>>; beginDeleteCassandraKeyspaceAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesDeleteCassandraKeyspaceOptionalParams): Promise; beginDeleteCassandraTable(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, options?: CassandraResourcesDeleteCassandraTableOptionalParams): Promise, CassandraResourcesDeleteCassandraTableResponse>>; beginDeleteCassandraTableAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, options?: CassandraResourcesDeleteCassandraTableOptionalParams): Promise; + beginDeleteCassandraView(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesDeleteCassandraViewOptionalParams): Promise, void>>; + beginDeleteCassandraViewAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesDeleteCassandraViewOptionalParams): Promise; beginMigrateCassandraKeyspaceToAutoscale(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesMigrateCassandraKeyspaceToAutoscaleOptionalParams): Promise, CassandraResourcesMigrateCassandraKeyspaceToAutoscaleResponse>>; beginMigrateCassandraKeyspaceToAutoscaleAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesMigrateCassandraKeyspaceToAutoscaleOptionalParams): Promise; beginMigrateCassandraKeyspaceToManualThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesMigrateCassandraKeyspaceToManualThroughputOptionalParams): Promise, CassandraResourcesMigrateCassandraKeyspaceToManualThroughputResponse>>; @@ -325,16 +378,25 @@ export interface CassandraResources { beginMigrateCassandraTableToAutoscaleAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, options?: CassandraResourcesMigrateCassandraTableToAutoscaleOptionalParams): Promise; beginMigrateCassandraTableToManualThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, options?: CassandraResourcesMigrateCassandraTableToManualThroughputOptionalParams): Promise, CassandraResourcesMigrateCassandraTableToManualThroughputResponse>>; beginMigrateCassandraTableToManualThroughputAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, options?: CassandraResourcesMigrateCassandraTableToManualThroughputOptionalParams): Promise; + beginMigrateCassandraViewToAutoscale(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams): Promise, CassandraResourcesMigrateCassandraViewToAutoscaleResponse>>; + beginMigrateCassandraViewToAutoscaleAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams): Promise; + beginMigrateCassandraViewToManualThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams): Promise, CassandraResourcesMigrateCassandraViewToManualThroughputResponse>>; + beginMigrateCassandraViewToManualThroughputAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams): Promise; beginUpdateCassandraKeyspaceThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: CassandraResourcesUpdateCassandraKeyspaceThroughputOptionalParams): Promise, CassandraResourcesUpdateCassandraKeyspaceThroughputResponse>>; beginUpdateCassandraKeyspaceThroughputAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: CassandraResourcesUpdateCassandraKeyspaceThroughputOptionalParams): Promise; beginUpdateCassandraTableThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: CassandraResourcesUpdateCassandraTableThroughputOptionalParams): Promise, CassandraResourcesUpdateCassandraTableThroughputResponse>>; beginUpdateCassandraTableThroughputAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: CassandraResourcesUpdateCassandraTableThroughputOptionalParams): Promise; + beginUpdateCassandraViewThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: CassandraResourcesUpdateCassandraViewThroughputOptionalParams): Promise, CassandraResourcesUpdateCassandraViewThroughputResponse>>; + beginUpdateCassandraViewThroughputAndWait(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: CassandraResourcesUpdateCassandraViewThroughputOptionalParams): Promise; getCassandraKeyspace(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesGetCassandraKeyspaceOptionalParams): Promise; getCassandraKeyspaceThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesGetCassandraKeyspaceThroughputOptionalParams): Promise; getCassandraTable(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, options?: CassandraResourcesGetCassandraTableOptionalParams): Promise; getCassandraTableThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, tableName: string, options?: CassandraResourcesGetCassandraTableThroughputOptionalParams): Promise; + getCassandraView(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesGetCassandraViewOptionalParams): Promise; + getCassandraViewThroughput(resourceGroupName: string, accountName: string, keyspaceName: string, viewName: string, options?: CassandraResourcesGetCassandraViewThroughputOptionalParams): Promise; listCassandraKeyspaces(resourceGroupName: string, accountName: string, options?: CassandraResourcesListCassandraKeyspacesOptionalParams): PagedAsyncIterableIterator; listCassandraTables(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesListCassandraTablesOptionalParams): PagedAsyncIterableIterator; + listCassandraViews(resourceGroupName: string, accountName: string, keyspaceName: string, options?: CassandraResourcesListCassandraViewsOptionalParams): PagedAsyncIterableIterator; } // @public @@ -367,6 +429,21 @@ export interface CassandraResourcesCreateUpdateCassandraTableOptionalParams exte // @public export type CassandraResourcesCreateUpdateCassandraTableResponse = CassandraTableGetResults; +// @public +export interface CassandraResourcesCreateUpdateCassandraViewHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface CassandraResourcesCreateUpdateCassandraViewOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type CassandraResourcesCreateUpdateCassandraViewResponse = CassandraViewGetResults; + // @public export interface CassandraResourcesDeleteCassandraKeyspaceHeaders { azureAsyncOperation?: string; @@ -397,6 +474,18 @@ export interface CassandraResourcesDeleteCassandraTableOptionalParams extends co // @public export type CassandraResourcesDeleteCassandraTableResponse = CassandraResourcesDeleteCassandraTableHeaders; +// @public +export interface CassandraResourcesDeleteCassandraViewHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface CassandraResourcesDeleteCassandraViewOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + // @public export interface CassandraResourcesGetCassandraKeyspaceOptionalParams extends coreClient.OperationOptions { } @@ -425,6 +514,20 @@ export interface CassandraResourcesGetCassandraTableThroughputOptionalParams ext // @public export type CassandraResourcesGetCassandraTableThroughputResponse = ThroughputSettingsGetResults; +// @public +export interface CassandraResourcesGetCassandraViewOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type CassandraResourcesGetCassandraViewResponse = CassandraViewGetResults; + +// @public +export interface CassandraResourcesGetCassandraViewThroughputOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type CassandraResourcesGetCassandraViewThroughputResponse = ThroughputSettingsGetResults; + // @public export interface CassandraResourcesListCassandraKeyspacesOptionalParams extends coreClient.OperationOptions { } @@ -439,6 +542,13 @@ export interface CassandraResourcesListCassandraTablesOptionalParams extends cor // @public export type CassandraResourcesListCassandraTablesResponse = CassandraTableListResult; +// @public +export interface CassandraResourcesListCassandraViewsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type CassandraResourcesListCassandraViewsResponse = CassandraViewListResult; + // @public export interface CassandraResourcesMigrateCassandraKeyspaceToAutoscaleHeaders { azureAsyncOperation?: string; @@ -499,6 +609,36 @@ export interface CassandraResourcesMigrateCassandraTableToManualThroughputOption // @public export type CassandraResourcesMigrateCassandraTableToManualThroughputResponse = ThroughputSettingsGetResults; +// @public +export interface CassandraResourcesMigrateCassandraViewToAutoscaleHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type CassandraResourcesMigrateCassandraViewToAutoscaleResponse = ThroughputSettingsGetResults; + +// @public +export interface CassandraResourcesMigrateCassandraViewToManualThroughputHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type CassandraResourcesMigrateCassandraViewToManualThroughputResponse = ThroughputSettingsGetResults; + // @public export interface CassandraResourcesUpdateCassandraKeyspaceThroughputHeaders { azureAsyncOperation?: string; @@ -529,6 +669,21 @@ export interface CassandraResourcesUpdateCassandraTableThroughputOptionalParams // @public export type CassandraResourcesUpdateCassandraTableThroughputResponse = ThroughputSettingsGetResults; +// @public +export interface CassandraResourcesUpdateCassandraViewThroughputHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface CassandraResourcesUpdateCassandraViewThroughputOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type CassandraResourcesUpdateCassandraViewThroughputResponse = ThroughputSettingsGetResults; + // @public export interface CassandraSchema { clusterKeys?: ClusterKey[]; @@ -571,11 +726,60 @@ export interface CassandraTableResource { schema?: CassandraSchema; } +// @public +export interface CassandraViewCreateUpdateParameters extends ARMResourceProperties { + options?: CreateUpdateOptions; + resource: CassandraViewResource; +} + +// @public (undocumented) +export interface CassandraViewGetPropertiesOptions extends OptionsResource { +} + +// @public (undocumented) +export interface CassandraViewGetPropertiesResource extends CassandraViewResource, ExtendedResourceProperties { +} + +// @public +export interface CassandraViewGetResults extends ARMResourceProperties { + // (undocumented) + options?: CassandraViewGetPropertiesOptions; + // (undocumented) + resource?: CassandraViewGetPropertiesResource; +} + +// @public +export interface CassandraViewListResult { + readonly value?: CassandraViewGetResults[]; +} + +// @public +export interface CassandraViewResource { + id: string; + viewDefinition: string; +} + // @public (undocumented) export interface Certificate { pem?: string; } +// @public +export type CheckNameAvailabilityReason = string; + +// @public +export interface CheckNameAvailabilityRequest { + name?: string; + type?: string; +} + +// @public +export interface CheckNameAvailabilityResponse { + message?: string; + nameAvailable?: boolean; + reason?: CheckNameAvailabilityReason; +} + // @public (undocumented) export interface ClientEncryptionIncludedPath { clientEncryptionKeyId: string; @@ -810,6 +1014,12 @@ export interface ConnectionError { // @public export type ConnectionState = string; +// @public +export interface ConnectionString { + readonly connectionString?: string; + readonly description?: string; +} + // @public export type ConnectorOffer = string; @@ -840,9 +1050,18 @@ export interface ContinuousBackupRestoreLocation { // @public export interface ContinuousModeBackupPolicy extends BackupPolicy { + continuousModeProperties?: ContinuousModeProperties; type: "Continuous"; } +// @public +export interface ContinuousModeProperties { + tier?: ContinuousTier; +} + +// @public +export type ContinuousTier = string; + // @public export interface CorsPolicy { allowedHeaders?: string; @@ -852,6 +1071,15 @@ export interface CorsPolicy { maxAgeInSeconds?: number; } +// @public +export interface CosmosCassandraDataTransferDataSourceSink extends DataTransferDataSourceSink { + component: "CosmosDBCassandra"; + // (undocumented) + keyspaceName: string; + // (undocumented) + tableName: string; +} + // @public (undocumented) export class CosmosDBManagementClient extends coreClient.ServiceClient { // (undocumented) @@ -880,10 +1108,16 @@ export class CosmosDBManagementClient extends coreClient.ServiceClient { // (undocumented) databaseAccounts: DatabaseAccounts; // (undocumented) + dataTransferJobs: DataTransferJobs; + // (undocumented) + graphResources: GraphResources; + // (undocumented) gremlinResources: GremlinResources; // (undocumented) locations: Locations; // (undocumented) + mongoClusters: MongoClusters; + // (undocumented) mongoDBResources: MongoDBResources; // (undocumented) notebookWorkspaces: NotebookWorkspaces; @@ -944,9 +1178,23 @@ export interface CosmosDBManagementClientOptionalParams extends coreClient.Servi endpoint?: string; } +// @public +export interface CosmosSqlDataTransferDataSourceSink extends DataTransferDataSourceSink { + component: "CosmosDBSql"; + // (undocumented) + containerName: string; + // (undocumented) + databaseName: string; +} + // @public export type CreatedByType = string; +// @public +export interface CreateJobRequest extends ARMProxyResource { + properties: DataTransferJobProperties; +} + // @public export type CreateMode = string; @@ -982,15 +1230,17 @@ export interface DatabaseAccountCreateUpdateParameters extends ARMResourceProper createMode?: CreateMode; databaseAccountOfferType: "Standard"; defaultIdentity?: string; + diagnosticLogSettings?: DiagnosticLogSettings; disableKeyBasedMetadataWriteAccess?: boolean; disableLocalAuth?: boolean; enableAnalyticalStorage?: boolean; enableAutomaticFailover?: boolean; + enableBurstCapacity?: boolean; enableCassandraConnector?: boolean; enableFreeTier?: boolean; + enableMaterializedViews?: boolean; enableMultipleWriteLocations?: boolean; enablePartitionMerge?: boolean; - identity?: ManagedServiceIdentity; ipRules?: IpAddressOrRange[]; isVirtualNetworkFilterEnabled?: boolean; readonly keysMetadata?: DatabaseAccountKeysMetadata; @@ -1018,17 +1268,19 @@ export interface DatabaseAccountGetResults extends ARMResourceProperties { createMode?: CreateMode; readonly databaseAccountOfferType?: "Standard"; defaultIdentity?: string; + diagnosticLogSettings?: DiagnosticLogSettings; disableKeyBasedMetadataWriteAccess?: boolean; disableLocalAuth?: boolean; readonly documentEndpoint?: string; enableAnalyticalStorage?: boolean; enableAutomaticFailover?: boolean; + enableBurstCapacity?: boolean; enableCassandraConnector?: boolean; enableFreeTier?: boolean; + enableMaterializedViews?: boolean; enableMultipleWriteLocations?: boolean; enablePartitionMerge?: boolean; readonly failoverPolicies?: FailoverPolicy[]; - identity?: ManagedServiceIdentity; readonly instanceId?: string; ipRules?: IpAddressOrRange[]; isVirtualNetworkFilterEnabled?: boolean; @@ -1303,12 +1555,15 @@ export interface DatabaseAccountUpdateParameters { consistencyPolicy?: ConsistencyPolicy; cors?: CorsPolicy[]; defaultIdentity?: string; + diagnosticLogSettings?: DiagnosticLogSettings; disableKeyBasedMetadataWriteAccess?: boolean; disableLocalAuth?: boolean; enableAnalyticalStorage?: boolean; enableAutomaticFailover?: boolean; + enableBurstCapacity?: boolean; enableCassandraConnector?: boolean; enableFreeTier?: boolean; + enableMaterializedViews?: boolean; enableMultipleWriteLocations?: boolean; enablePartitionMerge?: boolean; identity?: ManagedServiceIdentity; @@ -1363,6 +1618,7 @@ export interface DataCenterResource extends ARMProxyResource { // @public export interface DataCenterResourceProperties { + authenticationMethodLdapProperties?: AuthenticationMethodLdapProperties; availabilityZone?: boolean; backupStorageCustomerKeyUri?: string; base64EncodedCassandraYamlFragment?: string; @@ -1377,6 +1633,108 @@ export interface DataCenterResourceProperties { sku?: string; } +// @public +export type DataTransferComponent = string; + +// @public +export interface DataTransferDataSourceSink { + component: "CosmosDBCassandra" | "CosmosDBSql" | "AzureBlobStorage"; +} + +// @public (undocumented) +export type DataTransferDataSourceSinkUnion = DataTransferDataSourceSink | CosmosCassandraDataTransferDataSourceSink | CosmosSqlDataTransferDataSourceSink | AzureBlobDataTransferDataSourceSink; + +// @public +export interface DataTransferJobFeedResults { + readonly nextLink?: string; + readonly value?: DataTransferJobGetResults[]; +} + +// @public +export interface DataTransferJobGetResults extends ARMProxyResource { + destination?: DataTransferDataSourceSinkUnion; + readonly error?: ErrorResponse; + readonly jobName?: string; + readonly lastUpdatedUtcTime?: Date; + readonly processedCount?: number; + source?: DataTransferDataSourceSinkUnion; + readonly status?: string; + readonly totalCount?: number; + workerCount?: number; +} + +// @public +export interface DataTransferJobProperties { + destination: DataTransferDataSourceSinkUnion; + readonly error?: ErrorResponse; + readonly jobName?: string; + readonly lastUpdatedUtcTime?: Date; + readonly processedCount?: number; + source: DataTransferDataSourceSinkUnion; + readonly status?: string; + readonly totalCount?: number; + workerCount?: number; +} + +// @public +export interface DataTransferJobs { + cancel(resourceGroupName: string, accountName: string, jobName: string, options?: DataTransferJobsCancelOptionalParams): Promise; + create(resourceGroupName: string, accountName: string, jobName: string, jobCreateParameters: CreateJobRequest, options?: DataTransferJobsCreateOptionalParams): Promise; + get(resourceGroupName: string, accountName: string, jobName: string, options?: DataTransferJobsGetOptionalParams): Promise; + listByDatabaseAccount(resourceGroupName: string, accountName: string, options?: DataTransferJobsListByDatabaseAccountOptionalParams): PagedAsyncIterableIterator; + pause(resourceGroupName: string, accountName: string, jobName: string, options?: DataTransferJobsPauseOptionalParams): Promise; + resume(resourceGroupName: string, accountName: string, jobName: string, options?: DataTransferJobsResumeOptionalParams): Promise; +} + +// @public +export interface DataTransferJobsCancelOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DataTransferJobsCancelResponse = DataTransferJobGetResults; + +// @public +export interface DataTransferJobsCreateOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DataTransferJobsCreateResponse = DataTransferJobGetResults; + +// @public +export interface DataTransferJobsGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DataTransferJobsGetResponse = DataTransferJobGetResults; + +// @public +export interface DataTransferJobsListByDatabaseAccountNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DataTransferJobsListByDatabaseAccountNextResponse = DataTransferJobFeedResults; + +// @public +export interface DataTransferJobsListByDatabaseAccountOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DataTransferJobsListByDatabaseAccountResponse = DataTransferJobFeedResults; + +// @public +export interface DataTransferJobsPauseOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DataTransferJobsPauseResponse = DataTransferJobGetResults; + +// @public +export interface DataTransferJobsResumeOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type DataTransferJobsResumeResponse = DataTransferJobGetResults; + // @public export interface DataTransferRegionalServiceResource extends RegionalServiceResource { } @@ -1398,12 +1756,40 @@ export type DataType = string; // @public export type DefaultConsistencyLevel = "Eventual" | "Session" | "BoundedStaleness" | "Strong" | "ConsistentPrefix"; +// @public +export interface DiagnosticLogSettings { + enableFullTextQuery?: EnableFullTextQuery; +} + +// @public +export type EnableFullTextQuery = "None" | "True" | "False"; + +// @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 { code?: string; message?: string; } +// @public +export interface ErrorResponseAutoGenerated { + error?: ErrorDetail; +} + // @public (undocumented) export interface ExcludedPath { path?: string; @@ -1428,6 +1814,19 @@ export interface FailoverPolicy { locationName?: string; } +// @public +export interface FirewallRule extends ProxyResourceAutoGenerated { + endIpAddress: string; + readonly provisioningState?: ProvisioningState; + startIpAddress: string; +} + +// @public +export interface FirewallRuleListResult { + readonly nextLink?: string; + value?: FirewallRule[]; +} + // @public export function getContinuationToken(page: unknown): string | undefined; @@ -1448,6 +1847,89 @@ export interface GraphAPIComputeServiceResourceProperties extends ServiceResourc serviceType: "GraphAPICompute"; } +// @public +export interface GraphResource { + id: string; +} + +// @public +export interface GraphResourceCreateUpdateParameters extends ARMResourceProperties { + options?: CreateUpdateOptions; + resource: GraphResource; +} + +// @public (undocumented) +export interface GraphResourceGetPropertiesOptions extends OptionsResource { +} + +// @public (undocumented) +export interface GraphResourceGetPropertiesResource extends GraphResource { +} + +// @public +export interface GraphResourceGetResults extends ARMResourceProperties { + // (undocumented) + options?: GraphResourceGetPropertiesOptions; + // (undocumented) + resource?: GraphResourceGetPropertiesResource; +} + +// @public +export interface GraphResources { + beginCreateUpdateGraph(resourceGroupName: string, accountName: string, graphName: string, createUpdateGraphParameters: GraphResourceCreateUpdateParameters, options?: GraphResourcesCreateUpdateGraphOptionalParams): Promise, GraphResourcesCreateUpdateGraphResponse>>; + beginCreateUpdateGraphAndWait(resourceGroupName: string, accountName: string, graphName: string, createUpdateGraphParameters: GraphResourceCreateUpdateParameters, options?: GraphResourcesCreateUpdateGraphOptionalParams): Promise; + beginDeleteGraphResource(resourceGroupName: string, accountName: string, graphName: string, options?: GraphResourcesDeleteGraphResourceOptionalParams): Promise, void>>; + beginDeleteGraphResourceAndWait(resourceGroupName: string, accountName: string, graphName: string, options?: GraphResourcesDeleteGraphResourceOptionalParams): Promise; + getGraph(resourceGroupName: string, accountName: string, graphName: string, options?: GraphResourcesGetGraphOptionalParams): Promise; + listGraphs(resourceGroupName: string, accountName: string, options?: GraphResourcesListGraphsOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface GraphResourcesCreateUpdateGraphHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface GraphResourcesCreateUpdateGraphOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type GraphResourcesCreateUpdateGraphResponse = GraphResourceGetResults; + +// @public +export interface GraphResourcesDeleteGraphResourceHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface GraphResourcesDeleteGraphResourceOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export interface GraphResourcesGetGraphOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type GraphResourcesGetGraphResponse = GraphResourceGetResults; + +// @public +export interface GraphResourcesListGraphsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type GraphResourcesListGraphsResponse = GraphResourcesListResult; + +// @public +export interface GraphResourcesListResult { + readonly value?: GraphResourceGetResults[]; +} + // @public export interface GremlinDatabaseCreateUpdateParameters extends ARMResourceProperties { options?: CreateUpdateOptions; @@ -1477,7 +1959,9 @@ export interface GremlinDatabaseListResult { // @public export interface GremlinDatabaseResource { + createMode?: CreateMode; id: string; + restoreParameters?: ResourceRestoreParameters; } // @public @@ -1517,10 +2001,12 @@ export interface GremlinGraphListResult { export interface GremlinGraphResource { analyticalStorageTtl?: number; conflictResolutionPolicy?: ConflictResolutionPolicy; + createMode?: CreateMode; defaultTtl?: number; id: string; indexingPolicy?: IndexingPolicy; partitionKey?: ContainerPartitionKey; + restoreParameters?: ResourceRestoreParameters; uniqueKeyPolicy?: UniqueKeyPolicy; } @@ -1821,6 +2307,7 @@ export enum KnownApiType { // @public export enum KnownAuthenticationMethod { Cassandra = "Cassandra", + Ldap = "Ldap", None = "None" } @@ -1845,6 +2332,12 @@ export enum KnownBackupStorageRedundancy { Zone = "Zone" } +// @public +export enum KnownCheckNameAvailabilityReason { + AlreadyExists = "AlreadyExists", + Invalid = "Invalid" +} + // @public export enum KnownCompositePathSortOrder { Ascending = "ascending", @@ -1872,6 +2365,12 @@ export enum KnownConnectorOffer { Small = "Small" } +// @public +export enum KnownContinuousTier { + Continuous30Days = "Continuous30Days", + Continuous7Days = "Continuous7Days" +} + // @public export enum KnownCreatedByType { Application = "Application", @@ -1883,6 +2382,7 @@ export enum KnownCreatedByType { // @public export enum KnownCreateMode { Default = "Default", + PointInTimeRestore = "PointInTimeRestore", Restore = "Restore" } @@ -1893,6 +2393,13 @@ export enum KnownDatabaseAccountKind { Parse = "Parse" } +// @public +export enum KnownDataTransferComponent { + AzureBlobStorage = "AzureBlobStorage", + CosmosDBCassandra = "CosmosDBCassandra", + CosmosDBSql = "CosmosDBSql" +} + // @public export enum KnownDataType { LineString = "LineString", @@ -1948,6 +2455,22 @@ export enum KnownMinimalTlsVersion { Tls12 = "Tls12" } +// @public +export enum KnownMongoClusterStatus { + Dropping = "Dropping", + Provisioning = "Provisioning", + Ready = "Ready", + Starting = "Starting", + Stopped = "Stopped", + Stopping = "Stopping", + Updating = "Updating" +} + +// @public +export enum KnownNodeKind { + Shard = "Shard" +} + // @public export enum KnownNodeState { Joining = "Joining", @@ -1972,6 +2495,7 @@ export enum KnownNotebookWorkspaceName { export enum KnownOperationType { Create = "Create", Delete = "Delete", + Recreate = "Recreate", Replace = "Replace", SystemOperation = "SystemOperation" } @@ -1993,6 +2517,16 @@ export enum KnownPrimaryAggregationType { Total = "Total" } +// @public +export enum KnownProvisioningState { + Canceled = "Canceled", + Dropping = "Dropping", + Failed = "Failed", + InProgress = "InProgress", + Succeeded = "Succeeded", + Updating = "Updating" +} + // @public export enum KnownPublicNetworkAccess { Disabled = "Disabled", @@ -2045,6 +2579,13 @@ export enum KnownSpatialType { Polygon = "Polygon" } +// @public +export enum KnownThroughputPolicyType { + Custom = "custom", + Equal = "equal", + None = "none" +} + // @public export enum KnownTriggerOperation { All = "All", @@ -2071,11 +2612,21 @@ export enum KnownUnitType { Seconds = "Seconds" } +// @public +export interface ListBackups { + readonly value?: BackupResource[]; +} + // @public export interface ListClusters { value?: ClusterResource[]; } +// @public +export interface ListConnectionStringsResult { + readonly connectionStrings?: ConnectionString[]; +} + // @public export interface ListDataCenters { readonly value?: DataCenterResource[]; @@ -2106,6 +2657,7 @@ export interface LocationListResult { export interface LocationProperties { readonly backupStorageRedundancies?: BackupStorageRedundancy[]; readonly isResidencyRestricted?: boolean; + readonly status?: string; readonly supportsAvailabilityZone?: boolean; } @@ -2181,69 +2733,274 @@ export interface MaterializedViewsBuilderRegionalServiceResource extends Regiona } // @public -export interface MaterializedViewsBuilderServiceResource { - properties?: MaterializedViewsBuilderServiceResourceProperties; -} +export interface MaterializedViewsBuilderServiceResource { + properties?: MaterializedViewsBuilderServiceResourceProperties; +} + +// @public +export interface MaterializedViewsBuilderServiceResourceProperties extends ServiceResourceProperties { + readonly locations?: MaterializedViewsBuilderRegionalServiceResource[]; + serviceType: "MaterializedViewsBuilder"; +} + +// @public +export interface MergeParameters { + isDryRun?: boolean; +} + +// @public +export interface Metric { + readonly endTime?: Date; + readonly metricValues?: MetricValue[]; + readonly name?: MetricName; + readonly startTime?: Date; + readonly timeGrain?: string; + readonly unit?: UnitType; +} + +// @public +export interface MetricAvailability { + readonly retention?: string; + readonly timeGrain?: string; +} + +// @public +export interface MetricDefinition { + readonly metricAvailabilities?: MetricAvailability[]; + readonly name?: MetricName; + readonly primaryAggregationType?: PrimaryAggregationType; + readonly resourceUri?: string; + readonly unit?: UnitType; +} + +// @public +export interface MetricDefinitionsListResult { + readonly value?: MetricDefinition[]; +} + +// @public +export interface MetricListResult { + readonly value?: Metric[]; +} + +// @public +export interface MetricName { + readonly localizedValue?: string; + readonly value?: string; +} + +// @public +export interface MetricValue { + readonly average?: number; + readonly count?: number; + readonly maximum?: number; + readonly minimum?: number; + readonly timestamp?: Date; + readonly total?: number; +} + +// @public +export type MinimalTlsVersion = string; + +// @public +export interface MongoCluster extends TrackedResource { + administratorLogin?: string; + administratorLoginPassword?: string; + readonly clusterStatus?: MongoClusterStatus; + readonly connectionString?: string; + createMode?: CreateMode; + readonly earliestRestoreTime?: string; + nodeGroupSpecs?: NodeGroupSpec[]; + readonly provisioningState?: ProvisioningState; + restoreParameters?: MongoClusterRestoreParameters; + serverVersion?: string; +} + +// @public +export interface MongoClusterListResult { + readonly nextLink?: string; + value?: MongoCluster[]; +} + +// @public +export interface MongoClusterRestoreParameters { + pointInTimeUTC?: Date; + sourceResourceId?: string; +} + +// @public +export interface MongoClusters { + beginCreateOrUpdate(resourceGroupName: string, mongoClusterName: string, parameters: MongoCluster, options?: MongoClustersCreateOrUpdateOptionalParams): Promise, MongoClustersCreateOrUpdateResponse>>; + beginCreateOrUpdateAndWait(resourceGroupName: string, mongoClusterName: string, parameters: MongoCluster, options?: MongoClustersCreateOrUpdateOptionalParams): Promise; + beginCreateOrUpdateFirewallRule(resourceGroupName: string, mongoClusterName: string, firewallRuleName: string, parameters: FirewallRule, options?: MongoClustersCreateOrUpdateFirewallRuleOptionalParams): Promise, MongoClustersCreateOrUpdateFirewallRuleResponse>>; + beginCreateOrUpdateFirewallRuleAndWait(resourceGroupName: string, mongoClusterName: string, firewallRuleName: string, parameters: FirewallRule, options?: MongoClustersCreateOrUpdateFirewallRuleOptionalParams): Promise; + beginDelete(resourceGroupName: string, mongoClusterName: string, options?: MongoClustersDeleteOptionalParams): Promise, MongoClustersDeleteResponse>>; + beginDeleteAndWait(resourceGroupName: string, mongoClusterName: string, options?: MongoClustersDeleteOptionalParams): Promise; + beginDeleteFirewallRule(resourceGroupName: string, mongoClusterName: string, firewallRuleName: string, options?: MongoClustersDeleteFirewallRuleOptionalParams): Promise, MongoClustersDeleteFirewallRuleResponse>>; + beginDeleteFirewallRuleAndWait(resourceGroupName: string, mongoClusterName: string, firewallRuleName: string, options?: MongoClustersDeleteFirewallRuleOptionalParams): Promise; + beginUpdate(resourceGroupName: string, mongoClusterName: string, parameters: MongoClusterUpdate, options?: MongoClustersUpdateOptionalParams): Promise, MongoClustersUpdateResponse>>; + beginUpdateAndWait(resourceGroupName: string, mongoClusterName: string, parameters: MongoClusterUpdate, options?: MongoClustersUpdateOptionalParams): Promise; + checkNameAvailability(location: string, parameters: CheckNameAvailabilityRequest, options?: MongoClustersCheckNameAvailabilityOptionalParams): Promise; + get(resourceGroupName: string, mongoClusterName: string, options?: MongoClustersGetOptionalParams): Promise; + getFirewallRule(resourceGroupName: string, mongoClusterName: string, firewallRuleName: string, options?: MongoClustersGetFirewallRuleOptionalParams): Promise; + list(options?: MongoClustersListOptionalParams): PagedAsyncIterableIterator; + listByResourceGroup(resourceGroupName: string, options?: MongoClustersListByResourceGroupOptionalParams): PagedAsyncIterableIterator; + listConnectionStrings(resourceGroupName: string, mongoClusterName: string, options?: MongoClustersListConnectionStringsOptionalParams): Promise; + listFirewallRules(resourceGroupName: string, mongoClusterName: string, options?: MongoClustersListFirewallRulesOptionalParams): PagedAsyncIterableIterator; +} + +// @public +export interface MongoClustersCheckNameAvailabilityOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersCheckNameAvailabilityResponse = CheckNameAvailabilityResponse; + +// @public +export interface MongoClustersCreateOrUpdateFirewallRuleOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoClustersCreateOrUpdateFirewallRuleResponse = FirewallRule; + +// @public +export interface MongoClustersCreateOrUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoClustersCreateOrUpdateResponse = MongoCluster; + +// @public +export interface MongoClustersDeleteFirewallRuleHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface MongoClustersDeleteFirewallRuleOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoClustersDeleteFirewallRuleResponse = MongoClustersDeleteFirewallRuleHeaders; + +// @public +export interface MongoClustersDeleteHeaders { + // (undocumented) + location?: string; +} + +// @public +export interface MongoClustersDeleteOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoClustersDeleteResponse = MongoClustersDeleteHeaders; + +// @public +export interface MongoClustersGetFirewallRuleOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersGetFirewallRuleResponse = FirewallRule; + +// @public +export interface MongoClustersGetOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersGetResponse = MongoCluster; + +// @public +export interface MongoClustersListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersListByResourceGroupNextResponse = MongoClusterListResult; + +// @public +export interface MongoClustersListByResourceGroupOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersListByResourceGroupResponse = MongoClusterListResult; + +// @public +export interface MongoClustersListConnectionStringsOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersListConnectionStringsResponse = ListConnectionStringsResult; + +// @public +export interface MongoClustersListFirewallRulesNextOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersListFirewallRulesNextResponse = FirewallRuleListResult; + +// @public +export interface MongoClustersListFirewallRulesOptionalParams extends coreClient.OperationOptions { +} + +// @public +export type MongoClustersListFirewallRulesResponse = FirewallRuleListResult; // @public -export interface MaterializedViewsBuilderServiceResourceProperties extends ServiceResourceProperties { - readonly locations?: MaterializedViewsBuilderRegionalServiceResource[]; - serviceType: "MaterializedViewsBuilder"; +export interface MongoClustersListNextOptionalParams extends coreClient.OperationOptions { } // @public -export interface Metric { - readonly endTime?: Date; - readonly metricValues?: MetricValue[]; - readonly name?: MetricName; - readonly startTime?: Date; - readonly timeGrain?: string; - readonly unit?: UnitType; -} +export type MongoClustersListNextResponse = MongoClusterListResult; // @public -export interface MetricAvailability { - readonly retention?: string; - readonly timeGrain?: string; +export interface MongoClustersListOptionalParams extends coreClient.OperationOptions { } // @public -export interface MetricDefinition { - readonly metricAvailabilities?: MetricAvailability[]; - readonly name?: MetricName; - readonly primaryAggregationType?: PrimaryAggregationType; - readonly resourceUri?: string; - readonly unit?: UnitType; -} +export type MongoClustersListResponse = MongoClusterListResult; // @public -export interface MetricDefinitionsListResult { - readonly value?: MetricDefinition[]; -} +export type MongoClusterStatus = string; // @public -export interface MetricListResult { - readonly value?: Metric[]; +export interface MongoClustersUpdateHeaders { + // (undocumented) + location?: string; } // @public -export interface MetricName { - readonly localizedValue?: string; - readonly value?: string; +export interface MongoClustersUpdateOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; } // @public -export interface MetricValue { - readonly average?: number; - readonly count?: number; - readonly maximum?: number; - readonly minimum?: number; - readonly timestamp?: Date; - readonly total?: number; -} +export type MongoClustersUpdateResponse = MongoCluster; // @public -export type MinimalTlsVersion = string; +export interface MongoClusterUpdate { + administratorLogin?: string; + administratorLoginPassword?: string; + readonly clusterStatus?: MongoClusterStatus; + readonly connectionString?: string; + createMode?: CreateMode; + readonly earliestRestoreTime?: string; + nodeGroupSpecs?: NodeGroupSpec[]; + readonly provisioningState?: ProvisioningState; + restoreParameters?: MongoClusterRestoreParameters; + serverVersion?: string; + tags?: { + [propertyName: string]: string; + }; +} // @public export interface MongoDBCollectionCreateUpdateParameters extends ARMResourceProperties { @@ -2275,8 +3032,10 @@ export interface MongoDBCollectionListResult { // @public export interface MongoDBCollectionResource { analyticalStorageTtl?: number; + createMode?: CreateMode; id: string; indexes?: MongoIndex[]; + restoreParameters?: ResourceRestoreParameters; shardKey?: { [propertyName: string]: string; }; @@ -2311,7 +3070,9 @@ export interface MongoDBDatabaseListResult { // @public export interface MongoDBDatabaseResource { + createMode?: CreateMode; id: string; + restoreParameters?: ResourceRestoreParameters; } // @public @@ -2332,6 +3093,8 @@ export interface MongoDBResources { beginDeleteMongoRoleDefinitionAndWait(mongoRoleDefinitionId: string, resourceGroupName: string, accountName: string, options?: MongoDBResourcesDeleteMongoRoleDefinitionOptionalParams): Promise; beginDeleteMongoUserDefinition(mongoUserDefinitionId: string, resourceGroupName: string, accountName: string, options?: MongoDBResourcesDeleteMongoUserDefinitionOptionalParams): Promise, void>>; beginDeleteMongoUserDefinitionAndWait(mongoUserDefinitionId: string, resourceGroupName: string, accountName: string, options?: MongoDBResourcesDeleteMongoUserDefinitionOptionalParams): Promise; + beginListMongoDBCollectionPartitionMerge(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, mergeParameters: MergeParameters, options?: MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams): Promise, MongoDBResourcesListMongoDBCollectionPartitionMergeResponse>>; + beginListMongoDBCollectionPartitionMergeAndWait(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, mergeParameters: MergeParameters, options?: MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams): Promise; beginMigrateMongoDBCollectionToAutoscale(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, options?: MongoDBResourcesMigrateMongoDBCollectionToAutoscaleOptionalParams): Promise, MongoDBResourcesMigrateMongoDBCollectionToAutoscaleResponse>>; beginMigrateMongoDBCollectionToAutoscaleAndWait(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, options?: MongoDBResourcesMigrateMongoDBCollectionToAutoscaleOptionalParams): Promise; beginMigrateMongoDBCollectionToManualThroughput(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, options?: MongoDBResourcesMigrateMongoDBCollectionToManualThroughputOptionalParams): Promise, MongoDBResourcesMigrateMongoDBCollectionToManualThroughputResponse>>; @@ -2340,6 +3103,14 @@ export interface MongoDBResources { beginMigrateMongoDBDatabaseToAutoscaleAndWait(resourceGroupName: string, accountName: string, databaseName: string, options?: MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleOptionalParams): Promise; beginMigrateMongoDBDatabaseToManualThroughput(resourceGroupName: string, accountName: string, databaseName: string, options?: MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputOptionalParams): Promise, MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputResponse>>; beginMigrateMongoDBDatabaseToManualThroughputAndWait(resourceGroupName: string, accountName: string, databaseName: string, options?: MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputOptionalParams): Promise; + beginMongoDBContainerRedistributeThroughput(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams): Promise, MongoDBResourcesMongoDBContainerRedistributeThroughputResponse>>; + beginMongoDBContainerRedistributeThroughputAndWait(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams): Promise; + beginMongoDBContainerRetrieveThroughputDistribution(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams): Promise, MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse>>; + beginMongoDBContainerRetrieveThroughputDistributionAndWait(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams): Promise; + beginMongoDBDatabaseRedistributeThroughput(resourceGroupName: string, accountName: string, databaseName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams): Promise, MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse>>; + beginMongoDBDatabaseRedistributeThroughputAndWait(resourceGroupName: string, accountName: string, databaseName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams): Promise; + beginMongoDBDatabaseRetrieveThroughputDistribution(resourceGroupName: string, accountName: string, databaseName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams): Promise, MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse>>; + beginMongoDBDatabaseRetrieveThroughputDistributionAndWait(resourceGroupName: string, accountName: string, databaseName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams): Promise; beginRetrieveContinuousBackupInformation(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, location: ContinuousBackupRestoreLocation, options?: MongoDBResourcesRetrieveContinuousBackupInformationOptionalParams): Promise, MongoDBResourcesRetrieveContinuousBackupInformationResponse>>; beginRetrieveContinuousBackupInformationAndWait(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, location: ContinuousBackupRestoreLocation, options?: MongoDBResourcesRetrieveContinuousBackupInformationOptionalParams): Promise; beginUpdateMongoDBCollectionThroughput(resourceGroupName: string, accountName: string, databaseName: string, collectionName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: MongoDBResourcesUpdateMongoDBCollectionThroughputOptionalParams): Promise, MongoDBResourcesUpdateMongoDBCollectionThroughputResponse>>; @@ -2490,6 +3261,21 @@ export interface MongoDBResourcesGetMongoUserDefinitionOptionalParams extends co // @public export type MongoDBResourcesGetMongoUserDefinitionResponse = MongoUserDefinitionGetResults; +// @public +export interface MongoDBResourcesListMongoDBCollectionPartitionMergeHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoDBResourcesListMongoDBCollectionPartitionMergeResponse = PhysicalPartitionStorageInfoCollection; + // @public export interface MongoDBResourcesListMongoDBCollectionsOptionalParams extends coreClient.OperationOptions { } @@ -2578,6 +3364,66 @@ export interface MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputOptiona // @public export type MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputResponse = ThroughputSettingsGetResults; +// @public +export interface MongoDBResourcesMongoDBContainerRedistributeThroughputHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoDBResourcesMongoDBContainerRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; + +// @public +export interface MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; + +// @public +export interface MongoDBResourcesMongoDBDatabaseRedistributeThroughputHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; + +// @public +export interface MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; + // @public export interface MongoDBResourcesRetrieveContinuousBackupInformationOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -2688,6 +3534,22 @@ export interface MongoUserDefinitionListResult { // @public export type NetworkAclBypass = "None" | "AzureServices"; +// @public +export interface NodeGroupProperties { + diskSizeGB?: number; + enableHa?: boolean; + sku?: string; +} + +// @public +export interface NodeGroupSpec extends NodeGroupProperties { + kind?: NodeKind; + nodeCount?: number; +} + +// @public +export type NodeKind = string; + // @public export type NodeState = string; @@ -2959,6 +3821,42 @@ export interface Permission { notDataActions?: string[]; } +// @public +export interface PhysicalPartitionId { + id: string; +} + +// @public +export interface PhysicalPartitionStorageInfo { + readonly id?: string; + readonly storageInKB?: number; +} + +// @public +export interface PhysicalPartitionStorageInfoCollection { + readonly physicalPartitionStorageInfoCollection?: PhysicalPartitionStorageInfo[]; +} + +// @public +export interface PhysicalPartitionThroughputInfoProperties { + physicalPartitionThroughputInfo?: PhysicalPartitionThroughputInfoResource[]; +} + +// @public +export interface PhysicalPartitionThroughputInfoResource { + id: string; + throughput?: number; +} + +// @public +export interface PhysicalPartitionThroughputInfoResult extends ARMResourceProperties { + resource?: PhysicalPartitionThroughputInfoResultPropertiesResource; +} + +// @public +export interface PhysicalPartitionThroughputInfoResultPropertiesResource extends PhysicalPartitionThroughputInfoProperties { +} + // @public export type PrimaryAggregationType = string; @@ -3070,13 +3968,32 @@ export interface PrivilegeResource { db?: string; } +// @public +export type ProvisioningState = string; + // @public export interface ProxyResource extends Resource { } +// @public +export interface ProxyResourceAutoGenerated extends ResourceAutoGenerated { +} + // @public export type PublicNetworkAccess = string; +// @public +export interface RedistributeThroughputParameters extends ARMResourceProperties { + resource: RedistributeThroughputPropertiesResource; +} + +// @public +export interface RedistributeThroughputPropertiesResource { + sourcePhysicalPartitionThroughputInfo: PhysicalPartitionThroughputInfoResource[]; + targetPhysicalPartitionThroughputInfo: PhysicalPartitionThroughputInfoResource[]; + throughputPolicy: ThroughputPolicyType; +} + // @public export interface RegionalServiceResource { readonly location?: string; @@ -3096,9 +4013,21 @@ export interface Resource { readonly type?: string; } +// @public +export interface ResourceAutoGenerated { + readonly id?: string; + readonly name?: string; + readonly systemData?: SystemData; + readonly type?: string; +} + // @public export type ResourceIdentityType = "SystemAssigned" | "UserAssigned" | "SystemAssigned,UserAssigned" | "None"; +// @public +export interface ResourceRestoreParameters extends RestoreParametersBase { +} + // @public export interface RestorableDatabaseAccountGetResult { accountName?: string; @@ -3108,6 +4037,7 @@ export interface RestorableDatabaseAccountGetResult { readonly id?: string; location?: string; readonly name?: string; + oldestRestorableTime?: Date; readonly restorableLocations?: RestorableLocationResource[]; readonly type?: string; } @@ -3530,13 +4460,28 @@ export interface RestorableTablesListResult { export type RestoreMode = string; // @public -export interface RestoreParameters { +export interface RestoreParameters extends RestoreParametersBase { databasesToRestore?: DatabaseRestoreResource[]; gremlinDatabasesToRestore?: GremlinDatabaseRestoreResource[]; restoreMode?: RestoreMode; + sourceBackupLocation?: string; + tablesToRestore?: string[]; +} + +// @public +export interface RestoreParametersBase { restoreSource?: string; restoreTimestampInUtc?: Date; - tablesToRestore?: string[]; +} + +// @public +export interface RetrieveThroughputParameters extends ARMResourceProperties { + resource: RetrieveThroughputPropertiesResource; +} + +// @public +export interface RetrieveThroughputPropertiesResource { + physicalPartitionIds: PhysicalPartitionId[]; } // @public @@ -3566,12 +4511,6 @@ export interface Service { list(resourceGroupName: string, accountName: string, options?: ServiceListOptionalParams): PagedAsyncIterableIterator; } -// @public -export interface ServiceCreateHeaders { - azureAsyncOperation?: string; - location?: string; -} - // @public export interface ServiceCreateOptionalParams extends coreClient.OperationOptions { resumeFrom?: string; @@ -3687,10 +4626,12 @@ export interface SqlContainerResource { analyticalStorageTtl?: number; clientEncryptionPolicy?: ClientEncryptionPolicy; conflictResolutionPolicy?: ConflictResolutionPolicy; + createMode?: CreateMode; defaultTtl?: number; id: string; indexingPolicy?: IndexingPolicy; partitionKey?: ContainerPartitionKey; + restoreParameters?: ResourceRestoreParameters; uniqueKeyPolicy?: UniqueKeyPolicy; } @@ -3725,7 +4666,9 @@ export interface SqlDatabaseListResult { // @public export interface SqlDatabaseResource { + createMode?: CreateMode; id: string; + restoreParameters?: ResourceRestoreParameters; } // @public @@ -3777,6 +4720,8 @@ export interface SqlResources { beginDeleteSqlTriggerAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, triggerName: string, options?: SqlResourcesDeleteSqlTriggerOptionalParams): Promise; beginDeleteSqlUserDefinedFunction(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, userDefinedFunctionName: string, options?: SqlResourcesDeleteSqlUserDefinedFunctionOptionalParams): Promise, SqlResourcesDeleteSqlUserDefinedFunctionResponse>>; beginDeleteSqlUserDefinedFunctionAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, userDefinedFunctionName: string, options?: SqlResourcesDeleteSqlUserDefinedFunctionOptionalParams): Promise; + beginListSqlContainerPartitionMerge(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, mergeParameters: MergeParameters, options?: SqlResourcesListSqlContainerPartitionMergeOptionalParams): Promise, SqlResourcesListSqlContainerPartitionMergeResponse>>; + beginListSqlContainerPartitionMergeAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, mergeParameters: MergeParameters, options?: SqlResourcesListSqlContainerPartitionMergeOptionalParams): Promise; beginMigrateSqlContainerToAutoscale(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, options?: SqlResourcesMigrateSqlContainerToAutoscaleOptionalParams): Promise, SqlResourcesMigrateSqlContainerToAutoscaleResponse>>; beginMigrateSqlContainerToAutoscaleAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, options?: SqlResourcesMigrateSqlContainerToAutoscaleOptionalParams): Promise; beginMigrateSqlContainerToManualThroughput(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, options?: SqlResourcesMigrateSqlContainerToManualThroughputOptionalParams): Promise, SqlResourcesMigrateSqlContainerToManualThroughputResponse>>; @@ -3787,6 +4732,14 @@ export interface SqlResources { beginMigrateSqlDatabaseToManualThroughputAndWait(resourceGroupName: string, accountName: string, databaseName: string, options?: SqlResourcesMigrateSqlDatabaseToManualThroughputOptionalParams): Promise; beginRetrieveContinuousBackupInformation(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, location: ContinuousBackupRestoreLocation, options?: SqlResourcesRetrieveContinuousBackupInformationOptionalParams): Promise, SqlResourcesRetrieveContinuousBackupInformationResponse>>; beginRetrieveContinuousBackupInformationAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, location: ContinuousBackupRestoreLocation, options?: SqlResourcesRetrieveContinuousBackupInformationOptionalParams): Promise; + beginSqlContainerRedistributeThroughput(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: SqlResourcesSqlContainerRedistributeThroughputOptionalParams): Promise, SqlResourcesSqlContainerRedistributeThroughputResponse>>; + beginSqlContainerRedistributeThroughputAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: SqlResourcesSqlContainerRedistributeThroughputOptionalParams): Promise; + beginSqlContainerRetrieveThroughputDistribution(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams): Promise, SqlResourcesSqlContainerRetrieveThroughputDistributionResponse>>; + beginSqlContainerRetrieveThroughputDistributionAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams): Promise; + beginSqlDatabaseRedistributeThroughput(resourceGroupName: string, accountName: string, databaseName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams): Promise, SqlResourcesSqlDatabaseRedistributeThroughputResponse>>; + beginSqlDatabaseRedistributeThroughputAndWait(resourceGroupName: string, accountName: string, databaseName: string, redistributeThroughputParameters: RedistributeThroughputParameters, options?: SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams): Promise; + beginSqlDatabaseRetrieveThroughputDistribution(resourceGroupName: string, accountName: string, databaseName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams): Promise, SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse>>; + beginSqlDatabaseRetrieveThroughputDistributionAndWait(resourceGroupName: string, accountName: string, databaseName: string, retrieveThroughputParameters: RetrieveThroughputParameters, options?: SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams): Promise; beginUpdateSqlContainerThroughput(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: SqlResourcesUpdateSqlContainerThroughputOptionalParams): Promise, SqlResourcesUpdateSqlContainerThroughputResponse>>; beginUpdateSqlContainerThroughputAndWait(resourceGroupName: string, accountName: string, databaseName: string, containerName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: SqlResourcesUpdateSqlContainerThroughputOptionalParams): Promise; beginUpdateSqlDatabaseThroughput(resourceGroupName: string, accountName: string, databaseName: string, updateThroughputParameters: ThroughputSettingsUpdateParameters, options?: SqlResourcesUpdateSqlDatabaseThroughputOptionalParams): Promise, SqlResourcesUpdateSqlDatabaseThroughputResponse>>; @@ -4083,6 +5036,21 @@ export interface SqlResourcesListClientEncryptionKeysOptionalParams extends core // @public export type SqlResourcesListClientEncryptionKeysResponse = ClientEncryptionKeysListResult; +// @public +export interface SqlResourcesListSqlContainerPartitionMergeHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface SqlResourcesListSqlContainerPartitionMergeOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SqlResourcesListSqlContainerPartitionMergeResponse = PhysicalPartitionStorageInfoCollection; + // @public export interface SqlResourcesListSqlContainersOptionalParams extends coreClient.OperationOptions { } @@ -4201,6 +5169,66 @@ export interface SqlResourcesRetrieveContinuousBackupInformationOptionalParams e // @public export type SqlResourcesRetrieveContinuousBackupInformationResponse = BackupInformation; +// @public +export interface SqlResourcesSqlContainerRedistributeThroughputHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface SqlResourcesSqlContainerRedistributeThroughputOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SqlResourcesSqlContainerRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; + +// @public +export interface SqlResourcesSqlContainerRetrieveThroughputDistributionHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SqlResourcesSqlContainerRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; + +// @public +export interface SqlResourcesSqlDatabaseRedistributeThroughputHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SqlResourcesSqlDatabaseRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; + +// @public +export interface SqlResourcesSqlDatabaseRetrieveThroughputDistributionHeaders { + azureAsyncOperation?: string; + location?: string; +} + +// @public +export interface SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams extends coreClient.OperationOptions { + resumeFrom?: string; + updateIntervalInMs?: number; +} + +// @public +export type SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; + // @public export interface SqlResourcesUpdateSqlContainerThroughputHeaders { azureAsyncOperation?: string; @@ -4393,7 +5421,9 @@ export interface TableListResult { // @public export interface TableResource { + createMode?: CreateMode; id: string; + restoreParameters?: ResourceRestoreParameters; } // @public @@ -4526,6 +5556,9 @@ export interface ThroughputPolicyResource { isEnabled?: boolean; } +// @public +export type ThroughputPolicyType = string; + // @public (undocumented) export interface ThroughputSettingsGetPropertiesResource extends ThroughputSettingsResource, ExtendedResourceProperties { } @@ -4549,6 +5582,14 @@ export interface ThroughputSettingsUpdateParameters extends ARMResourcePropertie resource: ThroughputSettingsResource; } +// @public +export interface TrackedResource extends ResourceAutoGenerated { + location: string; + tags?: { + [propertyName: string]: string; + }; +} + // @public export type TriggerOperation = string; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/cosmosDBManagementClient.ts b/sdk/cosmosdb/arm-cosmosdb/src/cosmosDBManagementClient.ts index dcbc1d3415166..bc9320b1d4e96 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/cosmosDBManagementClient.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/cosmosDBManagementClient.ts @@ -28,14 +28,17 @@ import { CollectionPartitionImpl, PartitionKeyRangeIdImpl, PartitionKeyRangeIdRegionImpl, + GraphResourcesImpl, SqlResourcesImpl, MongoDBResourcesImpl, TableResourcesImpl, CassandraResourcesImpl, GremlinResourcesImpl, LocationsImpl, + DataTransferJobsImpl, CassandraClustersImpl, CassandraDataCentersImpl, + MongoClustersImpl, NotebookWorkspacesImpl, PrivateEndpointConnectionsImpl, PrivateLinkResourcesImpl, @@ -67,14 +70,17 @@ import { CollectionPartition, PartitionKeyRangeId, PartitionKeyRangeIdRegion, + GraphResources, SqlResources, MongoDBResources, TableResources, CassandraResources, GremlinResources, Locations, + DataTransferJobs, CassandraClusters, CassandraDataCenters, + MongoClusters, NotebookWorkspaces, PrivateEndpointConnections, PrivateLinkResources, @@ -126,7 +132,7 @@ export class CosmosDBManagementClient extends coreClient.ServiceClient { credential: credentials }; - const packageDetails = `azsdk-js-arm-cosmosdb/15.3.0`; + const packageDetails = `azsdk-js-arm-cosmosdb/15.4.0-beta.1`; const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}` @@ -179,7 +185,7 @@ export class CosmosDBManagementClient extends coreClient.ServiceClient { // Assigning values to Constant parameters this.$host = options.$host || "https://management.azure.com"; - this.apiVersion = options.apiVersion || "2022-11-15"; + this.apiVersion = options.apiVersion || "2023-03-01-preview"; this.databaseAccounts = new DatabaseAccountsImpl(this); this.operations = new OperationsImpl(this); this.database = new DatabaseImpl(this); @@ -193,14 +199,17 @@ export class CosmosDBManagementClient extends coreClient.ServiceClient { this.collectionPartition = new CollectionPartitionImpl(this); this.partitionKeyRangeId = new PartitionKeyRangeIdImpl(this); this.partitionKeyRangeIdRegion = new PartitionKeyRangeIdRegionImpl(this); + this.graphResources = new GraphResourcesImpl(this); this.sqlResources = new SqlResourcesImpl(this); this.mongoDBResources = new MongoDBResourcesImpl(this); this.tableResources = new TableResourcesImpl(this); this.cassandraResources = new CassandraResourcesImpl(this); this.gremlinResources = new GremlinResourcesImpl(this); this.locations = new LocationsImpl(this); + this.dataTransferJobs = new DataTransferJobsImpl(this); this.cassandraClusters = new CassandraClustersImpl(this); this.cassandraDataCenters = new CassandraDataCentersImpl(this); + this.mongoClusters = new MongoClustersImpl(this); this.notebookWorkspaces = new NotebookWorkspacesImpl(this); this.privateEndpointConnections = new PrivateEndpointConnectionsImpl(this); this.privateLinkResources = new PrivateLinkResourcesImpl(this); @@ -263,14 +272,17 @@ export class CosmosDBManagementClient extends coreClient.ServiceClient { collectionPartition: CollectionPartition; partitionKeyRangeId: PartitionKeyRangeId; partitionKeyRangeIdRegion: PartitionKeyRangeIdRegion; + graphResources: GraphResources; sqlResources: SqlResources; mongoDBResources: MongoDBResources; tableResources: TableResources; cassandraResources: CassandraResources; gremlinResources: GremlinResources; locations: Locations; + dataTransferJobs: DataTransferJobs; cassandraClusters: CassandraClusters; cassandraDataCenters: CassandraDataCenters; + mongoClusters: MongoClusters; notebookWorkspaces: NotebookWorkspaces; privateEndpointConnections: PrivateEndpointConnections; privateLinkResources: PrivateLinkResources; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/models/index.ts b/sdk/cosmosdb/arm-cosmosdb/src/models/index.ts index b939a9d0266fa..6aa39ee333db2 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/models/index.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/models/index.ts @@ -12,6 +12,11 @@ export type BackupPolicyUnion = | BackupPolicy | PeriodicModeBackupPolicy | ContinuousModeBackupPolicy; +export type DataTransferDataSourceSinkUnion = + | DataTransferDataSourceSink + | CosmosCassandraDataTransferDataSourceSink + | CosmosSqlDataTransferDataSourceSink + | AzureBlobDataTransferDataSourceSink; export type ServiceResourcePropertiesUnion = | ServiceResourceProperties | DataTransferServiceResourceProperties @@ -19,39 +24,6 @@ export type ServiceResourcePropertiesUnion = | GraphAPIComputeServiceResourceProperties | MaterializedViewsBuilderServiceResourceProperties; -/** Identity for the resource. */ -export interface ManagedServiceIdentity { - /** - * The principal id of the system assigned identity. This property will only be provided for a system assigned identity. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly principalId?: string; - /** - * The tenant id of the system assigned identity. This property will only be provided for a system assigned identity. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly tenantId?: string; - /** The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service. */ - type?: ResourceIdentityType; - /** The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */ - userAssignedIdentities?: { - [propertyName: string]: Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties; - }; -} - -export interface Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties { - /** - * The principal id of user assigned identity. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly principalId?: string; - /** - * The client id of user assigned identity. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly clientId?: string; -} - /** IpAddressOrRange object */ export interface IpAddressOrRange { /** A single IPv4 address or a single IPv4 address range in CIDR format. Provided IPs must be well-formatted and cannot be contained in one of the following ranges: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, since these are not enforceable by the IP address filter. Example of valid inputs: “23.40.210.245” or “23.40.210.0/8”. */ @@ -169,22 +141,6 @@ export interface AnalyticalStorageConfiguration { schemaType?: AnalyticalStorageSchemaType; } -/** Parameters to indicate the information about the restore. */ -export interface RestoreParameters { - /** Describes the mode of the restore. */ - restoreMode?: RestoreMode; - /** The id of the restorable database account from which the restore has to be initiated. For example: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} */ - restoreSource?: string; - /** Time to which the account has to be restored (ISO-8601 format). */ - restoreTimestampInUtc?: Date; - /** List of specific databases available for restore. */ - databasesToRestore?: DatabaseRestoreResource[]; - /** List of specific gremlin databases available for restore. */ - gremlinDatabasesToRestore?: GremlinDatabaseRestoreResource[]; - /** List of specific tables available for restore. */ - tablesToRestore?: string[]; -} - /** Specific Databases to restore. */ export interface DatabaseRestoreResource { /** The name of the database available for restore. */ @@ -201,6 +157,14 @@ export interface GremlinDatabaseRestoreResource { graphNames?: string[]; } +/** Parameters to indicate the information about the restore. */ +export interface RestoreParametersBase { + /** The id of the restorable database account from which the restore has to be initiated. For example: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName} */ + restoreSource?: string; + /** Time to which the account has to be restored (ISO-8601 format). */ + restoreTimestampInUtc?: Date; +} + /** The object representing the policy for taking backups on an account. */ export interface BackupPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ @@ -233,6 +197,12 @@ export interface CorsPolicy { maxAgeInSeconds?: number; } +/** Indicates what diagnostic log settings are to be enabled. */ +export interface DiagnosticLogSettings { + /** Describe the level of detail with which queries are to be logged. */ + enableFullTextQuery?: EnableFullTextQuery; +} + /** The object that represents all properties related to capacity enforcement on an account. */ export interface Capacity { /** The total throughput limit imposed on the account. A totalThroughputLimit of 2000 imposes a strict limit of max throughput that can be provisioned on that account to be 2000. A totalThroughputLimit of -1 indicates no limits on provisioning of throughput. */ @@ -309,6 +279,41 @@ export interface ARMResourceProperties { location?: string; /** Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with "defaultExperience": "Cassandra". Current "defaultExperience" values also include "Table", "Graph", "DocumentDB", and "MongoDB". */ tags?: { [propertyName: string]: string }; + /** Identity for the resource. */ + identity?: ManagedServiceIdentity; +} + +/** Identity for the resource. */ +export interface ManagedServiceIdentity { + /** + * The principal id of the system assigned identity. This property will only be provided for a system assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The tenant id of the system assigned identity. This property will only be provided for a system assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly tenantId?: string; + /** The type of identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service. */ + type?: ResourceIdentityType; + /** The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */ + userAssignedIdentities?: { + [propertyName: string]: Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties; + }; +} + +export interface Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties { + /** + * The principal id of user assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly principalId?: string; + /** + * The client id of user assigned identity. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly clientId?: string; } /** Parameters for patching Azure Cosmos DB database account properties. */ @@ -363,10 +368,14 @@ export interface DatabaseAccountUpdateParameters { networkAclBypass?: NetworkAclBypass; /** An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account. */ networkAclBypassResourceIds?: string[]; + /** The Object representing the different Diagnostic log settings for the Cosmos DB Account. */ + diagnosticLogSettings?: DiagnosticLogSettings; /** Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication. */ disableLocalAuth?: boolean; /** The object that represents all properties related to capacity enforcement on an account. */ capacity?: Capacity; + /** Flag to indicate whether to enable MaterializedViews on the Cosmos DB account */ + enableMaterializedViews?: boolean; /** * This property is ignored during the update operation, as the metadata is read-only. The object represents the metadata for the Account Keys of the Cosmos DB account. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -374,6 +383,8 @@ export interface DatabaseAccountUpdateParameters { readonly keysMetadata?: DatabaseAccountKeysMetadata; /** Flag to indicate enabling/disabling of Partition Merge feature on the account */ enablePartitionMerge?: boolean; + /** Flag to indicate enabling/disabling of Burst Capacity Preview feature on the account */ + enableBurstCapacity?: boolean; /** Indicates the minimum allowed Tls version. The default is Tls 1.0, except for Cassandra and Mongo API's, which only work with Tls 1.2. */ minimalTlsVersion?: MinimalTlsVersion; } @@ -717,6 +728,42 @@ export interface MetricAvailability { readonly retention?: string; } +/** The List operation response, that contains the Graph resource and their properties. */ +export interface GraphResourcesListResult { + /** + * List of Graph resource and their properties. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: GraphResourceGetResults[]; +} + +/** Cosmos DB Graph resource object */ +export interface GraphResource { + /** Name of the Cosmos DB Graph */ + id: string; +} + +/** Cosmos DB options resource object */ +export interface OptionsResource { + /** Value of the Cosmos DB resource throughput or autoscaleSettings. Use the ThroughputSetting resource when retrieving offer details. */ + throughput?: number; + /** Specifies the Autoscale settings. */ + autoscaleSettings?: AutoscaleSettings; +} + +export interface AutoscaleSettings { + /** Represents maximum throughput, the resource can scale up to. */ + maxThroughput?: number; +} + +/** CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are "If-Match", "If-None-Match", "Session-Token" and "Throughput" */ +export interface CreateUpdateOptions { + /** Request Units per second. For example, "throughput": 10000. */ + throughput?: number; + /** Specifies the Autoscale settings. */ + autoscaleSettings?: AutoscaleSettings; +} + /** The List operation response, that contains the SQL databases and their properties. */ export interface SqlDatabaseListResult { /** @@ -730,6 +777,10 @@ export interface SqlDatabaseListResult { export interface SqlDatabaseResource { /** Name of the Cosmos DB SQL database */ id: string; + /** Parameters to indicate the information about the restore */ + restoreParameters?: ResourceRestoreParameters; + /** Enum to indicate the mode of resource creation. */ + createMode?: CreateMode; } /** The system generated resource properties associated with SQL databases, SQL containers, Gremlin databases and Gremlin graphs. */ @@ -751,27 +802,6 @@ export interface ExtendedResourceProperties { readonly etag?: string; } -/** Cosmos DB options resource object */ -export interface OptionsResource { - /** Value of the Cosmos DB resource throughput or autoscaleSettings. Use the ThroughputSetting resource when retrieving offer details. */ - throughput?: number; - /** Specifies the Autoscale settings. */ - autoscaleSettings?: AutoscaleSettings; -} - -export interface AutoscaleSettings { - /** Represents maximum throughput, the resource can scale up to. */ - maxThroughput?: number; -} - -/** CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are "If-Match", "If-None-Match", "Session-Token" and "Throughput" */ -export interface CreateUpdateOptions { - /** Request Units per second. For example, "throughput": 10000. */ - throughput?: number; - /** Specifies the Autoscale settings. */ - autoscaleSettings?: AutoscaleSettings; -} - /** Cosmos DB resource throughput object. Either throughput is required or autoscaleSettings is required, but not both. */ export interface ThroughputSettingsResource { /** Value of the Cosmos DB resource throughput. Either throughput is required or autoscaleSettings is required, but not both. */ @@ -823,6 +853,64 @@ export interface CloudError { error?: ErrorResponse; } +/** The List operation response, that contains the client encryption keys and their properties. */ +export interface ClientEncryptionKeysListResult { + /** + * List of client encryption keys and their properties. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: ClientEncryptionKeyGetResults[]; +} + +/** Cosmos DB client encryption key resource object. */ +export interface ClientEncryptionKeyResource { + /** Name of the ClientEncryptionKey */ + id?: string; + /** Encryption algorithm that will be used along with this client encryption key to encrypt/decrypt data. */ + encryptionAlgorithm?: string; + /** Wrapped (encrypted) form of the key represented as a byte array. */ + wrappedDataEncryptionKey?: Uint8Array; + /** Metadata for the wrapping provider that can be used to unwrap the wrapped client encryption key. */ + keyWrapMetadata?: KeyWrapMetadata; +} + +/** Represents key wrap metadata that a key wrapping provider can use to wrap/unwrap a client encryption key. */ +export interface KeyWrapMetadata { + /** The name of associated KeyEncryptionKey (aka CustomerManagedKey). */ + name?: string; + /** ProviderName of KeyStoreProvider. */ + type?: string; + /** Reference / link to the KeyEncryptionKey. */ + value?: string; + /** Algorithm used in wrapping and unwrapping of the data encryption key. */ + algorithm?: string; +} + +/** The resource model definition for a ARM proxy resource. It will have everything other than required location and tags */ +export interface ARMProxyResource { + /** + * The unique resource identifier of the database account. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; + /** + * The name of the database account. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * The type of Azure resource. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; +} + +/** Parameters to create and update ClientEncryptionKey. */ +export interface ClientEncryptionKeyCreateUpdateParameters { + /** The standard JSON format of a ClientEncryptionKey */ + resource: ClientEncryptionKeyResource; +} + /** The List operation response, that contains the containers and their properties. */ export interface SqlContainerListResult { /** @@ -850,6 +938,10 @@ export interface SqlContainerResource { clientEncryptionPolicy?: ClientEncryptionPolicy; /** Analytical TTL. */ analyticalStorageTtl?: number; + /** Parameters to indicate the information about the restore */ + restoreParameters?: ResourceRestoreParameters; + /** Enum to indicate the mode of resource creation. */ + createMode?: CreateMode; } /** Cosmos DB indexing policy */ @@ -962,62 +1054,69 @@ export interface ClientEncryptionIncludedPath { encryptionAlgorithm: string; } -/** The List operation response, that contains the client encryption keys and their properties. */ -export interface ClientEncryptionKeysListResult { +/** The properties of an Azure Cosmos DB merge operations */ +export interface MergeParameters { + /** Specifies whether the operation is a real merge operation or a simulation. */ + isDryRun?: boolean; +} + +/** List of physical partitions and their properties returned by a merge operation. */ +export interface PhysicalPartitionStorageInfoCollection { /** - * List of client encryption keys and their properties. + * List of physical partitions and their properties. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: ClientEncryptionKeyGetResults[]; + readonly physicalPartitionStorageInfoCollection?: PhysicalPartitionStorageInfo[]; } -/** Cosmos DB client encryption key resource object. */ -export interface ClientEncryptionKeyResource { - /** Name of the ClientEncryptionKey */ - id?: string; - /** Encryption algorithm that will be used along with this client encryption key to encrypt/decrypt data. */ - encryptionAlgorithm?: string; - /** Wrapped (encrypted) form of the key represented as a byte array. */ - wrappedDataEncryptionKey?: Uint8Array; - /** Metadata for the wrapping provider that can be used to unwrap the wrapped client encryption key. */ - keyWrapMetadata?: KeyWrapMetadata; -} - -/** Represents key wrap metadata that a key wrapping provider can use to wrap/unwrap a client encryption key. */ -export interface KeyWrapMetadata { - /** The name of associated KeyEncryptionKey (aka CustomerManagedKey). */ - name?: string; - /** ProviderName of KeyStoreProvider. */ - type?: string; - /** Reference / link to the KeyEncryptionKey. */ - value?: string; - /** Algorithm used in wrapping and unwrapping of the data encryption key. */ - algorithm?: string; -} - -/** The resource model definition for a ARM proxy resource. It will have everything other than required location and tags */ -export interface ARMProxyResource { +/** The storage of a physical partition */ +export interface PhysicalPartitionStorageInfo { /** - * The unique resource identifier of the database account. + * The unique identifier of the partition. * NOTE: This property will not be serialized. It can only be populated by the server. */ readonly id?: string; /** - * The name of the database account. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly name?: string; - /** - * The type of Azure resource. + * The storage in KB for the physical partition. * NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly type?: string; + readonly storageInKB?: number; } -/** Parameters to create and update ClientEncryptionKey. */ -export interface ClientEncryptionKeyCreateUpdateParameters { - /** The standard JSON format of a ClientEncryptionKey */ - resource: ClientEncryptionKeyResource; +/** Resource to retrieve throughput information for Cosmos DB resource */ +export interface RetrieveThroughputPropertiesResource { + /** Array of PhysicalPartitionId objects. */ + physicalPartitionIds: PhysicalPartitionId[]; +} + +/** PhysicalPartitionId object */ +export interface PhysicalPartitionId { + /** Id of a physical partition */ + id: string; +} + +/** The properties of an Azure Cosmos DB PhysicalPartitionThroughputInfoProperties object */ +export interface PhysicalPartitionThroughputInfoProperties { + /** Array of physical partition throughput info objects */ + physicalPartitionThroughputInfo?: PhysicalPartitionThroughputInfoResource[]; +} + +/** PhysicalPartitionThroughputInfo object */ +export interface PhysicalPartitionThroughputInfoResource { + /** Id of a physical partition */ + id: string; + /** Throughput of a physical partition */ + throughput?: number; +} + +/** Resource to redistribute throughput for Azure Cosmos DB resource */ +export interface RedistributeThroughputPropertiesResource { + /** ThroughputPolicy to apply for throughput redistribution */ + throughputPolicy: ThroughputPolicyType; + /** Array of PhysicalPartitionThroughputInfoResource objects. */ + targetPhysicalPartitionThroughputInfo: PhysicalPartitionThroughputInfoResource[]; + /** Array of PhysicalPartitionThroughputInfoResource objects. */ + sourcePhysicalPartitionThroughputInfo: PhysicalPartitionThroughputInfoResource[]; } /** The List operation response, that contains the storedProcedures and their properties. */ @@ -1088,6 +1187,10 @@ export interface MongoDBDatabaseListResult { export interface MongoDBDatabaseResource { /** Name of the Cosmos DB MongoDB database */ id: string; + /** Parameters to indicate the information about the restore */ + restoreParameters?: ResourceRestoreParameters; + /** Enum to indicate the mode of resource creation. */ + createMode?: CreateMode; } /** The List operation response, that contains the MongoDB collections and their properties. */ @@ -1109,6 +1212,10 @@ export interface MongoDBCollectionResource { indexes?: MongoIndex[]; /** Analytical TTL. */ analyticalStorageTtl?: number; + /** Parameters to indicate the information about the restore */ + restoreParameters?: ResourceRestoreParameters; + /** Enum to indicate the mode of resource creation. */ + createMode?: CreateMode; } /** Cosmos DB MongoDB collection index key */ @@ -1146,6 +1253,10 @@ export interface TableListResult { export interface TableResource { /** Name of the Cosmos DB table */ id: string; + /** Parameters to indicate the information about the restore */ + restoreParameters?: ResourceRestoreParameters; + /** Enum to indicate the mode of resource creation. */ + createMode?: CreateMode; } /** The List operation response, that contains the Cassandra keyspaces and their properties. */ @@ -1229,6 +1340,10 @@ export interface GremlinDatabaseListResult { export interface GremlinDatabaseResource { /** Name of the Cosmos DB Gremlin database */ id: string; + /** Parameters to indicate the information about the restore */ + restoreParameters?: ResourceRestoreParameters; + /** Enum to indicate the mode of resource creation. */ + createMode?: CreateMode; } /** The List operation response, that contains the graphs and their properties. */ @@ -1256,6 +1371,10 @@ export interface GremlinGraphResource { conflictResolutionPolicy?: ConflictResolutionPolicy; /** Analytical TTL. */ analyticalStorageTtl?: number; + /** Parameters to indicate the information about the restore */ + restoreParameters?: ResourceRestoreParameters; + /** Enum to indicate the mode of resource creation. */ + createMode?: CreateMode; } /** The List operation response, that contains Cosmos DB locations and their properties. */ @@ -1269,6 +1388,11 @@ export interface LocationListResult { /** Cosmos DB location metadata */ export interface LocationProperties { + /** + * The current status of location in Azure. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly status?: string; /** * Flag indicating whether the location supports availability zones or not. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -1286,6 +1410,83 @@ export interface LocationProperties { readonly backupStorageRedundancies?: BackupStorageRedundancy[]; } +/** The List operation response, that contains the Cassandra views and their properties. */ +export interface CassandraViewListResult { + /** + * List of Cassandra views and their properties. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: CassandraViewGetResults[]; +} + +/** Cosmos DB Cassandra view resource object */ +export interface CassandraViewResource { + /** Name of the Cosmos DB Cassandra view */ + id: string; + /** View Definition of the Cosmos DB Cassandra view */ + viewDefinition: string; +} + +/** The properties of a DataTransfer Job */ +export interface DataTransferJobProperties { + /** + * Job Name + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly jobName?: string; + /** Source DataStore details */ + source: DataTransferDataSourceSinkUnion; + /** Destination DataStore details */ + destination: DataTransferDataSourceSinkUnion; + /** + * Job Status + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly status?: string; + /** + * Processed Count. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly processedCount?: number; + /** + * Total Count. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly totalCount?: number; + /** + * Last Updated Time (ISO-8601 format). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastUpdatedUtcTime?: Date; + /** Worker count */ + workerCount?: number; + /** + * Error response for Faulted job + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly error?: ErrorResponse; +} + +/** Base class for all DataTransfer source/sink */ +export interface DataTransferDataSourceSink { + /** Polymorphic discriminator, which specifies the different types this object can be */ + component: "CosmosDBCassandra" | "CosmosDBSql" | "AzureBlobStorage"; +} + +/** The List operation response, that contains the Data Transfer jobs and their properties. */ +export interface DataTransferJobFeedResults { + /** + * List of Data Transfer jobs and their properties. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: DataTransferJobGetResults[]; + /** + * URL to get the next set of Data Transfer job list results if there are any. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + /** List of managed Cassandra clusters. */ export interface ListClusters { /** Container for the array of clusters. */ @@ -1304,7 +1505,7 @@ export interface ClusterResourceProperties { cassandraVersion?: string; /** If you need to set the clusterName property in cassandra.yaml to something besides the resource name of the cluster, set the value to use on this property. */ clusterNameOverride?: string; - /** Which authentication method Cassandra should use to authenticate clients. 'None' turns off authentication, so should not be used except in emergencies. 'Cassandra' is the default password based authentication. The default is 'Cassandra'. */ + /** Which authentication method Cassandra should use to authenticate clients. 'None' turns off authentication, so should not be used except in emergencies. 'Cassandra' is the default password based authentication. The default is 'Cassandra'. 'Ldap' is in preview. */ authenticationMethod?: AuthenticationMethod; /** Initial password for clients connecting as admin to the cluster. Should be changed after cluster creation. Returns null on GET. This field only applies when the authenticationMethod field is 'Cassandra'. */ initialCassandraAdminPassword?: string; @@ -1407,6 +1608,20 @@ export interface CommandOutput { commandOutput?: string; } +/** List of restorable backups for a Cassandra cluster. */ +export interface ListBackups { + /** + * Container for array of backups. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly value?: BackupResource[]; +} + +export interface BackupResourceProperties { + /** The time this backup was taken, formatted like 2021-01-21T17:35:21 */ + timestamp?: Date; +} + /** List of managed Cassandra data centers and their properties. */ export interface ListDataCenters { /** @@ -1443,8 +1658,27 @@ export interface DataCenterResourceProperties { diskSku?: string; /** Number of disk used for data centers. Default value is 4. */ diskCapacity?: number; - /** If the azure data center has Availability Zone support, apply it to the Virtual Machine ScaleSet that host the cassandra data center virtual machines. */ + /** If the data center has Availability Zone feature, apply it to the Virtual Machine ScaleSet that host the cassandra data center virtual machines. */ availabilityZone?: boolean; + /** Ldap authentication method properties. This feature is in preview. */ + authenticationMethodLdapProperties?: AuthenticationMethodLdapProperties; +} + +/** Ldap authentication method properties. This feature is in preview. */ +export interface AuthenticationMethodLdapProperties { + /** Hostname of the LDAP server. */ + serverHostname?: string; + /** Port of the LDAP server. */ + serverPort?: number; + /** Distinguished name of the look up user account, who can look up user details on authentication. */ + serviceUserDistinguishedName?: string; + /** Password of the look up user. */ + serviceUserPassword?: string; + /** Distinguished name of the object to start the recursive search of users from. */ + searchBaseDistinguishedName?: string; + /** Template to use for searching. Defaults to (cn=%s) where %s will be replaced by the username used to login. */ + searchFilterTemplate?: string; + serverCertificates?: Certificate[]; } /** Properties of a managed Cassandra cluster public status. */ @@ -1486,37 +1720,232 @@ export interface CassandraClusterPublicStatusDataCentersItem { nodes?: ComponentsM9L909SchemasCassandraclusterpublicstatusPropertiesDatacentersItemsPropertiesNodesItems[]; } -export interface ComponentsM9L909SchemasCassandraclusterpublicstatusPropertiesDatacentersItemsPropertiesNodesItems { - /** The node's IP address. */ - address?: string; - /** The state of the node in Cassandra ring. */ - state?: NodeState; - status?: string; - /** The amount of file system data in the data directory (e.g., 47.66 kB), excluding all content in the snapshots subdirectories. Because all SSTable data files are included, any data that is not cleaned up (such as TTL-expired cells or tombstones) is counted. */ - load?: string; - /** List of tokens this node covers. */ - tokens?: string[]; - size?: number; - /** The network ID of the node. */ - hostID?: string; - /** The rack this node is part of. */ - rack?: string; - /** The timestamp when these statistics were captured. */ - timestamp?: string; - /** The amount of disk used, in kB, of the directory /var/lib/cassandra. */ - diskUsedKB?: number; - /** The amount of disk free, in kB, of the directory /var/lib/cassandra. */ - diskFreeKB?: number; - /** Used memory (calculated as total - free - buffers - cache), in kB. */ - memoryUsedKB?: number; - /** Memory used by kernel buffers (Buffers in /proc/meminfo) and page cache and slabs (Cached and SReclaimable in /proc/meminfo), in kB. */ - memoryBuffersAndCachedKB?: number; - /** Unused memory (MemFree and SwapFree in /proc/meminfo), in kB. */ - memoryFreeKB?: number; - /** Total installed memory (MemTotal and SwapTotal in /proc/meminfo), in kB. */ - memoryTotalKB?: number; - /** A float representing the current system-wide CPU utilization as a percentage. */ - cpuUsage?: number; +export interface ComponentsM9L909SchemasCassandraclusterpublicstatusPropertiesDatacentersItemsPropertiesNodesItems { + /** The node's IP address. */ + address?: string; + /** The state of the node in Cassandra ring. */ + state?: NodeState; + status?: string; + /** The amount of file system data in the data directory (e.g., 47.66 kB), excluding all content in the snapshots subdirectories. Because all SSTable data files are included, any data that is not cleaned up (such as TTL-expired cells or tombstones) is counted. */ + load?: string; + /** List of tokens this node covers. */ + tokens?: string[]; + size?: number; + /** The network ID of the node. */ + hostID?: string; + /** The rack this node is part of. */ + rack?: string; + /** The timestamp at which that snapshot of these usage statistics were taken. */ + timestamp?: string; + /** The amount of disk used, in kB, of the directory /var/lib/cassandra. */ + diskUsedKB?: number; + /** The amount of disk free, in kB, of the directory /var/lib/cassandra. */ + diskFreeKB?: number; + /** Used memory (calculated as total - free - buffers - cache), in kB. */ + memoryUsedKB?: number; + /** Memory used by kernel buffers (Buffers in /proc/meminfo) and page cache and slabs (Cached and SReclaimable in /proc/meminfo), in kB. */ + memoryBuffersAndCachedKB?: number; + /** Unused memory (MemFree and SwapFree in /proc/meminfo), in kB. */ + memoryFreeKB?: number; + /** Total installed memory (MemTotal and SwapTotal in /proc/meminfo), in kB. */ + memoryTotalKB?: number; + /** A float representing the current system-wide CPU utilization as a percentage. */ + cpuUsage?: number; +} + +/** A list of mongo clusters. */ +export interface MongoClusterListResult { + /** The list of mongo clusters */ + value?: MongoCluster[]; + /** + * The link used to get the next page of results. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + +/** Parameters used for restore operations */ +export interface MongoClusterRestoreParameters { + /** UTC point in time to restore a mongo cluster */ + pointInTimeUTC?: Date; + /** Resource ID to locate the source cluster to restore */ + sourceResourceId?: string; +} + +/** The properties of the node group on a cluster. */ +export interface NodeGroupProperties { + /** The resource sku for the node group. This defines the size of CPU and memory that is provisioned for each node. Example values: 'M30', 'M40'. */ + sku?: string; + /** The disk storage size for the node group in GB. Example values: 128, 256, 512, 1024. */ + diskSizeGB?: number; + /** Whether high availability is enabled on the node group. */ + enableHa?: boolean; +} + +/** Common fields that are returned in the response for all Azure Resource Manager resources */ +export interface ResourceAutoGenerated { + /** + * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly id?: string; + /** + * The name of the resource + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly name?: string; + /** + * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly type?: string; + /** + * Azure Resource Manager metadata containing createdBy and modifiedBy information. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly systemData?: SystemData; +} + +/** 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 ErrorResponseAutoGenerated { + /** 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; +} + +/** Represents a mongo cluster resource for updates. */ +export interface MongoClusterUpdate { + /** Application-specific metadata in the form of key-value pairs. */ + tags?: { [propertyName: string]: string }; + /** The mode to create a mongo cluster. */ + createMode?: CreateMode; + /** Parameters used for restore operations */ + restoreParameters?: MongoClusterRestoreParameters; + /** The administrator's login for the mongo cluster. */ + administratorLogin?: string; + /** + * The password of the administrator login. + * This value contains a credential. Consider obscuring before showing to users + */ + administratorLoginPassword?: string; + /** The Mongo DB server version. Defaults to the latest available version if not specified. */ + serverVersion?: string; + /** + * The default mongo connection string for the cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly connectionString?: string; + /** + * Earliest restore timestamp in UTC ISO8601 format. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly earliestRestoreTime?: string; + /** + * A provisioning state of the mongo cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; + /** + * A status of the mongo cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly clusterStatus?: MongoClusterStatus; + /** The list of node group specs in the cluster. */ + nodeGroupSpecs?: NodeGroupSpec[]; +} + +/** A list of firewall rules. */ +export interface FirewallRuleListResult { + /** The list of firewall rules in a mongo cluster. */ + value?: FirewallRule[]; + /** + * The link used to get the next page of results. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly nextLink?: string; +} + +/** The check availability request body. */ +export interface CheckNameAvailabilityRequest { + /** The name of the resource for which availability needs to be checked. */ + name?: string; + /** The resource type. */ + type?: string; +} + +/** The check availability result. */ +export interface CheckNameAvailabilityResponse { + /** Indicates if the resource name is available. */ + nameAvailable?: boolean; + /** The reason why the given name is not available. */ + reason?: CheckNameAvailabilityReason; + /** Detailed reason why the given name is available. */ + message?: string; +} + +/** The connection strings for the given mongo cluster. */ +export interface ListConnectionStringsResult { + /** + * An array that contains the connection strings for a mongo cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly connectionStrings?: ConnectionString[]; +} + +/** Connection string for the mongo cluster */ +export interface ConnectionString { + /** + * Value of the connection string + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly connectionString?: string; + /** + * Description of the connection string + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly description?: string; } /** The set of data plane operations permitted through this Role Definition. */ @@ -1703,6 +2132,8 @@ export interface RestorableDatabaseAccountGetResult { accountName?: string; /** The creation time of the restorable database account (ISO-8601 format). */ creationTime?: Date; + /** The least recent time at which the database account can be restored to (ISO-8601 format). */ + oldestRestorableTime?: Date; /** The time at which the restorable database account has been deleted (ISO-8601 format). */ deletionTime?: Date; /** @@ -2358,6 +2789,12 @@ export interface PeriodicModeProperties { backupStorageRedundancy?: BackupStorageRedundancy; } +/** Configuration values for periodic mode backup */ +export interface ContinuousModeProperties { + /** Enum to indicate type of Continuos backup mode */ + tier?: ContinuousTier; +} + /** Describes the service response property. */ export interface DataTransferServiceResource { /** Properties for DataTransferServiceResource. */ @@ -2404,6 +2841,23 @@ export interface MaterializedViewsBuilderServiceResource { /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ export interface ProxyResource extends Resource {} +/** Parameters to indicate the information about the restore. */ +export interface RestoreParameters extends RestoreParametersBase { + /** Describes the mode of the restore. */ + restoreMode?: RestoreMode; + /** List of specific databases available for restore. */ + databasesToRestore?: DatabaseRestoreResource[]; + /** List of specific gremlin databases available for restore. */ + gremlinDatabasesToRestore?: GremlinDatabaseRestoreResource[]; + /** List of specific tables available for restore. */ + tablesToRestore?: string[]; + /** The source backup location for restore. */ + sourceBackupLocation?: string; +} + +/** Parameters to indicate the information about the restore. */ +export interface ResourceRestoreParameters extends RestoreParametersBase {} + /** The object representing periodic mode backup policy. */ export interface PeriodicModeBackupPolicy extends BackupPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ @@ -2416,14 +2870,14 @@ export interface PeriodicModeBackupPolicy extends BackupPolicy { export interface ContinuousModeBackupPolicy extends BackupPolicy { /** Polymorphic discriminator, which specifies the different types this object can be */ type: "Continuous"; + /** Configuration values for continuous mode backup */ + continuousModeProperties?: ContinuousModeProperties; } /** An Azure Cosmos DB database account. */ export interface DatabaseAccountGetResults extends ARMResourceProperties { /** Indicates the type of database account. This can only be set at database account creation. */ kind?: DatabaseAccountKind; - /** Identity for the resource. */ - identity?: ManagedServiceIdentity; /** * The system meta data relating to this resource. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -2520,10 +2974,14 @@ export interface DatabaseAccountGetResults extends ARMResourceProperties { networkAclBypass?: NetworkAclBypass; /** An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account. */ networkAclBypassResourceIds?: string[]; + /** The Object representing the different Diagnostic log settings for the Cosmos DB Account. */ + diagnosticLogSettings?: DiagnosticLogSettings; /** Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication. */ disableLocalAuth?: boolean; /** The object that represents all properties related to capacity enforcement on an account. */ capacity?: Capacity; + /** Flag to indicate whether to enable MaterializedViews on the Cosmos DB account */ + enableMaterializedViews?: boolean; /** * The object that represents the metadata for the Account Keys of the Cosmos DB account. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -2531,6 +2989,8 @@ export interface DatabaseAccountGetResults extends ARMResourceProperties { readonly keysMetadata?: DatabaseAccountKeysMetadata; /** Flag to indicate enabling/disabling of Partition Merge feature on the account */ enablePartitionMerge?: boolean; + /** Flag to indicate enabling/disabling of Burst Capacity Preview feature on the account */ + enableBurstCapacity?: boolean; /** Indicates the minimum allowed Tls version. The default is Tls 1.0, except for Cassandra and Mongo API's, which only work with Tls 1.2. */ minimalTlsVersion?: MinimalTlsVersion; } @@ -2540,8 +3000,6 @@ export interface DatabaseAccountCreateUpdateParameters extends ARMResourceProperties { /** Indicates the type of database account. This can only be set at database account creation. */ kind?: DatabaseAccountKind; - /** Identity for the resource. */ - identity?: ManagedServiceIdentity; /** The consistency policy for the Cosmos DB account. */ consistencyPolicy?: ConsistencyPolicy; /** An array that contains the georeplication locations enabled for the Cosmos DB account. */ @@ -2590,12 +3048,16 @@ export interface DatabaseAccountCreateUpdateParameters networkAclBypass?: NetworkAclBypass; /** An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account. */ networkAclBypassResourceIds?: string[]; + /** The Object representing the different Diagnostic log settings for the Cosmos DB Account. */ + diagnosticLogSettings?: DiagnosticLogSettings; /** Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication. */ disableLocalAuth?: boolean; /** Parameters to indicate the information about the restore. */ restoreParameters?: RestoreParameters; /** The object that represents all properties related to capacity enforcement on an account. */ capacity?: Capacity; + /** Flag to indicate whether to enable MaterializedViews on the Cosmos DB account */ + enableMaterializedViews?: boolean; /** * This property is ignored during the update/create operation, as the metadata is read-only. The object represents the metadata for the Account Keys of the Cosmos DB account. * NOTE: This property will not be serialized. It can only be populated by the server. @@ -2603,10 +3065,27 @@ export interface DatabaseAccountCreateUpdateParameters readonly keysMetadata?: DatabaseAccountKeysMetadata; /** Flag to indicate enabling/disabling of Partition Merge feature on the account */ enablePartitionMerge?: boolean; + /** Flag to indicate enabling/disabling of Burst Capacity Preview feature on the account */ + enableBurstCapacity?: boolean; /** Indicates the minimum allowed Tls version. The default is Tls 1.0, except for Cassandra and Mongo API's, which only work with Tls 1.2. */ minimalTlsVersion?: MinimalTlsVersion; } +/** An Azure Cosmos DB Graph resource. */ +export interface GraphResourceGetResults extends ARMResourceProperties { + resource?: GraphResourceGetPropertiesResource; + options?: GraphResourceGetPropertiesOptions; +} + +/** Parameters to create and update Cosmos DB Graph resource. */ +export interface GraphResourceCreateUpdateParameters + extends ARMResourceProperties { + /** The standard JSON format of a Graph resource */ + resource: GraphResource; + /** A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request. */ + options?: CreateUpdateOptions; +} + /** An Azure Cosmos DB SQL database. */ export interface SqlDatabaseGetResults extends ARMResourceProperties { resource?: SqlDatabaseGetPropertiesResource; @@ -2649,6 +3128,26 @@ export interface SqlContainerCreateUpdateParameters options?: CreateUpdateOptions; } +/** Cosmos DB retrieve throughput parameters object */ +export interface RetrieveThroughputParameters extends ARMResourceProperties { + /** The standard JSON format of a resource throughput */ + resource: RetrieveThroughputPropertiesResource; +} + +/** An Azure Cosmos DB PhysicalPartitionThroughputInfoResult object. */ +export interface PhysicalPartitionThroughputInfoResult + extends ARMResourceProperties { + /** properties of physical partition throughput info */ + resource?: PhysicalPartitionThroughputInfoResultPropertiesResource; +} + +/** Cosmos DB redistribute throughput parameters object */ +export interface RedistributeThroughputParameters + extends ARMResourceProperties { + /** The standard JSON format of a resource throughput */ + resource: RedistributeThroughputPropertiesResource; +} + /** An Azure Cosmos DB storedProcedure. */ export interface SqlStoredProcedureGetResults extends ARMResourceProperties { resource?: SqlStoredProcedureGetPropertiesResource; @@ -2796,6 +3295,21 @@ export interface GremlinGraphCreateUpdateParameters options?: CreateUpdateOptions; } +/** An Azure Cosmos DB Cassandra view. */ +export interface CassandraViewGetResults extends ARMResourceProperties { + resource?: CassandraViewGetPropertiesResource; + options?: CassandraViewGetPropertiesOptions; +} + +/** Parameters to create and update Cosmos DB Cassandra view. */ +export interface CassandraViewCreateUpdateParameters + extends ARMResourceProperties { + /** The standard JSON format of a Cassandra view */ + resource: CassandraViewResource; + /** A key-value pair of options to be applied for the request. This corresponds to the headers sent with the request. */ + options?: CreateUpdateOptions; +} + /** The access keys for the given database account. */ export interface DatabaseAccountListKeysResult extends DatabaseAccountListReadOnlyKeysResult { @@ -2878,6 +3392,32 @@ export interface PartitionUsage extends Usage { readonly partitionKeyRangeId?: string; } +export interface GraphResourceGetPropertiesResource extends GraphResource {} + +export interface GraphResourceGetPropertiesOptions extends OptionsResource {} + +export interface SqlDatabaseGetPropertiesOptions extends OptionsResource {} + +export interface SqlContainerGetPropertiesOptions extends OptionsResource {} + +export interface MongoDBDatabaseGetPropertiesOptions extends OptionsResource {} + +export interface MongoDBCollectionGetPropertiesOptions + extends OptionsResource {} + +export interface TableGetPropertiesOptions extends OptionsResource {} + +export interface CassandraKeyspaceGetPropertiesOptions + extends OptionsResource {} + +export interface CassandraTableGetPropertiesOptions extends OptionsResource {} + +export interface GremlinDatabaseGetPropertiesOptions extends OptionsResource {} + +export interface GremlinGraphGetPropertiesOptions extends OptionsResource {} + +export interface CassandraViewGetPropertiesOptions extends OptionsResource {} + export interface SqlDatabaseGetPropertiesResource extends SqlDatabaseResource, ExtendedResourceProperties { @@ -2912,14 +3452,14 @@ export interface ThroughputSettingsGetPropertiesResource extends ThroughputSettingsResource, ExtendedResourceProperties {} -export interface SqlContainerGetPropertiesResource - extends SqlContainerResource, - ExtendedResourceProperties {} - export interface ClientEncryptionKeyGetPropertiesResource extends ClientEncryptionKeyResource, ExtendedResourceProperties {} +export interface SqlContainerGetPropertiesResource + extends SqlContainerResource, + ExtendedResourceProperties {} + export interface SqlStoredProcedureGetPropertiesResource extends SqlStoredProcedureResource, ExtendedResourceProperties {} @@ -2960,6 +3500,10 @@ export interface GremlinGraphGetPropertiesResource extends GremlinGraphResource, ExtendedResourceProperties {} +export interface CassandraViewGetPropertiesResource + extends CassandraViewResource, + ExtendedResourceProperties {} + /** Cosmos DB SQL container resource object */ export interface RestorableSqlContainerPropertiesResourceContainer extends SqlContainerResource, @@ -2971,26 +3515,6 @@ export interface RestorableSqlContainerPropertiesResourceContainer readonly self?: string; } -export interface SqlDatabaseGetPropertiesOptions extends OptionsResource {} - -export interface SqlContainerGetPropertiesOptions extends OptionsResource {} - -export interface MongoDBDatabaseGetPropertiesOptions extends OptionsResource {} - -export interface MongoDBCollectionGetPropertiesOptions - extends OptionsResource {} - -export interface TableGetPropertiesOptions extends OptionsResource {} - -export interface CassandraKeyspaceGetPropertiesOptions - extends OptionsResource {} - -export interface CassandraTableGetPropertiesOptions extends OptionsResource {} - -export interface GremlinDatabaseGetPropertiesOptions extends OptionsResource {} - -export interface GremlinGraphGetPropertiesOptions extends OptionsResource {} - /** Client Encryption Key. */ export interface ClientEncryptionKeyGetResults extends ARMProxyResource { resource?: ClientEncryptionKeyGetPropertiesResource; @@ -3002,6 +3526,57 @@ export interface LocationGetResult extends ARMProxyResource { properties?: LocationProperties; } +/** Parameters to create Data Transfer Job */ +export interface CreateJobRequest extends ARMProxyResource { + /** Data Transfer Create Job Properties */ + properties: DataTransferJobProperties; +} + +/** A Cosmos DB Data Transfer Job */ +export interface DataTransferJobGetResults extends ARMProxyResource { + /** + * Job Name + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly jobName?: string; + /** Source DataStore details */ + source?: DataTransferDataSourceSinkUnion; + /** Destination DataStore details */ + destination?: DataTransferDataSourceSinkUnion; + /** + * Job Status + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly status?: string; + /** + * Processed Count. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly processedCount?: number; + /** + * Total Count. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly totalCount?: number; + /** + * Last Updated Time (ISO-8601 format). + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly lastUpdatedUtcTime?: Date; + /** Worker count */ + workerCount?: number; + /** + * Error response for Faulted job + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly error?: ErrorResponse; +} + +/** A restorable backup of a Cassandra cluster. */ +export interface BackupResource extends ARMProxyResource { + properties?: BackupResourceProperties; +} + /** A managed Cassandra data center. */ export interface DataCenterResource extends ARMProxyResource { /** Properties of a managed Cassandra data center. */ @@ -3103,12 +3678,62 @@ export interface ServiceResource extends ARMProxyResource { properties?: ServiceResourcePropertiesUnion; } +/** properties of physical partition throughput info */ +export interface PhysicalPartitionThroughputInfoResultPropertiesResource + extends PhysicalPartitionThroughputInfoProperties {} + +/** A CosmosDB Cassandra API data source/sink */ +export interface CosmosCassandraDataTransferDataSourceSink + extends DataTransferDataSourceSink { + /** Polymorphic discriminator, which specifies the different types this object can be */ + component: "CosmosDBCassandra"; + keyspaceName: string; + tableName: string; +} + +/** A CosmosDB Cassandra API data source/sink */ +export interface CosmosSqlDataTransferDataSourceSink + extends DataTransferDataSourceSink { + /** Polymorphic discriminator, which specifies the different types this object can be */ + component: "CosmosDBSql"; + databaseName: string; + containerName: string; +} + +/** An Azure Blob Storage data source/sink */ +export interface AzureBlobDataTransferDataSourceSink + extends DataTransferDataSourceSink { + /** Polymorphic discriminator, which specifies the different types this object can be */ + component: "AzureBlobStorage"; + containerName: string; + endpointUrl?: string; +} + /** Representation of a managed Cassandra cluster. */ export interface ClusterResource extends ManagedCassandraARMResourceProperties { /** Properties of a managed Cassandra cluster. */ properties?: ClusterResourceProperties; } +/** Specification for a node group. */ +export interface NodeGroupSpec extends NodeGroupProperties { + /** The node type deployed in the node group. */ + kind?: NodeKind; + /** The number of nodes in the node group. */ + nodeCount?: number; +} + +/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ +export interface TrackedResource extends ResourceAutoGenerated { + /** Resource tags. */ + tags?: { [propertyName: string]: string }; + /** The geo-location where the resource lives */ + location: string; +} + +/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ +export interface ProxyResourceAutoGenerated extends ResourceAutoGenerated {} + /** Properties for DataTransferServiceResource. */ export interface DataTransferServiceResourceProperties extends ServiceResourceProperties { @@ -3201,6 +3826,58 @@ export interface PrivateEndpointConnection extends ProxyResource { provisioningState?: string; } +/** Represents a mongo cluster resource. */ +export interface MongoCluster extends TrackedResource { + /** The mode to create a mongo cluster. */ + createMode?: CreateMode; + /** Parameters used for restore operations */ + restoreParameters?: MongoClusterRestoreParameters; + /** The administrator's login for the mongo cluster. */ + administratorLogin?: string; + /** + * The password of the administrator login. + * This value contains a credential. Consider obscuring before showing to users + */ + administratorLoginPassword?: string; + /** The Mongo DB server version. Defaults to the latest available version if not specified. */ + serverVersion?: string; + /** + * The default mongo connection string for the cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly connectionString?: string; + /** + * Earliest restore timestamp in UTC ISO8601 format. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly earliestRestoreTime?: string; + /** + * A provisioning state of the mongo cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; + /** + * A status of the mongo cluster. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly clusterStatus?: MongoClusterStatus; + /** The list of node group specs in the cluster. */ + nodeGroupSpecs?: NodeGroupSpec[]; +} + +/** Represents a mongo cluster firewall rule. */ +export interface FirewallRule extends ProxyResourceAutoGenerated { + /** + * The provisioning state of the firewall rule. + * NOTE: This property will not be serialized. It can only be populated by the server. + */ + readonly provisioningState?: ProvisioningState; + /** The start IP address of the mongo cluster firewall rule. Must be IPv4 format. */ + startIpAddress: string; + /** The end IP address of the mongo cluster firewall rule. Must be IPv4 format. */ + endIpAddress: string; +} + /** Defines headers for DatabaseAccounts_delete operation. */ export interface DatabaseAccountsDeleteHeaders { /** URI to poll for completion status. */ @@ -3241,6 +3918,22 @@ export interface DatabaseAccountsRegenerateKeyHeaders { location?: string; } +/** Defines headers for GraphResources_createUpdateGraph operation. */ +export interface GraphResourcesCreateUpdateGraphHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for GraphResources_deleteGraphResource operation. */ +export interface GraphResourcesDeleteGraphResourceHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + /** Defines headers for SqlResources_createUpdateSqlDatabase operation. */ export interface SqlResourcesCreateUpdateSqlDatabaseHeaders { /** URI to poll for completion status. */ @@ -3281,6 +3974,14 @@ export interface SqlResourcesMigrateSqlDatabaseToManualThroughputHeaders { location?: string; } +/** Defines headers for SqlResources_createUpdateClientEncryptionKey operation. */ +export interface SqlResourcesCreateUpdateClientEncryptionKeyHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + /** Defines headers for SqlResources_createUpdateSqlContainer operation. */ export interface SqlResourcesCreateUpdateSqlContainerHeaders { /** URI to poll for completion status. */ @@ -3297,32 +3998,64 @@ export interface SqlResourcesDeleteSqlContainerHeaders { location?: string; } -/** Defines headers for SqlResources_updateSqlContainerThroughput operation. */ -export interface SqlResourcesUpdateSqlContainerThroughputHeaders { +/** Defines headers for SqlResources_listSqlContainerPartitionMerge operation. */ +export interface SqlResourcesListSqlContainerPartitionMergeHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for SqlResources_updateSqlContainerThroughput operation. */ +export interface SqlResourcesUpdateSqlContainerThroughputHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for SqlResources_migrateSqlContainerToAutoscale operation. */ +export interface SqlResourcesMigrateSqlContainerToAutoscaleHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for SqlResources_migrateSqlContainerToManualThroughput operation. */ +export interface SqlResourcesMigrateSqlContainerToManualThroughputHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for SqlResources_sqlDatabaseRetrieveThroughputDistribution operation. */ +export interface SqlResourcesSqlDatabaseRetrieveThroughputDistributionHeaders { /** URI to poll for completion status. */ azureAsyncOperation?: string; /** URI to poll for completion status. */ location?: string; } -/** Defines headers for SqlResources_migrateSqlContainerToAutoscale operation. */ -export interface SqlResourcesMigrateSqlContainerToAutoscaleHeaders { +/** Defines headers for SqlResources_sqlDatabaseRedistributeThroughput operation. */ +export interface SqlResourcesSqlDatabaseRedistributeThroughputHeaders { /** URI to poll for completion status. */ azureAsyncOperation?: string; /** URI to poll for completion status. */ location?: string; } -/** Defines headers for SqlResources_migrateSqlContainerToManualThroughput operation. */ -export interface SqlResourcesMigrateSqlContainerToManualThroughputHeaders { +/** Defines headers for SqlResources_sqlContainerRetrieveThroughputDistribution operation. */ +export interface SqlResourcesSqlContainerRetrieveThroughputDistributionHeaders { /** URI to poll for completion status. */ azureAsyncOperation?: string; /** URI to poll for completion status. */ location?: string; } -/** Defines headers for SqlResources_createUpdateClientEncryptionKey operation. */ -export interface SqlResourcesCreateUpdateClientEncryptionKeyHeaders { +/** Defines headers for SqlResources_sqlContainerRedistributeThroughput operation. */ +export interface SqlResourcesSqlContainerRedistributeThroughputHeaders { /** URI to poll for completion status. */ azureAsyncOperation?: string; /** URI to poll for completion status. */ @@ -3417,6 +4150,38 @@ export interface MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputHeaders location?: string; } +/** Defines headers for MongoDBResources_mongoDBDatabaseRetrieveThroughputDistribution operation. */ +export interface MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for MongoDBResources_mongoDBDatabaseRedistributeThroughput operation. */ +export interface MongoDBResourcesMongoDBDatabaseRedistributeThroughputHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for MongoDBResources_mongoDBContainerRetrieveThroughputDistribution operation. */ +export interface MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for MongoDBResources_mongoDBContainerRedistributeThroughput operation. */ +export interface MongoDBResourcesMongoDBContainerRedistributeThroughputHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + /** Defines headers for MongoDBResources_createUpdateMongoDBCollection operation. */ export interface MongoDBResourcesCreateUpdateMongoDBCollectionHeaders { /** URI to poll for completion status. */ @@ -3433,6 +4198,14 @@ export interface MongoDBResourcesDeleteMongoDBCollectionHeaders { location?: string; } +/** Defines headers for MongoDBResources_listMongoDBCollectionPartitionMerge operation. */ +export interface MongoDBResourcesListMongoDBCollectionPartitionMergeHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + /** Defines headers for MongoDBResources_updateMongoDBCollectionThroughput operation. */ export interface MongoDBResourcesUpdateMongoDBCollectionThroughputHeaders { /** URI to poll for completion status. */ @@ -3577,6 +4350,46 @@ export interface CassandraResourcesMigrateCassandraTableToManualThroughputHeader location?: string; } +/** Defines headers for CassandraResources_createUpdateCassandraView operation. */ +export interface CassandraResourcesCreateUpdateCassandraViewHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for CassandraResources_deleteCassandraView operation. */ +export interface CassandraResourcesDeleteCassandraViewHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for CassandraResources_updateCassandraViewThroughput operation. */ +export interface CassandraResourcesUpdateCassandraViewThroughputHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for CassandraResources_migrateCassandraViewToAutoscale operation. */ +export interface CassandraResourcesMigrateCassandraViewToAutoscaleHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + +/** Defines headers for CassandraResources_migrateCassandraViewToManualThroughput operation. */ +export interface CassandraResourcesMigrateCassandraViewToManualThroughputHeaders { + /** URI to poll for completion status. */ + azureAsyncOperation?: string; + /** URI to poll for completion status. */ + location?: string; +} + /** Defines headers for GremlinResources_createUpdateGremlinDatabase operation. */ export interface GremlinResourcesCreateUpdateGremlinDatabaseHeaders { /** URI to poll for completion status. */ @@ -3657,11 +4470,18 @@ export interface GremlinResourcesMigrateGremlinGraphToManualThroughputHeaders { location?: string; } -/** Defines headers for Service_create operation. */ -export interface ServiceCreateHeaders { - /** URI to poll for completion status. */ - azureAsyncOperation?: string; - /** URI to poll for completion status. */ +/** Defines headers for MongoClusters_delete operation. */ +export interface MongoClustersDeleteHeaders { + location?: string; +} + +/** Defines headers for MongoClusters_update operation. */ +export interface MongoClustersUpdateHeaders { + location?: string; +} + +/** Defines headers for MongoClusters_deleteFirewallRule operation. */ +export interface MongoClustersDeleteFirewallRuleHeaders { location?: string; } @@ -3774,7 +4594,9 @@ export enum KnownCreateMode { /** Default */ Default = "Default", /** Restore */ - Restore = "Restore" + Restore = "Restore", + /** PointInTimeRestore */ + PointInTimeRestore = "PointInTimeRestore" } /** @@ -3783,7 +4605,8 @@ export enum KnownCreateMode { * this enum contains the known values that the service supports. * ### Known values supported by the service * **Default** \ - * **Restore** + * **Restore** \ + * **PointInTimeRestore** */ export type CreateMode = string; @@ -4129,6 +4952,27 @@ export enum KnownConflictResolutionMode { */ export type ConflictResolutionMode = string; +/** Known values of {@link ThroughputPolicyType} that the service accepts. */ +export enum KnownThroughputPolicyType { + /** None */ + None = "none", + /** Equal */ + Equal = "equal", + /** Custom */ + Custom = "custom" +} + +/** + * Defines values for ThroughputPolicyType. \ + * {@link KnownThroughputPolicyType} can be used interchangeably with ThroughputPolicyType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **none** \ + * **equal** \ + * **custom** + */ +export type ThroughputPolicyType = string; + /** Known values of {@link TriggerType} that the service accepts. */ export enum KnownTriggerType { /** Pre */ @@ -4195,6 +5039,27 @@ export enum KnownBackupStorageRedundancy { */ export type BackupStorageRedundancy = string; +/** Known values of {@link DataTransferComponent} that the service accepts. */ +export enum KnownDataTransferComponent { + /** CosmosDBCassandra */ + CosmosDBCassandra = "CosmosDBCassandra", + /** CosmosDBSql */ + CosmosDBSql = "CosmosDBSql", + /** AzureBlobStorage */ + AzureBlobStorage = "AzureBlobStorage" +} + +/** + * Defines values for DataTransferComponent. \ + * {@link KnownDataTransferComponent} can be used interchangeably with DataTransferComponent, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CosmosDBCassandra** \ + * **CosmosDBSql** \ + * **AzureBlobStorage** + */ +export type DataTransferComponent = string; + /** Known values of {@link ManagedCassandraProvisioningState} that the service accepts. */ export enum KnownManagedCassandraProvisioningState { /** Creating */ @@ -4230,7 +5095,9 @@ export enum KnownAuthenticationMethod { /** None */ None = "None", /** Cassandra */ - Cassandra = "Cassandra" + Cassandra = "Cassandra", + /** Ldap */ + Ldap = "Ldap" } /** @@ -4239,7 +5106,8 @@ export enum KnownAuthenticationMethod { * this enum contains the known values that the service supports. * ### Known values supported by the service * **None** \ - * **Cassandra** + * **Cassandra** \ + * **Ldap** */ export type AuthenticationMethod = string; @@ -4318,6 +5186,102 @@ export enum KnownNodeState { */ export type NodeState = string; +/** Known values of {@link ProvisioningState} that the service accepts. */ +export enum KnownProvisioningState { + /** Succeeded */ + Succeeded = "Succeeded", + /** Failed */ + Failed = "Failed", + /** Canceled */ + Canceled = "Canceled", + /** InProgress */ + InProgress = "InProgress", + /** Updating */ + Updating = "Updating", + /** Dropping */ + Dropping = "Dropping" +} + +/** + * Defines values for ProvisioningState. \ + * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded** \ + * **Failed** \ + * **Canceled** \ + * **InProgress** \ + * **Updating** \ + * **Dropping** + */ +export type ProvisioningState = string; + +/** Known values of {@link MongoClusterStatus} that the service accepts. */ +export enum KnownMongoClusterStatus { + /** Ready */ + Ready = "Ready", + /** Provisioning */ + Provisioning = "Provisioning", + /** Updating */ + Updating = "Updating", + /** Starting */ + Starting = "Starting", + /** Stopping */ + Stopping = "Stopping", + /** Stopped */ + Stopped = "Stopped", + /** Dropping */ + Dropping = "Dropping" +} + +/** + * Defines values for MongoClusterStatus. \ + * {@link KnownMongoClusterStatus} can be used interchangeably with MongoClusterStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Ready** \ + * **Provisioning** \ + * **Updating** \ + * **Starting** \ + * **Stopping** \ + * **Stopped** \ + * **Dropping** + */ +export type MongoClusterStatus = string; + +/** Known values of {@link NodeKind} that the service accepts. */ +export enum KnownNodeKind { + /** Shard */ + Shard = "Shard" +} + +/** + * Defines values for NodeKind. \ + * {@link KnownNodeKind} can be used interchangeably with NodeKind, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Shard** + */ +export type NodeKind = string; + +/** Known values of {@link CheckNameAvailabilityReason} that the service accepts. */ +export enum KnownCheckNameAvailabilityReason { + /** Invalid */ + Invalid = "Invalid", + /** AlreadyExists */ + AlreadyExists = "AlreadyExists" +} + +/** + * Defines values for CheckNameAvailabilityReason. \ + * {@link KnownCheckNameAvailabilityReason} can be used interchangeably with CheckNameAvailabilityReason, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Invalid** \ + * **AlreadyExists** + */ +export type CheckNameAvailabilityReason = string; + /** Known values of {@link NotebookWorkspaceName} that the service accepts. */ export enum KnownNotebookWorkspaceName { /** Default */ @@ -4371,6 +5335,8 @@ export enum KnownOperationType { Replace = "Replace", /** Delete */ Delete = "Delete", + /** Recreate */ + Recreate = "Recreate", /** SystemOperation */ SystemOperation = "SystemOperation" } @@ -4383,6 +5349,7 @@ export enum KnownOperationType { * **Create** \ * **Replace** \ * **Delete** \ + * **Recreate** \ * **SystemOperation** */ export type OperationType = string; @@ -4462,6 +5429,24 @@ export enum KnownServiceStatus { */ export type ServiceStatus = string; +/** Known values of {@link ContinuousTier} that the service accepts. */ +export enum KnownContinuousTier { + /** Continuous7Days */ + Continuous7Days = "Continuous7Days", + /** Continuous30Days */ + Continuous30Days = "Continuous30Days" +} + +/** + * Defines values for ContinuousTier. \ + * {@link KnownContinuousTier} can be used interchangeably with ContinuousTier, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Continuous7Days** \ + * **Continuous30Days** + */ +export type ContinuousTier = string; + /** Known values of {@link NodeStatus} that the service accepts. */ export enum KnownNodeStatus { /** Up */ @@ -4479,12 +5464,6 @@ export enum KnownNodeStatus { * **Down** */ export type NodeStatus = string; -/** Defines values for ResourceIdentityType. */ -export type ResourceIdentityType = - | "SystemAssigned" - | "UserAssigned" - | "SystemAssigned,UserAssigned" - | "None"; /** Defines values for DefaultConsistencyLevel. */ export type DefaultConsistencyLevel = | "Eventual" @@ -4494,6 +5473,14 @@ export type DefaultConsistencyLevel = | "ConsistentPrefix"; /** Defines values for NetworkAclBypass. */ export type NetworkAclBypass = "None" | "AzureServices"; +/** Defines values for EnableFullTextQuery. */ +export type EnableFullTextQuery = "None" | "True" | "False"; +/** Defines values for ResourceIdentityType. */ +export type ResourceIdentityType = + | "SystemAssigned" + | "UserAssigned" + | "SystemAssigned,UserAssigned" + | "None"; /** Defines values for MongoRoleDefinitionType. */ export type MongoRoleDefinitionType = "BuiltInRole" | "CustomRole"; /** Defines values for RoleDefinitionType. */ @@ -4791,6 +5778,41 @@ export interface PartitionKeyRangeIdRegionListMetricsOptionalParams /** Contains response data for the listMetrics operation. */ export type PartitionKeyRangeIdRegionListMetricsResponse = PartitionMetricListResult; +/** Optional parameters. */ +export interface GraphResourcesListGraphsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listGraphs operation. */ +export type GraphResourcesListGraphsResponse = GraphResourcesListResult; + +/** Optional parameters. */ +export interface GraphResourcesGetGraphOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getGraph operation. */ +export type GraphResourcesGetGraphResponse = GraphResourceGetResults; + +/** Optional parameters. */ +export interface GraphResourcesCreateUpdateGraphOptionalParams + 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 createUpdateGraph operation. */ +export type GraphResourcesCreateUpdateGraphResponse = GraphResourceGetResults; + +/** Optional parameters. */ +export interface GraphResourcesDeleteGraphResourceOptionalParams + 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 SqlResourcesListSqlDatabasesOptionalParams extends coreClient.OperationOptions {} @@ -4872,6 +5894,32 @@ export interface SqlResourcesMigrateSqlDatabaseToManualThroughputOptionalParams /** Contains response data for the migrateSqlDatabaseToManualThroughput operation. */ export type SqlResourcesMigrateSqlDatabaseToManualThroughputResponse = ThroughputSettingsGetResults; +/** Optional parameters. */ +export interface SqlResourcesListClientEncryptionKeysOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listClientEncryptionKeys operation. */ +export type SqlResourcesListClientEncryptionKeysResponse = ClientEncryptionKeysListResult; + +/** Optional parameters. */ +export interface SqlResourcesGetClientEncryptionKeyOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getClientEncryptionKey operation. */ +export type SqlResourcesGetClientEncryptionKeyResponse = ClientEncryptionKeyGetResults; + +/** Optional parameters. */ +export interface SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams + 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 createUpdateClientEncryptionKey operation. */ +export type SqlResourcesCreateUpdateClientEncryptionKeyResponse = ClientEncryptionKeyGetResults; + /** Optional parameters. */ export interface SqlResourcesListSqlContainersOptionalParams extends coreClient.OperationOptions {} @@ -4910,6 +5958,18 @@ export interface SqlResourcesDeleteSqlContainerOptionalParams /** Contains response data for the deleteSqlContainer operation. */ export type SqlResourcesDeleteSqlContainerResponse = SqlResourcesDeleteSqlContainerHeaders; +/** Optional parameters. */ +export interface SqlResourcesListSqlContainerPartitionMergeOptionalParams + 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 listSqlContainerPartitionMerge operation. */ +export type SqlResourcesListSqlContainerPartitionMergeResponse = PhysicalPartitionStorageInfoCollection; + /** Optional parameters. */ export interface SqlResourcesGetSqlContainerThroughputOptionalParams extends coreClient.OperationOptions {} @@ -4930,7 +5990,43 @@ export interface SqlResourcesUpdateSqlContainerThroughputOptionalParams export type SqlResourcesUpdateSqlContainerThroughputResponse = ThroughputSettingsGetResults; /** Optional parameters. */ -export interface SqlResourcesMigrateSqlContainerToAutoscaleOptionalParams +export interface SqlResourcesMigrateSqlContainerToAutoscaleOptionalParams + 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 migrateSqlContainerToAutoscale operation. */ +export type SqlResourcesMigrateSqlContainerToAutoscaleResponse = ThroughputSettingsGetResults; + +/** Optional parameters. */ +export interface SqlResourcesMigrateSqlContainerToManualThroughputOptionalParams + 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 migrateSqlContainerToManualThroughput operation. */ +export type SqlResourcesMigrateSqlContainerToManualThroughputResponse = ThroughputSettingsGetResults; + +/** Optional parameters. */ +export interface SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams + 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 sqlDatabaseRetrieveThroughputDistribution operation. */ +export type SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; + +/** Optional parameters. */ +export interface SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -4938,11 +6034,11 @@ export interface SqlResourcesMigrateSqlContainerToAutoscaleOptionalParams resumeFrom?: string; } -/** Contains response data for the migrateSqlContainerToAutoscale operation. */ -export type SqlResourcesMigrateSqlContainerToAutoscaleResponse = ThroughputSettingsGetResults; +/** Contains response data for the sqlDatabaseRedistributeThroughput operation. */ +export type SqlResourcesSqlDatabaseRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; /** Optional parameters. */ -export interface SqlResourcesMigrateSqlContainerToManualThroughputOptionalParams +export interface SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -4950,25 +6046,11 @@ export interface SqlResourcesMigrateSqlContainerToManualThroughputOptionalParams resumeFrom?: string; } -/** Contains response data for the migrateSqlContainerToManualThroughput operation. */ -export type SqlResourcesMigrateSqlContainerToManualThroughputResponse = ThroughputSettingsGetResults; - -/** Optional parameters. */ -export interface SqlResourcesListClientEncryptionKeysOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listClientEncryptionKeys operation. */ -export type SqlResourcesListClientEncryptionKeysResponse = ClientEncryptionKeysListResult; - -/** Optional parameters. */ -export interface SqlResourcesGetClientEncryptionKeyOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getClientEncryptionKey operation. */ -export type SqlResourcesGetClientEncryptionKeyResponse = ClientEncryptionKeyGetResults; +/** Contains response data for the sqlContainerRetrieveThroughputDistribution operation. */ +export type SqlResourcesSqlContainerRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; /** Optional parameters. */ -export interface SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams +export interface SqlResourcesSqlContainerRedistributeThroughputOptionalParams extends coreClient.OperationOptions { /** Delay to wait until next poll, in milliseconds. */ updateIntervalInMs?: number; @@ -4976,8 +6058,8 @@ export interface SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams resumeFrom?: string; } -/** Contains response data for the createUpdateClientEncryptionKey operation. */ -export type SqlResourcesCreateUpdateClientEncryptionKeyResponse = ClientEncryptionKeyGetResults; +/** Contains response data for the sqlContainerRedistributeThroughput operation. */ +export type SqlResourcesSqlContainerRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; /** Optional parameters. */ export interface SqlResourcesListSqlStoredProceduresOptionalParams @@ -5256,6 +6338,54 @@ export interface MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputOptiona /** Contains response data for the migrateMongoDBDatabaseToManualThroughput operation. */ export type MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputResponse = ThroughputSettingsGetResults; +/** Optional parameters. */ +export interface MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams + 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 mongoDBDatabaseRetrieveThroughputDistribution operation. */ +export type MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; + +/** Optional parameters. */ +export interface MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams + 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 mongoDBDatabaseRedistributeThroughput operation. */ +export type MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; + +/** Optional parameters. */ +export interface MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams + 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 mongoDBContainerRetrieveThroughputDistribution operation. */ +export type MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse = PhysicalPartitionThroughputInfoResult; + +/** Optional parameters. */ +export interface MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams + 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 mongoDBContainerRedistributeThroughput operation. */ +export type MongoDBResourcesMongoDBContainerRedistributeThroughputResponse = PhysicalPartitionThroughputInfoResult; + /** Optional parameters. */ export interface MongoDBResourcesListMongoDBCollectionsOptionalParams extends coreClient.OperationOptions {} @@ -5294,6 +6424,18 @@ export interface MongoDBResourcesDeleteMongoDBCollectionOptionalParams /** Contains response data for the deleteMongoDBCollection operation. */ export type MongoDBResourcesDeleteMongoDBCollectionResponse = MongoDBResourcesDeleteMongoDBCollectionHeaders; +/** Optional parameters. */ +export interface MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams + 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 listMongoDBCollectionPartitionMerge operation. */ +export type MongoDBResourcesListMongoDBCollectionPartitionMergeResponse = PhysicalPartitionStorageInfoCollection; + /** Optional parameters. */ export interface MongoDBResourcesGetMongoDBCollectionThroughputOptionalParams extends coreClient.OperationOptions {} @@ -5674,6 +6816,84 @@ export interface CassandraResourcesMigrateCassandraTableToManualThroughputOption /** Contains response data for the migrateCassandraTableToManualThroughput operation. */ export type CassandraResourcesMigrateCassandraTableToManualThroughputResponse = ThroughputSettingsGetResults; +/** Optional parameters. */ +export interface CassandraResourcesListCassandraViewsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listCassandraViews operation. */ +export type CassandraResourcesListCassandraViewsResponse = CassandraViewListResult; + +/** Optional parameters. */ +export interface CassandraResourcesGetCassandraViewOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getCassandraView operation. */ +export type CassandraResourcesGetCassandraViewResponse = CassandraViewGetResults; + +/** Optional parameters. */ +export interface CassandraResourcesCreateUpdateCassandraViewOptionalParams + 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 createUpdateCassandraView operation. */ +export type CassandraResourcesCreateUpdateCassandraViewResponse = CassandraViewGetResults; + +/** Optional parameters. */ +export interface CassandraResourcesDeleteCassandraViewOptionalParams + 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 CassandraResourcesGetCassandraViewThroughputOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getCassandraViewThroughput operation. */ +export type CassandraResourcesGetCassandraViewThroughputResponse = ThroughputSettingsGetResults; + +/** Optional parameters. */ +export interface CassandraResourcesUpdateCassandraViewThroughputOptionalParams + 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 updateCassandraViewThroughput operation. */ +export type CassandraResourcesUpdateCassandraViewThroughputResponse = ThroughputSettingsGetResults; + +/** Optional parameters. */ +export interface CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams + 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 migrateCassandraViewToAutoscale operation. */ +export type CassandraResourcesMigrateCassandraViewToAutoscaleResponse = ThroughputSettingsGetResults; + +/** Optional parameters. */ +export interface CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams + 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 migrateCassandraViewToManualThroughput operation. */ +export type CassandraResourcesMigrateCassandraViewToManualThroughputResponse = ThroughputSettingsGetResults; + /** Optional parameters. */ export interface GremlinResourcesListGremlinDatabasesOptionalParams extends coreClient.OperationOptions {} @@ -5862,6 +7082,55 @@ export interface LocationsGetOptionalParams /** Contains response data for the get operation. */ export type LocationsGetResponse = LocationGetResult; +/** Optional parameters. */ +export interface DataTransferJobsCreateOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the create operation. */ +export type DataTransferJobsCreateResponse = DataTransferJobGetResults; + +/** Optional parameters. */ +export interface DataTransferJobsGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type DataTransferJobsGetResponse = DataTransferJobGetResults; + +/** Optional parameters. */ +export interface DataTransferJobsPauseOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the pause operation. */ +export type DataTransferJobsPauseResponse = DataTransferJobGetResults; + +/** Optional parameters. */ +export interface DataTransferJobsResumeOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the resume operation. */ +export type DataTransferJobsResumeResponse = DataTransferJobGetResults; + +/** Optional parameters. */ +export interface DataTransferJobsCancelOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the cancel operation. */ +export type DataTransferJobsCancelResponse = DataTransferJobGetResults; + +/** Optional parameters. */ +export interface DataTransferJobsListByDatabaseAccountOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByDatabaseAccount operation. */ +export type DataTransferJobsListByDatabaseAccountResponse = DataTransferJobFeedResults; + +/** Optional parameters. */ +export interface DataTransferJobsListByDatabaseAccountNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByDatabaseAccountNext operation. */ +export type DataTransferJobsListByDatabaseAccountNextResponse = DataTransferJobFeedResults; + /** Optional parameters. */ export interface CassandraClustersListBySubscriptionOptionalParams extends coreClient.OperationOptions {} @@ -5928,6 +7197,20 @@ export interface CassandraClustersInvokeCommandOptionalParams /** Contains response data for the invokeCommand operation. */ export type CassandraClustersInvokeCommandResponse = CommandOutput; +/** Optional parameters. */ +export interface CassandraClustersListBackupsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listBackups operation. */ +export type CassandraClustersListBackupsResponse = ListBackups; + +/** Optional parameters. */ +export interface CassandraClustersGetBackupOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getBackup operation. */ +export type CassandraClustersGetBackupResponse = BackupResource; + /** Optional parameters. */ export interface CassandraClustersDeallocateOptionalParams extends coreClient.OperationOptions { @@ -6000,6 +7283,136 @@ export interface CassandraDataCentersUpdateOptionalParams /** Contains response data for the update operation. */ export type CassandraDataCentersUpdateResponse = DataCenterResource; +/** Optional parameters. */ +export interface MongoClustersListOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the list operation. */ +export type MongoClustersListResponse = MongoClusterListResult; + +/** Optional parameters. */ +export interface MongoClustersListByResourceGroupOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroup operation. */ +export type MongoClustersListByResourceGroupResponse = MongoClusterListResult; + +/** Optional parameters. */ +export interface MongoClustersCreateOrUpdateOptionalParams + 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 MongoClustersCreateOrUpdateResponse = MongoCluster; + +/** Optional parameters. */ +export interface MongoClustersGetOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the get operation. */ +export type MongoClustersGetResponse = MongoCluster; + +/** Optional parameters. */ +export interface MongoClustersDeleteOptionalParams + 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 MongoClustersDeleteResponse = MongoClustersDeleteHeaders; + +/** Optional parameters. */ +export interface MongoClustersUpdateOptionalParams + 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 MongoClustersUpdateResponse = MongoCluster; + +/** Optional parameters. */ +export interface MongoClustersCreateOrUpdateFirewallRuleOptionalParams + 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 createOrUpdateFirewallRule operation. */ +export type MongoClustersCreateOrUpdateFirewallRuleResponse = FirewallRule; + +/** Optional parameters. */ +export interface MongoClustersDeleteFirewallRuleOptionalParams + 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 deleteFirewallRule operation. */ +export type MongoClustersDeleteFirewallRuleResponse = MongoClustersDeleteFirewallRuleHeaders; + +/** Optional parameters. */ +export interface MongoClustersGetFirewallRuleOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the getFirewallRule operation. */ +export type MongoClustersGetFirewallRuleResponse = FirewallRule; + +/** Optional parameters. */ +export interface MongoClustersListFirewallRulesOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listFirewallRules operation. */ +export type MongoClustersListFirewallRulesResponse = FirewallRuleListResult; + +/** Optional parameters. */ +export interface MongoClustersCheckNameAvailabilityOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the checkNameAvailability operation. */ +export type MongoClustersCheckNameAvailabilityResponse = CheckNameAvailabilityResponse; + +/** Optional parameters. */ +export interface MongoClustersListConnectionStringsOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listConnectionStrings operation. */ +export type MongoClustersListConnectionStringsResponse = ListConnectionStringsResult; + +/** Optional parameters. */ +export interface MongoClustersListNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listNext operation. */ +export type MongoClustersListNextResponse = MongoClusterListResult; + +/** Optional parameters. */ +export interface MongoClustersListByResourceGroupNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listByResourceGroupNext operation. */ +export type MongoClustersListByResourceGroupNextResponse = MongoClusterListResult; + +/** Optional parameters. */ +export interface MongoClustersListFirewallRulesNextOptionalParams + extends coreClient.OperationOptions {} + +/** Contains response data for the listFirewallRulesNext operation. */ +export type MongoClustersListFirewallRulesNextResponse = FirewallRuleListResult; + /** Optional parameters. */ export interface NotebookWorkspacesListByDatabaseAccountOptionalParams extends coreClient.OperationOptions {} diff --git a/sdk/cosmosdb/arm-cosmosdb/src/models/mappers.ts b/sdk/cosmosdb/arm-cosmosdb/src/models/mappers.ts index e1c1cf36831e7..9348e2bf1ef7a 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/models/mappers.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/models/mappers.ts @@ -8,78 +8,6 @@ import * as coreClient from "@azure/core-client"; -export const ManagedServiceIdentity: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ManagedServiceIdentity", - modelProperties: { - principalId: { - serializedName: "principalId", - readOnly: true, - type: { - name: "String" - } - }, - tenantId: { - serializedName: "tenantId", - readOnly: true, - type: { - name: "String" - } - }, - type: { - serializedName: "type", - type: { - name: "Enum", - allowedValues: [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned,UserAssigned", - "None" - ] - } - }, - userAssignedIdentities: { - serializedName: "userAssignedIdentities", - type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: - "Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties" - } - } - } - } - } - } -}; - -export const Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: - "Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties", - modelProperties: { - principalId: { - serializedName: "principalId", - readOnly: true, - type: { - name: "String" - } - }, - clientId: { - serializedName: "clientId", - readOnly: true, - type: { - name: "String" - } - } - } - } -}; - export const IpAddressOrRange: coreClient.CompositeMapper = { type: { name: "Composite", @@ -359,55 +287,19 @@ export const AnalyticalStorageConfiguration: coreClient.CompositeMapper = { } }; -export const RestoreParameters: coreClient.CompositeMapper = { +export const DatabaseRestoreResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestoreParameters", + className: "DatabaseRestoreResource", modelProperties: { - restoreMode: { - serializedName: "restoreMode", - type: { - name: "String" - } - }, - restoreSource: { - serializedName: "restoreSource", + databaseName: { + serializedName: "databaseName", type: { name: "String" } }, - restoreTimestampInUtc: { - serializedName: "restoreTimestampInUtc", - type: { - name: "DateTime" - } - }, - databasesToRestore: { - serializedName: "databasesToRestore", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DatabaseRestoreResource" - } - } - } - }, - gremlinDatabasesToRestore: { - serializedName: "gremlinDatabasesToRestore", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GremlinDatabaseRestoreResource" - } - } - } - }, - tablesToRestore: { - serializedName: "tablesToRestore", + collectionNames: { + serializedName: "collectionNames", type: { name: "Sequence", element: { @@ -421,10 +313,10 @@ export const RestoreParameters: coreClient.CompositeMapper = { } }; -export const DatabaseRestoreResource: coreClient.CompositeMapper = { +export const GremlinDatabaseRestoreResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseRestoreResource", + className: "GremlinDatabaseRestoreResource", modelProperties: { databaseName: { serializedName: "databaseName", @@ -432,8 +324,8 @@ export const DatabaseRestoreResource: coreClient.CompositeMapper = { name: "String" } }, - collectionNames: { - serializedName: "collectionNames", + graphNames: { + serializedName: "graphNames", type: { name: "Sequence", element: { @@ -447,26 +339,21 @@ export const DatabaseRestoreResource: coreClient.CompositeMapper = { } }; -export const GremlinDatabaseRestoreResource: coreClient.CompositeMapper = { +export const RestoreParametersBase: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinDatabaseRestoreResource", + className: "RestoreParametersBase", modelProperties: { - databaseName: { - serializedName: "databaseName", + restoreSource: { + serializedName: "restoreSource", type: { name: "String" } }, - graphNames: { - serializedName: "graphNames", + restoreTimestampInUtc: { + serializedName: "restoreTimestampInUtc", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "DateTime" } } } @@ -572,6 +459,22 @@ export const CorsPolicy: coreClient.CompositeMapper = { } }; +export const DiagnosticLogSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DiagnosticLogSettings", + modelProperties: { + enableFullTextQuery: { + serializedName: "enableFullTextQuery", + type: { + name: "Enum", + allowedValues: ["None", "True", "False"] + } + } + } + } +}; + export const Capacity: coreClient.CompositeMapper = { type: { name: "Composite", @@ -726,6 +629,85 @@ export const ARMResourceProperties: coreClient.CompositeMapper = { name: "Dictionary", value: { type: { name: "String" } } } + }, + identity: { + serializedName: "identity", + type: { + name: "Composite", + className: "ManagedServiceIdentity" + } + } + } + } +}; + +export const ManagedServiceIdentity: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ManagedServiceIdentity", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "String" + } + }, + tenantId: { + serializedName: "tenantId", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + type: { + name: "Enum", + allowedValues: [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned", + "None" + ] + } + }, + userAssignedIdentities: { + serializedName: "userAssignedIdentities", + type: { + name: "Dictionary", + value: { + type: { + name: "Composite", + className: + "Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties" + } + } + } + } + } + } +}; + +export const Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: + "Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties", + modelProperties: { + principalId: { + serializedName: "principalId", + readOnly: true, + type: { + name: "String" + } + }, + clientId: { + serializedName: "clientId", + readOnly: true, + type: { + name: "String" + } } } } @@ -928,6 +910,13 @@ export const DatabaseAccountUpdateParameters: coreClient.CompositeMapper = { } } }, + diagnosticLogSettings: { + serializedName: "properties.diagnosticLogSettings", + type: { + name: "Composite", + className: "DiagnosticLogSettings" + } + }, disableLocalAuth: { serializedName: "properties.disableLocalAuth", type: { @@ -941,6 +930,12 @@ export const DatabaseAccountUpdateParameters: coreClient.CompositeMapper = { className: "Capacity" } }, + enableMaterializedViews: { + serializedName: "properties.enableMaterializedViews", + type: { + name: "Boolean" + } + }, keysMetadata: { serializedName: "properties.keysMetadata", type: { @@ -954,6 +949,12 @@ export const DatabaseAccountUpdateParameters: coreClient.CompositeMapper = { name: "Boolean" } }, + enableBurstCapacity: { + serializedName: "properties.enableBurstCapacity", + type: { + name: "Boolean" + } + }, minimalTlsVersion: { serializedName: "properties.minimalTlsVersion", type: { @@ -1647,10 +1648,10 @@ export const MetricAvailability: coreClient.CompositeMapper = { } }; -export const SqlDatabaseListResult: coreClient.CompositeMapper = { +export const GraphResourcesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlDatabaseListResult", + className: "GraphResourcesListResult", modelProperties: { value: { serializedName: "value", @@ -1660,7 +1661,7 @@ export const SqlDatabaseListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "SqlDatabaseGetResults" + className: "GraphResourceGetResults" } } } @@ -1669,10 +1670,10 @@ export const SqlDatabaseListResult: coreClient.CompositeMapper = { } }; -export const SqlDatabaseResource: coreClient.CompositeMapper = { +export const GraphResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlDatabaseResource", + className: "GraphResource", modelProperties: { id: { serializedName: "id", @@ -1685,40 +1686,47 @@ export const SqlDatabaseResource: coreClient.CompositeMapper = { } }; -export const ExtendedResourceProperties: coreClient.CompositeMapper = { +export const OptionsResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ExtendedResourceProperties", + className: "OptionsResource", modelProperties: { - rid: { - serializedName: "_rid", - readOnly: true, + throughput: { + serializedName: "throughput", type: { - name: "String" + name: "Number" } }, - ts: { - serializedName: "_ts", - readOnly: true, + autoscaleSettings: { + serializedName: "autoscaleSettings", type: { - name: "Number" + name: "Composite", + className: "AutoscaleSettings" } - }, - etag: { - serializedName: "_etag", - readOnly: true, + } + } + } +}; + +export const AutoscaleSettings: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AutoscaleSettings", + modelProperties: { + maxThroughput: { + serializedName: "maxThroughput", type: { - name: "String" + name: "Number" } } } } }; -export const OptionsResource: coreClient.CompositeMapper = { +export const CreateUpdateOptions: coreClient.CompositeMapper = { type: { name: "Composite", - className: "OptionsResource", + className: "CreateUpdateOptions", modelProperties: { throughput: { serializedName: "throughput", @@ -1737,37 +1745,81 @@ export const OptionsResource: coreClient.CompositeMapper = { } }; -export const AutoscaleSettings: coreClient.CompositeMapper = { +export const SqlDatabaseListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "AutoscaleSettings", + className: "SqlDatabaseListResult", modelProperties: { - maxThroughput: { - serializedName: "maxThroughput", + value: { + serializedName: "value", + readOnly: true, type: { - name: "Number" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SqlDatabaseGetResults" + } + } } } } } }; -export const CreateUpdateOptions: coreClient.CompositeMapper = { +export const SqlDatabaseResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CreateUpdateOptions", + className: "SqlDatabaseResource", modelProperties: { - throughput: { - serializedName: "throughput", + id: { + serializedName: "id", + required: true, type: { - name: "Number" + name: "String" } }, - autoscaleSettings: { - serializedName: "autoscaleSettings", + restoreParameters: { + serializedName: "restoreParameters", type: { name: "Composite", - className: "AutoscaleSettings" + className: "ResourceRestoreParameters" + } + }, + createMode: { + serializedName: "createMode", + type: { + name: "String" + } + } + } + } +}; + +export const ExtendedResourceProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ExtendedResourceProperties", + modelProperties: { + rid: { + serializedName: "_rid", + readOnly: true, + type: { + name: "String" + } + }, + ts: { + serializedName: "_ts", + readOnly: true, + type: { + name: "Number" + } + }, + etag: { + serializedName: "_etag", + readOnly: true, + type: { + name: "String" } } } @@ -1893,6 +1945,141 @@ export const CloudError: coreClient.CompositeMapper = { } }; +export const ClientEncryptionKeysListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientEncryptionKeysListResult", + modelProperties: { + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ClientEncryptionKeyGetResults" + } + } + } + } + } + } +}; + +export const ClientEncryptionKeyResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientEncryptionKeyResource", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + }, + encryptionAlgorithm: { + serializedName: "encryptionAlgorithm", + type: { + name: "String" + } + }, + wrappedDataEncryptionKey: { + serializedName: "wrappedDataEncryptionKey", + type: { + name: "ByteArray" + } + }, + keyWrapMetadata: { + serializedName: "keyWrapMetadata", + type: { + name: "Composite", + className: "KeyWrapMetadata" + } + } + } + } +}; + +export const KeyWrapMetadata: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "KeyWrapMetadata", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + type: { + serializedName: "type", + type: { + name: "String" + } + }, + value: { + serializedName: "value", + type: { + name: "String" + } + }, + algorithm: { + serializedName: "algorithm", + type: { + name: "String" + } + } + } + } +}; + +export const ARMProxyResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ARMProxyResource", + 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 ClientEncryptionKeyCreateUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientEncryptionKeyCreateUpdateParameters", + modelProperties: { + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "ClientEncryptionKeyResource" + } + } + } + } +}; + export const SqlContainerListResult: coreClient.CompositeMapper = { type: { name: "Composite", @@ -1973,6 +2160,19 @@ export const SqlContainerResource: coreClient.CompositeMapper = { type: { name: "Number" } + }, + restoreParameters: { + serializedName: "restoreParameters", + type: { + name: "Composite", + className: "ResourceRestoreParameters" + } + }, + createMode: { + serializedName: "createMode", + type: { + name: "String" + } } } } @@ -2354,20 +2554,35 @@ export const ClientEncryptionIncludedPath: coreClient.CompositeMapper = { } }; -export const ClientEncryptionKeysListResult: coreClient.CompositeMapper = { +export const MergeParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClientEncryptionKeysListResult", + className: "MergeParameters", modelProperties: { - value: { - serializedName: "value", - readOnly: true, + isDryRun: { + serializedName: "isDryRun", type: { - name: "Sequence", - element: { + name: "Boolean" + } + } + } + } +}; + +export const PhysicalPartitionStorageInfoCollection: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PhysicalPartitionStorageInfoCollection", + modelProperties: { + physicalPartitionStorageInfoCollection: { + serializedName: "physicalPartitionStorageInfoCollection", + readOnly: true, + type: { + name: "Sequence", + element: { type: { name: "Composite", - className: "ClientEncryptionKeyGetResults" + className: "PhysicalPartitionStorageInfo" } } } @@ -2376,113 +2591,146 @@ export const ClientEncryptionKeysListResult: coreClient.CompositeMapper = { } }; -export const ClientEncryptionKeyResource: coreClient.CompositeMapper = { +export const PhysicalPartitionStorageInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClientEncryptionKeyResource", + className: "PhysicalPartitionStorageInfo", modelProperties: { id: { serializedName: "id", + readOnly: true, type: { name: "String" } }, - encryptionAlgorithm: { - serializedName: "encryptionAlgorithm", - type: { - name: "String" - } - }, - wrappedDataEncryptionKey: { - serializedName: "wrappedDataEncryptionKey", - type: { - name: "ByteArray" - } - }, - keyWrapMetadata: { - serializedName: "keyWrapMetadata", + storageInKB: { + serializedName: "storageInKB", + readOnly: true, type: { - name: "Composite", - className: "KeyWrapMetadata" + name: "Number" } } } } }; -export const KeyWrapMetadata: coreClient.CompositeMapper = { +export const RetrieveThroughputPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "KeyWrapMetadata", + className: "RetrieveThroughputPropertiesResource", modelProperties: { - name: { - serializedName: "name", - type: { - name: "String" - } - }, - type: { - serializedName: "type", + physicalPartitionIds: { + serializedName: "physicalPartitionIds", + required: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PhysicalPartitionId" + } + } } - }, - value: { - serializedName: "value", + } + } + } +}; + +export const PhysicalPartitionId: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PhysicalPartitionId", + modelProperties: { + id: { + serializedName: "id", + required: true, type: { name: "String" } - }, - algorithm: { - serializedName: "algorithm", + } + } + } +}; + +export const PhysicalPartitionThroughputInfoProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PhysicalPartitionThroughputInfoProperties", + modelProperties: { + physicalPartitionThroughputInfo: { + serializedName: "physicalPartitionThroughputInfo", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PhysicalPartitionThroughputInfoResource" + } + } } } } } }; -export const ARMProxyResource: coreClient.CompositeMapper = { +export const PhysicalPartitionThroughputInfoResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ARMProxyResource", + className: "PhysicalPartitionThroughputInfoResource", modelProperties: { id: { serializedName: "id", - readOnly: true, - type: { - name: "String" - } - }, - name: { - serializedName: "name", - readOnly: true, + required: true, type: { name: "String" } }, - type: { - serializedName: "type", - readOnly: true, + throughput: { + serializedName: "throughput", type: { - name: "String" + name: "Number" } } } } }; -export const ClientEncryptionKeyCreateUpdateParameters: coreClient.CompositeMapper = { +export const RedistributeThroughputPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClientEncryptionKeyCreateUpdateParameters", + className: "RedistributeThroughputPropertiesResource", modelProperties: { - resource: { - serializedName: "properties.resource", + throughputPolicy: { + serializedName: "throughputPolicy", + required: true, type: { - name: "Composite", - className: "ClientEncryptionKeyResource" + name: "String" + } + }, + targetPhysicalPartitionThroughputInfo: { + serializedName: "targetPhysicalPartitionThroughputInfo", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PhysicalPartitionThroughputInfoResource" + } + } + } + }, + sourcePhysicalPartitionThroughputInfo: { + serializedName: "sourcePhysicalPartitionThroughputInfo", + required: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PhysicalPartitionThroughputInfoResource" + } + } } } } @@ -2666,6 +2914,19 @@ export const MongoDBDatabaseResource: coreClient.CompositeMapper = { type: { name: "String" } + }, + restoreParameters: { + serializedName: "restoreParameters", + type: { + name: "Composite", + className: "ResourceRestoreParameters" + } + }, + createMode: { + serializedName: "createMode", + type: { + name: "String" + } } } } @@ -2729,6 +2990,19 @@ export const MongoDBCollectionResource: coreClient.CompositeMapper = { type: { name: "Number" } + }, + restoreParameters: { + serializedName: "restoreParameters", + type: { + name: "Composite", + className: "ResourceRestoreParameters" + } + }, + createMode: { + serializedName: "createMode", + type: { + name: "String" + } } } } @@ -2831,6 +3105,19 @@ export const TableResource: coreClient.CompositeMapper = { type: { name: "String" } + }, + restoreParameters: { + serializedName: "restoreParameters", + type: { + name: "Composite", + className: "ResourceRestoreParameters" + } + }, + createMode: { + serializedName: "createMode", + type: { + name: "String" + } } } } @@ -3066,6 +3353,19 @@ export const GremlinDatabaseResource: coreClient.CompositeMapper = { type: { name: "String" } + }, + restoreParameters: { + serializedName: "restoreParameters", + type: { + name: "Composite", + className: "ResourceRestoreParameters" + } + }, + createMode: { + serializedName: "createMode", + type: { + name: "String" + } } } } @@ -3144,6 +3444,19 @@ export const GremlinGraphResource: coreClient.CompositeMapper = { type: { name: "Number" } + }, + restoreParameters: { + serializedName: "restoreParameters", + type: { + name: "Composite", + className: "ResourceRestoreParameters" + } + }, + createMode: { + serializedName: "createMode", + type: { + name: "String" + } } } } @@ -3176,6 +3489,13 @@ export const LocationProperties: coreClient.CompositeMapper = { name: "Composite", className: "LocationProperties", modelProperties: { + status: { + serializedName: "status", + readOnly: true, + type: { + name: "String" + } + }, supportsAvailabilityZone: { serializedName: "supportsAvailabilityZone", readOnly: true, @@ -3206,19 +3526,20 @@ export const LocationProperties: coreClient.CompositeMapper = { } }; -export const ListClusters: coreClient.CompositeMapper = { +export const CassandraViewListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ListClusters", + className: "CassandraViewListResult", modelProperties: { value: { serializedName: "value", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "ClusterResource" + className: "CassandraViewGetResults" } } } @@ -3227,74 +3548,243 @@ export const ListClusters: coreClient.CompositeMapper = { } }; -export const ClusterResourceProperties: coreClient.CompositeMapper = { +export const CassandraViewResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClusterResourceProperties", + className: "CassandraViewResource", modelProperties: { - provisioningState: { - serializedName: "provisioningState", + id: { + serializedName: "id", + required: true, type: { name: "String" } }, - restoreFromBackupId: { - serializedName: "restoreFromBackupId", + viewDefinition: { + serializedName: "viewDefinition", + required: true, type: { name: "String" } - }, - delegatedManagementSubnetId: { - serializedName: "delegatedManagementSubnetId", + } + } + } +}; + +export const DataTransferJobProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DataTransferJobProperties", + modelProperties: { + jobName: { + serializedName: "jobName", + readOnly: true, type: { name: "String" } }, - cassandraVersion: { - serializedName: "cassandraVersion", + source: { + serializedName: "source", type: { - name: "String" + name: "Composite", + className: "DataTransferDataSourceSink" } }, - clusterNameOverride: { - serializedName: "clusterNameOverride", + destination: { + serializedName: "destination", type: { - name: "String" + name: "Composite", + className: "DataTransferDataSourceSink" } }, - authenticationMethod: { - serializedName: "authenticationMethod", + status: { + serializedName: "status", + readOnly: true, type: { name: "String" } }, - initialCassandraAdminPassword: { - serializedName: "initialCassandraAdminPassword", + processedCount: { + serializedName: "processedCount", + readOnly: true, type: { - name: "String" + name: "Number" } }, - prometheusEndpoint: { - serializedName: "prometheusEndpoint", + totalCount: { + serializedName: "totalCount", + readOnly: true, type: { - name: "Composite", - className: "SeedNode" + name: "Number" } }, - repairEnabled: { - serializedName: "repairEnabled", + lastUpdatedUtcTime: { + serializedName: "lastUpdatedUtcTime", + readOnly: true, type: { - name: "Boolean" + name: "DateTime" } }, - clientCertificates: { - serializedName: "clientCertificates", + workerCount: { + constraints: { + InclusiveMinimum: 0 + }, + serializedName: "workerCount", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Certificate" + name: "Number" + } + }, + error: { + serializedName: "error", + type: { + name: "Composite", + className: "ErrorResponse" + } + } + } + } +}; + +export const DataTransferDataSourceSink: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DataTransferDataSourceSink", + uberParent: "DataTransferDataSourceSink", + polymorphicDiscriminator: { + serializedName: "component", + clientName: "component" + }, + modelProperties: { + component: { + defaultValue: "CosmosDBCassandra", + serializedName: "component", + required: true, + type: { + name: "String" + } + } + } + } +}; + +export const DataTransferJobFeedResults: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DataTransferJobFeedResults", + modelProperties: { + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DataTransferJobGetResults" + } + } + } + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const ListClusters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ListClusters", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ClusterResource" + } + } + } + } + } + } +}; + +export const ClusterResourceProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClusterResourceProperties", + modelProperties: { + provisioningState: { + serializedName: "provisioningState", + type: { + name: "String" + } + }, + restoreFromBackupId: { + serializedName: "restoreFromBackupId", + type: { + name: "String" + } + }, + delegatedManagementSubnetId: { + serializedName: "delegatedManagementSubnetId", + type: { + name: "String" + } + }, + cassandraVersion: { + serializedName: "cassandraVersion", + type: { + name: "String" + } + }, + clusterNameOverride: { + serializedName: "clusterNameOverride", + type: { + name: "String" + } + }, + authenticationMethod: { + serializedName: "authenticationMethod", + type: { + name: "String" + } + }, + initialCassandraAdminPassword: { + serializedName: "initialCassandraAdminPassword", + type: { + name: "String" + } + }, + prometheusEndpoint: { + serializedName: "prometheusEndpoint", + type: { + name: "Composite", + className: "SeedNode" + } + }, + repairEnabled: { + serializedName: "repairEnabled", + type: { + name: "Boolean" + } + }, + clientCertificates: { + serializedName: "clientCertificates", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Certificate" } } } @@ -3537,6 +4027,43 @@ export const CommandOutput: coreClient.CompositeMapper = { } }; +export const ListBackups: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ListBackups", + modelProperties: { + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "BackupResource" + } + } + } + } + } + } +}; + +export const BackupResourceProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "BackupResourceProperties", + modelProperties: { + timestamp: { + serializedName: "timestamp", + type: { + name: "DateTime" + } + } + } + } +}; + export const ListDataCenters: coreClient.CompositeMapper = { type: { name: "Composite", @@ -3642,6 +4169,70 @@ export const DataCenterResourceProperties: coreClient.CompositeMapper = { type: { name: "Boolean" } + }, + authenticationMethodLdapProperties: { + serializedName: "authenticationMethodLdapProperties", + type: { + name: "Composite", + className: "AuthenticationMethodLdapProperties" + } + } + } + } +}; + +export const AuthenticationMethodLdapProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "AuthenticationMethodLdapProperties", + modelProperties: { + serverHostname: { + serializedName: "serverHostname", + type: { + name: "String" + } + }, + serverPort: { + serializedName: "serverPort", + type: { + name: "Number" + } + }, + serviceUserDistinguishedName: { + serializedName: "serviceUserDistinguishedName", + type: { + name: "String" + } + }, + serviceUserPassword: { + serializedName: "serviceUserPassword", + type: { + name: "String" + } + }, + searchBaseDistinguishedName: { + serializedName: "searchBaseDistinguishedName", + type: { + name: "String" + } + }, + searchFilterTemplate: { + serializedName: "searchFilterTemplate", + type: { + name: "String" + } + }, + serverCertificates: { + serializedName: "serverCertificates", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Certificate" + } + } + } } } } @@ -3911,46 +4502,47 @@ export const ComponentsM9L909SchemasCassandraclusterpublicstatusPropertiesDatace } }; -export const Privilege: coreClient.CompositeMapper = { +export const MongoClusterListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Privilege", + className: "MongoClusterListResult", modelProperties: { - resource: { - serializedName: "resource", - type: { - name: "Composite", - className: "PrivilegeResource" - } - }, - actions: { - serializedName: "actions", + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "MongoCluster" } } } + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, + type: { + name: "String" + } } } } }; -export const PrivilegeResource: coreClient.CompositeMapper = { +export const MongoClusterRestoreParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivilegeResource", + className: "MongoClusterRestoreParameters", modelProperties: { - db: { - serializedName: "db", + pointInTimeUTC: { + serializedName: "pointInTimeUTC", type: { - name: "String" + name: "DateTime" } }, - collection: { - serializedName: "collection", + sourceResourceId: { + serializedName: "sourceResourceId", type: { name: "String" } @@ -3959,71 +4551,134 @@ export const PrivilegeResource: coreClient.CompositeMapper = { } }; -export const Role: coreClient.CompositeMapper = { +export const NodeGroupProperties: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Role", + className: "NodeGroupProperties", modelProperties: { - db: { - serializedName: "db", + sku: { + serializedName: "sku", type: { name: "String" } }, - role: { - serializedName: "role", + diskSizeGB: { + serializedName: "diskSizeGB", type: { - name: "String" + name: "Number" + } + }, + enableHa: { + serializedName: "enableHa", + type: { + name: "Boolean" } } } } }; -export const MongoRoleDefinitionCreateUpdateParameters: coreClient.CompositeMapper = { +export const ResourceAutoGenerated: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoRoleDefinitionCreateUpdateParameters", + className: "ResourceAutoGenerated", modelProperties: { - roleName: { - serializedName: "properties.roleName", + id: { + serializedName: "id", + readOnly: true, + type: { + name: "String" + } + }, + name: { + serializedName: "name", + readOnly: true, type: { name: "String" } }, type: { - serializedName: "properties.type", + serializedName: "type", + readOnly: true, type: { - name: "Enum", - allowedValues: ["BuiltInRole", "CustomRole"] + name: "String" } }, - databaseName: { - serializedName: "properties.databaseName", + systemData: { + serializedName: "systemData", + type: { + name: "Composite", + className: "SystemData" + } + } + } + } +}; + +export const ErrorResponseAutoGenerated: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ErrorResponseAutoGenerated", + 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" } }, - privileges: { - serializedName: "properties.privileges", + 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: "Privilege" + className: "ErrorDetail" } } } }, - roles: { - serializedName: "properties.roles", + additionalInfo: { + serializedName: "additionalInfo", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "Role" + className: "ErrorAdditionalInfo" } } } @@ -4032,137 +4687,188 @@ export const MongoRoleDefinitionCreateUpdateParameters: coreClient.CompositeMapp } }; -export const MongoRoleDefinitionListResult: coreClient.CompositeMapper = { +export const ErrorAdditionalInfo: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoRoleDefinitionListResult", + className: "ErrorAdditionalInfo", modelProperties: { - value: { - serializedName: "value", + type: { + serializedName: "type", readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MongoRoleDefinitionGetResults" - } - } + name: "String" + } + }, + info: { + serializedName: "info", + readOnly: true, + type: { + name: "Dictionary", + value: { type: { name: "any" } } } } } } }; -export const MongoUserDefinitionCreateUpdateParameters: coreClient.CompositeMapper = { +export const MongoClusterUpdate: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoUserDefinitionCreateUpdateParameters", + className: "MongoClusterUpdate", modelProperties: { - userName: { - serializedName: "properties.userName", + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + createMode: { + serializedName: "properties.createMode", type: { name: "String" } }, - password: { - serializedName: "properties.password", + restoreParameters: { + serializedName: "properties.restoreParameters", + type: { + name: "Composite", + className: "MongoClusterRestoreParameters" + } + }, + administratorLogin: { + serializedName: "properties.administratorLogin", type: { name: "String" } }, - databaseName: { - serializedName: "properties.databaseName", + administratorLoginPassword: { + serializedName: "properties.administratorLoginPassword", type: { name: "String" } }, - customData: { - serializedName: "properties.customData", + serverVersion: { + serializedName: "properties.serverVersion", type: { name: "String" } }, - roles: { - serializedName: "properties.roles", + connectionString: { + serializedName: "properties.connectionString", + readOnly: true, + type: { + name: "String" + } + }, + earliestRestoreTime: { + serializedName: "properties.earliestRestoreTime", + readOnly: true, + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + clusterStatus: { + serializedName: "properties.clusterStatus", + readOnly: true, + type: { + name: "String" + } + }, + nodeGroupSpecs: { + constraints: { + MinItems: 1 + }, + serializedName: "properties.nodeGroupSpecs", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Role" + className: "NodeGroupSpec" } } } - }, - mechanisms: { - serializedName: "properties.mechanisms", - type: { - name: "String" - } } } } }; -export const MongoUserDefinitionListResult: coreClient.CompositeMapper = { +export const FirewallRuleListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoUserDefinitionListResult", + className: "FirewallRuleListResult", modelProperties: { value: { serializedName: "value", - readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "MongoUserDefinitionGetResults" + className: "FirewallRule" } } } + }, + nextLink: { + serializedName: "nextLink", + readOnly: true, + type: { + name: "String" + } } } } }; -export const NotebookWorkspaceListResult: coreClient.CompositeMapper = { +export const CheckNameAvailabilityRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "NotebookWorkspaceListResult", + className: "CheckNameAvailabilityRequest", modelProperties: { - value: { - serializedName: "value", + name: { + serializedName: "name", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "NotebookWorkspace" - } - } + name: "String" + } + }, + type: { + serializedName: "type", + type: { + name: "String" } } } } }; -export const NotebookWorkspaceConnectionInfoResult: coreClient.CompositeMapper = { +export const CheckNameAvailabilityResponse: coreClient.CompositeMapper = { type: { name: "Composite", - className: "NotebookWorkspaceConnectionInfoResult", + className: "CheckNameAvailabilityResponse", modelProperties: { - authToken: { - serializedName: "authToken", - readOnly: true, + nameAvailable: { + serializedName: "nameAvailable", + type: { + name: "Boolean" + } + }, + reason: { + serializedName: "reason", type: { name: "String" } }, - notebookServerEndpoint: { - serializedName: "notebookServerEndpoint", - readOnly: true, + message: { + serializedName: "message", type: { name: "String" } @@ -4171,19 +4877,20 @@ export const NotebookWorkspaceConnectionInfoResult: coreClient.CompositeMapper = } }; -export const PrivateEndpointConnectionListResult: coreClient.CompositeMapper = { +export const ListConnectionStringsResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateEndpointConnectionListResult", + className: "ListConnectionStringsResult", modelProperties: { - value: { - serializedName: "value", + connectionStrings: { + serializedName: "connectionStrings", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "PrivateEndpointConnection" + className: "ConnectionString" } } } @@ -4192,45 +4899,43 @@ export const PrivateEndpointConnectionListResult: coreClient.CompositeMapper = { } }; -export const PrivateLinkResourceListResult: coreClient.CompositeMapper = { +export const ConnectionString: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateLinkResourceListResult", + className: "ConnectionString", modelProperties: { - value: { - serializedName: "value", + connectionString: { + serializedName: "connectionString", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PrivateLinkResource" - } - } + name: "String" + } + }, + description: { + serializedName: "description", + readOnly: true, + type: { + name: "String" } } } } }; -export const Permission: coreClient.CompositeMapper = { +export const Privilege: coreClient.CompositeMapper = { type: { name: "Composite", - className: "Permission", + className: "Privilege", modelProperties: { - dataActions: { - serializedName: "dataActions", + resource: { + serializedName: "resource", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "Composite", + className: "PrivilegeResource" } }, - notDataActions: { - serializedName: "notDataActions", + actions: { + serializedName: "actions", type: { name: "Sequence", element: { @@ -4244,10 +4949,52 @@ export const Permission: coreClient.CompositeMapper = { } }; -export const SqlRoleDefinitionCreateUpdateParameters: coreClient.CompositeMapper = { +export const PrivilegeResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlRoleDefinitionCreateUpdateParameters", + className: "PrivilegeResource", + modelProperties: { + db: { + serializedName: "db", + type: { + name: "String" + } + }, + collection: { + serializedName: "collection", + type: { + name: "String" + } + } + } + } +}; + +export const Role: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "Role", + modelProperties: { + db: { + serializedName: "db", + type: { + name: "String" + } + }, + role: { + serializedName: "role", + type: { + name: "String" + } + } + } + } +}; + +export const MongoRoleDefinitionCreateUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoRoleDefinitionCreateUpdateParameters", modelProperties: { roleName: { serializedName: "properties.roleName", @@ -4262,25 +5009,32 @@ export const SqlRoleDefinitionCreateUpdateParameters: coreClient.CompositeMapper allowedValues: ["BuiltInRole", "CustomRole"] } }, - assignableScopes: { - serializedName: "properties.assignableScopes", + databaseName: { + serializedName: "properties.databaseName", + type: { + name: "String" + } + }, + privileges: { + serializedName: "properties.privileges", type: { name: "Sequence", element: { type: { - name: "String" + name: "Composite", + className: "Privilege" } } } }, - permissions: { - serializedName: "properties.permissions", + roles: { + serializedName: "properties.roles", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Permission" + className: "Role" } } } @@ -4289,10 +5043,10 @@ export const SqlRoleDefinitionCreateUpdateParameters: coreClient.CompositeMapper } }; -export const SqlRoleDefinitionListResult: coreClient.CompositeMapper = { +export const MongoRoleDefinitionListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlRoleDefinitionListResult", + className: "MongoRoleDefinitionListResult", modelProperties: { value: { serializedName: "value", @@ -4302,7 +5056,7 @@ export const SqlRoleDefinitionListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "SqlRoleDefinitionGetResults" + className: "MongoRoleDefinitionGetResults" } } } @@ -4311,59 +5065,61 @@ export const SqlRoleDefinitionListResult: coreClient.CompositeMapper = { } }; -export const SqlRoleAssignmentCreateUpdateParameters: coreClient.CompositeMapper = { +export const MongoUserDefinitionCreateUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlRoleAssignmentCreateUpdateParameters", + className: "MongoUserDefinitionCreateUpdateParameters", modelProperties: { - roleDefinitionId: { - serializedName: "properties.roleDefinitionId", + userName: { + serializedName: "properties.userName", type: { name: "String" } }, - scope: { - serializedName: "properties.scope", + password: { + serializedName: "properties.password", type: { name: "String" } }, - principalId: { - serializedName: "properties.principalId", + databaseName: { + serializedName: "properties.databaseName", type: { name: "String" } - } - } - } -}; - -export const SqlRoleAssignmentListResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SqlRoleAssignmentListResult", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, + }, + customData: { + serializedName: "properties.customData", + type: { + name: "String" + } + }, + roles: { + serializedName: "properties.roles", type: { name: "Sequence", element: { type: { name: "Composite", - className: "SqlRoleAssignmentGetResults" + className: "Role" } } } + }, + mechanisms: { + serializedName: "properties.mechanisms", + type: { + name: "String" + } } } } }; -export const RestorableDatabaseAccountsListResult: coreClient.CompositeMapper = { +export const MongoUserDefinitionListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableDatabaseAccountsListResult", + className: "MongoUserDefinitionListResult", modelProperties: { value: { serializedName: "value", @@ -4373,7 +5129,7 @@ export const RestorableDatabaseAccountsListResult: coreClient.CompositeMapper = element: { type: { name: "Composite", - className: "RestorableDatabaseAccountGetResult" + className: "MongoUserDefinitionGetResults" } } } @@ -4382,72 +5138,19 @@ export const RestorableDatabaseAccountsListResult: coreClient.CompositeMapper = } }; -export const RestorableDatabaseAccountGetResult: coreClient.CompositeMapper = { +export const NotebookWorkspaceListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableDatabaseAccountGetResult", + className: "NotebookWorkspaceListResult", 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" - } - }, - location: { - serializedName: "location", - type: { - name: "String" - } - }, - accountName: { - serializedName: "properties.accountName", - type: { - name: "String" - } - }, - creationTime: { - serializedName: "properties.creationTime", - type: { - name: "DateTime" - } - }, - deletionTime: { - serializedName: "properties.deletionTime", - type: { - name: "DateTime" - } - }, - apiType: { - serializedName: "properties.apiType", - readOnly: true, - type: { - name: "String" - } - }, - restorableLocations: { - serializedName: "properties.restorableLocations", - readOnly: true, + value: { + serializedName: "value", type: { name: "Sequence", element: { type: { name: "Composite", - className: "RestorableLocationResource" + className: "NotebookWorkspace" } } } @@ -4456,103 +5159,94 @@ export const RestorableDatabaseAccountGetResult: coreClient.CompositeMapper = { } }; -export const RestorableLocationResource: coreClient.CompositeMapper = { +export const NotebookWorkspaceConnectionInfoResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableLocationResource", + className: "NotebookWorkspaceConnectionInfoResult", modelProperties: { - locationName: { - serializedName: "locationName", + authToken: { + serializedName: "authToken", readOnly: true, type: { name: "String" } }, - regionalDatabaseAccountInstanceId: { - serializedName: "regionalDatabaseAccountInstanceId", + notebookServerEndpoint: { + serializedName: "notebookServerEndpoint", readOnly: true, type: { name: "String" } - }, - creationTime: { - serializedName: "creationTime", - readOnly: true, - type: { - name: "DateTime" - } - }, - deletionTime: { - serializedName: "deletionTime", - readOnly: true, - type: { - name: "DateTime" - } } } } }; -export const ContinuousBackupRestoreLocation: coreClient.CompositeMapper = { +export const PrivateEndpointConnectionListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ContinuousBackupRestoreLocation", + className: "PrivateEndpointConnectionListResult", modelProperties: { - location: { - serializedName: "location", + value: { + serializedName: "value", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateEndpointConnection" + } + } } } } } }; -export const BackupInformation: coreClient.CompositeMapper = { +export const PrivateLinkResourceListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "BackupInformation", + className: "PrivateLinkResourceListResult", modelProperties: { - continuousBackupInformation: { - serializedName: "continuousBackupInformation", + value: { + serializedName: "value", type: { - name: "Composite", - className: "ContinuousBackupInformation" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PrivateLinkResource" + } + } } } } } }; -export const ContinuousBackupInformation: coreClient.CompositeMapper = { +export const Permission: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ContinuousBackupInformation", + className: "Permission", modelProperties: { - latestRestorableTimestamp: { - serializedName: "latestRestorableTimestamp", + dataActions: { + serializedName: "dataActions", type: { - name: "String" - } - } - } - } -}; - -export const RestorableSqlDatabasesListResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestorableSqlDatabasesListResult", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + notDataActions: { + serializedName: "notDataActions", type: { name: "Sequence", element: { type: { - name: "Composite", - className: "RestorableSqlDatabaseGetResult" + name: "String" } } } @@ -4561,98 +5255,126 @@ export const RestorableSqlDatabasesListResult: coreClient.CompositeMapper = { } }; -export const RestorableSqlDatabaseGetResult: coreClient.CompositeMapper = { +export const SqlRoleDefinitionCreateUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableSqlDatabaseGetResult", + className: "SqlRoleDefinitionCreateUpdateParameters", modelProperties: { - id: { - serializedName: "id", - readOnly: true, + roleName: { + serializedName: "properties.roleName", type: { name: "String" } }, - name: { - serializedName: "name", - readOnly: true, + type: { + serializedName: "properties.type", type: { - name: "String" + name: "Enum", + allowedValues: ["BuiltInRole", "CustomRole"] } }, - type: { - serializedName: "type", - readOnly: true, + assignableScopes: { + serializedName: "properties.assignableScopes", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "String" + } + } } }, - resource: { - serializedName: "properties.resource", + permissions: { + serializedName: "properties.permissions", type: { - name: "Composite", - className: "RestorableSqlDatabasePropertiesResource" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Permission" + } + } } } } } }; -export const RestorableSqlDatabasePropertiesResource: coreClient.CompositeMapper = { +export const SqlRoleDefinitionListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableSqlDatabasePropertiesResource", + className: "SqlRoleDefinitionListResult", modelProperties: { - rid: { - serializedName: "_rid", + value: { + serializedName: "value", readOnly: true, type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SqlRoleDefinitionGetResults" + } + } } - }, - operationType: { - serializedName: "operationType", - readOnly: true, + } + } + } +}; + +export const SqlRoleAssignmentCreateUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlRoleAssignmentCreateUpdateParameters", + modelProperties: { + roleDefinitionId: { + serializedName: "properties.roleDefinitionId", type: { name: "String" } }, - eventTimestamp: { - serializedName: "eventTimestamp", - readOnly: true, + scope: { + serializedName: "properties.scope", type: { name: "String" } }, - ownerId: { - serializedName: "ownerId", - readOnly: true, + principalId: { + serializedName: "properties.principalId", type: { name: "String" } - }, - ownerResourceId: { - serializedName: "ownerResourceId", + } + } + } +}; + +export const SqlRoleAssignmentListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlRoleAssignmentListResult", + modelProperties: { + value: { + serializedName: "value", readOnly: true, type: { - name: "String" - } - }, - database: { - serializedName: "database", - type: { - name: "Composite", - className: "RestorableSqlDatabasePropertiesResourceDatabase" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "SqlRoleAssignmentGetResults" + } + } } } } } }; -export const RestorableSqlContainersListResult: coreClient.CompositeMapper = { +export const RestorableDatabaseAccountsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableSqlContainersListResult", + className: "RestorableDatabaseAccountsListResult", modelProperties: { value: { serializedName: "value", @@ -4662,7 +5384,7 @@ export const RestorableSqlContainersListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "RestorableSqlContainerGetResult" + className: "RestorableDatabaseAccountGetResult" } } } @@ -4671,10 +5393,10 @@ export const RestorableSqlContainersListResult: coreClient.CompositeMapper = { } }; -export const RestorableSqlContainerGetResult: coreClient.CompositeMapper = { +export const RestorableDatabaseAccountGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableSqlContainerGetResult", + className: "RestorableDatabaseAccountGetResult", modelProperties: { id: { serializedName: "id", @@ -4697,82 +5419,52 @@ export const RestorableSqlContainerGetResult: coreClient.CompositeMapper = { name: "String" } }, - resource: { - serializedName: "properties.resource", + location: { + serializedName: "location", type: { - name: "Composite", - className: "RestorableSqlContainerPropertiesResource" + name: "String" } - } - } - } -}; - -export const RestorableSqlContainerPropertiesResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestorableSqlContainerPropertiesResource", - modelProperties: { - rid: { - serializedName: "_rid", - readOnly: true, + }, + accountName: { + serializedName: "properties.accountName", type: { name: "String" } }, - operationType: { - serializedName: "operationType", - readOnly: true, + creationTime: { + serializedName: "properties.creationTime", type: { - name: "String" + name: "DateTime" } }, - eventTimestamp: { - serializedName: "eventTimestamp", - readOnly: true, + oldestRestorableTime: { + serializedName: "properties.oldestRestorableTime", type: { - name: "String" + name: "DateTime" } }, - ownerId: { - serializedName: "ownerId", - readOnly: true, + deletionTime: { + serializedName: "properties.deletionTime", type: { - name: "String" + name: "DateTime" } }, - ownerResourceId: { - serializedName: "ownerResourceId", + apiType: { + serializedName: "properties.apiType", readOnly: true, type: { name: "String" } }, - container: { - serializedName: "container", - type: { - name: "Composite", - className: "RestorableSqlContainerPropertiesResourceContainer" - } - } - } - } -}; - -export const RestorableSqlResourcesListResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RestorableSqlResourcesListResult", - modelProperties: { - value: { - serializedName: "value", + restorableLocations: { + serializedName: "properties.restorableLocations", readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "RestorableSqlResourcesGetResult" + className: "RestorableLocationResource" } } } @@ -4781,59 +5473,95 @@ export const RestorableSqlResourcesListResult: coreClient.CompositeMapper = { } }; -export const RestorableSqlResourcesGetResult: coreClient.CompositeMapper = { +export const RestorableLocationResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableSqlResourcesGetResult", + className: "RestorableLocationResource", modelProperties: { - id: { - serializedName: "id", + locationName: { + serializedName: "locationName", readOnly: true, type: { name: "String" } }, - name: { - serializedName: "name", + regionalDatabaseAccountInstanceId: { + serializedName: "regionalDatabaseAccountInstanceId", readOnly: true, type: { name: "String" } }, - type: { - serializedName: "type", + creationTime: { + serializedName: "creationTime", readOnly: true, type: { - name: "String" - } - }, - databaseName: { - serializedName: "databaseName", - type: { - name: "String" + name: "DateTime" } }, - collectionNames: { - serializedName: "collectionNames", + deletionTime: { + serializedName: "deletionTime", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "DateTime" } } } } }; -export const RestorableMongodbDatabasesListResult: coreClient.CompositeMapper = { +export const ContinuousBackupRestoreLocation: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbDatabasesListResult", + className: "ContinuousBackupRestoreLocation", modelProperties: { - value: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const BackupInformation: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "BackupInformation", + modelProperties: { + continuousBackupInformation: { + serializedName: "continuousBackupInformation", + type: { + name: "Composite", + className: "ContinuousBackupInformation" + } + } + } + } +}; + +export const ContinuousBackupInformation: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ContinuousBackupInformation", + modelProperties: { + latestRestorableTimestamp: { + serializedName: "latestRestorableTimestamp", + type: { + name: "String" + } + } + } + } +}; + +export const RestorableSqlDatabasesListResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RestorableSqlDatabasesListResult", + modelProperties: { + value: { serializedName: "value", readOnly: true, type: { @@ -4841,7 +5569,7 @@ export const RestorableMongodbDatabasesListResult: coreClient.CompositeMapper = element: { type: { name: "Composite", - className: "RestorableMongodbDatabaseGetResult" + className: "RestorableSqlDatabaseGetResult" } } } @@ -4850,10 +5578,10 @@ export const RestorableMongodbDatabasesListResult: coreClient.CompositeMapper = } }; -export const RestorableMongodbDatabaseGetResult: coreClient.CompositeMapper = { +export const RestorableSqlDatabaseGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbDatabaseGetResult", + className: "RestorableSqlDatabaseGetResult", modelProperties: { id: { serializedName: "id", @@ -4880,17 +5608,17 @@ export const RestorableMongodbDatabaseGetResult: coreClient.CompositeMapper = { serializedName: "properties.resource", type: { name: "Composite", - className: "RestorableMongodbDatabasePropertiesResource" + className: "RestorableSqlDatabasePropertiesResource" } } } } }; -export const RestorableMongodbDatabasePropertiesResource: coreClient.CompositeMapper = { +export const RestorableSqlDatabasePropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbDatabasePropertiesResource", + className: "RestorableSqlDatabasePropertiesResource", modelProperties: { rid: { serializedName: "_rid", @@ -4926,15 +5654,22 @@ export const RestorableMongodbDatabasePropertiesResource: coreClient.CompositeMa type: { name: "String" } + }, + database: { + serializedName: "database", + type: { + name: "Composite", + className: "RestorableSqlDatabasePropertiesResourceDatabase" + } } } } }; -export const RestorableMongodbCollectionsListResult: coreClient.CompositeMapper = { +export const RestorableSqlContainersListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbCollectionsListResult", + className: "RestorableSqlContainersListResult", modelProperties: { value: { serializedName: "value", @@ -4944,7 +5679,7 @@ export const RestorableMongodbCollectionsListResult: coreClient.CompositeMapper element: { type: { name: "Composite", - className: "RestorableMongodbCollectionGetResult" + className: "RestorableSqlContainerGetResult" } } } @@ -4953,10 +5688,10 @@ export const RestorableMongodbCollectionsListResult: coreClient.CompositeMapper } }; -export const RestorableMongodbCollectionGetResult: coreClient.CompositeMapper = { +export const RestorableSqlContainerGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbCollectionGetResult", + className: "RestorableSqlContainerGetResult", modelProperties: { id: { serializedName: "id", @@ -4983,17 +5718,17 @@ export const RestorableMongodbCollectionGetResult: coreClient.CompositeMapper = serializedName: "properties.resource", type: { name: "Composite", - className: "RestorableMongodbCollectionPropertiesResource" + className: "RestorableSqlContainerPropertiesResource" } } } } }; -export const RestorableMongodbCollectionPropertiesResource: coreClient.CompositeMapper = { +export const RestorableSqlContainerPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbCollectionPropertiesResource", + className: "RestorableSqlContainerPropertiesResource", modelProperties: { rid: { serializedName: "_rid", @@ -5029,15 +5764,22 @@ export const RestorableMongodbCollectionPropertiesResource: coreClient.Composite type: { name: "String" } + }, + container: { + serializedName: "container", + type: { + name: "Composite", + className: "RestorableSqlContainerPropertiesResourceContainer" + } } } } }; -export const RestorableMongodbResourcesListResult: coreClient.CompositeMapper = { +export const RestorableSqlResourcesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbResourcesListResult", + className: "RestorableSqlResourcesListResult", modelProperties: { value: { serializedName: "value", @@ -5047,7 +5789,7 @@ export const RestorableMongodbResourcesListResult: coreClient.CompositeMapper = element: { type: { name: "Composite", - className: "RestorableMongodbResourcesGetResult" + className: "RestorableSqlResourcesGetResult" } } } @@ -5056,10 +5798,10 @@ export const RestorableMongodbResourcesListResult: coreClient.CompositeMapper = } }; -export const RestorableMongodbResourcesGetResult: coreClient.CompositeMapper = { +export const RestorableSqlResourcesGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableMongodbResourcesGetResult", + className: "RestorableSqlResourcesGetResult", modelProperties: { id: { serializedName: "id", @@ -5103,10 +5845,10 @@ export const RestorableMongodbResourcesGetResult: coreClient.CompositeMapper = { } }; -export const RestorableGremlinDatabasesListResult: coreClient.CompositeMapper = { +export const RestorableMongodbDatabasesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinDatabasesListResult", + className: "RestorableMongodbDatabasesListResult", modelProperties: { value: { serializedName: "value", @@ -5116,7 +5858,7 @@ export const RestorableGremlinDatabasesListResult: coreClient.CompositeMapper = element: { type: { name: "Composite", - className: "RestorableGremlinDatabaseGetResult" + className: "RestorableMongodbDatabaseGetResult" } } } @@ -5125,10 +5867,10 @@ export const RestorableGremlinDatabasesListResult: coreClient.CompositeMapper = } }; -export const RestorableGremlinDatabaseGetResult: coreClient.CompositeMapper = { +export const RestorableMongodbDatabaseGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinDatabaseGetResult", + className: "RestorableMongodbDatabaseGetResult", modelProperties: { id: { serializedName: "id", @@ -5155,17 +5897,17 @@ export const RestorableGremlinDatabaseGetResult: coreClient.CompositeMapper = { serializedName: "properties.resource", type: { name: "Composite", - className: "RestorableGremlinDatabasePropertiesResource" + className: "RestorableMongodbDatabasePropertiesResource" } } } } }; -export const RestorableGremlinDatabasePropertiesResource: coreClient.CompositeMapper = { +export const RestorableMongodbDatabasePropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinDatabasePropertiesResource", + className: "RestorableMongodbDatabasePropertiesResource", modelProperties: { rid: { serializedName: "_rid", @@ -5206,10 +5948,10 @@ export const RestorableGremlinDatabasePropertiesResource: coreClient.CompositeMa } }; -export const RestorableGremlinGraphsListResult: coreClient.CompositeMapper = { +export const RestorableMongodbCollectionsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinGraphsListResult", + className: "RestorableMongodbCollectionsListResult", modelProperties: { value: { serializedName: "value", @@ -5219,7 +5961,7 @@ export const RestorableGremlinGraphsListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "RestorableGremlinGraphGetResult" + className: "RestorableMongodbCollectionGetResult" } } } @@ -5228,10 +5970,10 @@ export const RestorableGremlinGraphsListResult: coreClient.CompositeMapper = { } }; -export const RestorableGremlinGraphGetResult: coreClient.CompositeMapper = { +export const RestorableMongodbCollectionGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinGraphGetResult", + className: "RestorableMongodbCollectionGetResult", modelProperties: { id: { serializedName: "id", @@ -5258,17 +6000,17 @@ export const RestorableGremlinGraphGetResult: coreClient.CompositeMapper = { serializedName: "properties.resource", type: { name: "Composite", - className: "RestorableGremlinGraphPropertiesResource" + className: "RestorableMongodbCollectionPropertiesResource" } } } } }; -export const RestorableGremlinGraphPropertiesResource: coreClient.CompositeMapper = { +export const RestorableMongodbCollectionPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinGraphPropertiesResource", + className: "RestorableMongodbCollectionPropertiesResource", modelProperties: { rid: { serializedName: "_rid", @@ -5309,10 +6051,10 @@ export const RestorableGremlinGraphPropertiesResource: coreClient.CompositeMappe } }; -export const RestorableGremlinResourcesListResult: coreClient.CompositeMapper = { +export const RestorableMongodbResourcesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinResourcesListResult", + className: "RestorableMongodbResourcesListResult", modelProperties: { value: { serializedName: "value", @@ -5322,7 +6064,7 @@ export const RestorableGremlinResourcesListResult: coreClient.CompositeMapper = element: { type: { name: "Composite", - className: "RestorableGremlinResourcesGetResult" + className: "RestorableMongodbResourcesGetResult" } } } @@ -5331,10 +6073,10 @@ export const RestorableGremlinResourcesListResult: coreClient.CompositeMapper = } }; -export const RestorableGremlinResourcesGetResult: coreClient.CompositeMapper = { +export const RestorableMongodbResourcesGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableGremlinResourcesGetResult", + className: "RestorableMongodbResourcesGetResult", modelProperties: { id: { serializedName: "id", @@ -5363,8 +6105,8 @@ export const RestorableGremlinResourcesGetResult: coreClient.CompositeMapper = { name: "String" } }, - graphNames: { - serializedName: "graphNames", + collectionNames: { + serializedName: "collectionNames", type: { name: "Sequence", element: { @@ -5378,10 +6120,10 @@ export const RestorableGremlinResourcesGetResult: coreClient.CompositeMapper = { } }; -export const RestorableTablesListResult: coreClient.CompositeMapper = { +export const RestorableGremlinDatabasesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableTablesListResult", + className: "RestorableGremlinDatabasesListResult", modelProperties: { value: { serializedName: "value", @@ -5391,7 +6133,7 @@ export const RestorableTablesListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "RestorableTableGetResult" + className: "RestorableGremlinDatabaseGetResult" } } } @@ -5400,10 +6142,10 @@ export const RestorableTablesListResult: coreClient.CompositeMapper = { } }; -export const RestorableTableGetResult: coreClient.CompositeMapper = { +export const RestorableGremlinDatabaseGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableTableGetResult", + className: "RestorableGremlinDatabaseGetResult", modelProperties: { id: { serializedName: "id", @@ -5430,17 +6172,17 @@ export const RestorableTableGetResult: coreClient.CompositeMapper = { serializedName: "properties.resource", type: { name: "Composite", - className: "RestorableTablePropertiesResource" + className: "RestorableGremlinDatabasePropertiesResource" } } } } }; -export const RestorableTablePropertiesResource: coreClient.CompositeMapper = { +export const RestorableGremlinDatabasePropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableTablePropertiesResource", + className: "RestorableGremlinDatabasePropertiesResource", modelProperties: { rid: { serializedName: "_rid", @@ -5481,10 +6223,10 @@ export const RestorableTablePropertiesResource: coreClient.CompositeMapper = { } }; -export const RestorableTableResourcesListResult: coreClient.CompositeMapper = { +export const RestorableGremlinGraphsListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableTableResourcesListResult", + className: "RestorableGremlinGraphsListResult", modelProperties: { value: { serializedName: "value", @@ -5494,7 +6236,7 @@ export const RestorableTableResourcesListResult: coreClient.CompositeMapper = { element: { type: { name: "Composite", - className: "RestorableTableResourcesGetResult" + className: "RestorableGremlinGraphGetResult" } } } @@ -5503,10 +6245,10 @@ export const RestorableTableResourcesListResult: coreClient.CompositeMapper = { } }; -export const RestorableTableResourcesGetResult: coreClient.CompositeMapper = { +export const RestorableGremlinGraphGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableTableResourcesGetResult", + className: "RestorableGremlinGraphGetResult", modelProperties: { id: { serializedName: "id", @@ -5528,76 +6270,53 @@ export const RestorableTableResourcesGetResult: coreClient.CompositeMapper = { type: { name: "String" } - } - } - } -}; - -export const ServiceResourceListResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ServiceResourceListResult", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, + }, + resource: { + serializedName: "properties.resource", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ServiceResource" - } - } + name: "Composite", + className: "RestorableGremlinGraphPropertiesResource" } } } } }; -export const ServiceResourceProperties: coreClient.CompositeMapper = { - serializedName: "ServiceResourceProperties", +export const RestorableGremlinGraphPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceResourceProperties", - uberParent: "ServiceResourceProperties", - additionalProperties: { type: { name: "Object" } }, - polymorphicDiscriminator: { - serializedName: "serviceType", - clientName: "serviceType" - }, + className: "RestorableGremlinGraphPropertiesResource", modelProperties: { - creationTime: { - serializedName: "creationTime", + rid: { + serializedName: "_rid", readOnly: true, type: { - name: "DateTime" + name: "String" } }, - instanceSize: { - serializedName: "instanceSize", + operationType: { + serializedName: "operationType", + readOnly: true, type: { name: "String" } }, - instanceCount: { - constraints: { - InclusiveMinimum: 0 - }, - serializedName: "instanceCount", + eventTimestamp: { + serializedName: "eventTimestamp", + readOnly: true, type: { - name: "Number" + name: "String" } }, - serviceType: { - serializedName: "serviceType", - required: true, + ownerId: { + serializedName: "ownerId", + readOnly: true, type: { name: "String" } }, - status: { - serializedName: "status", + ownerResourceId: { + serializedName: "ownerResourceId", readOnly: true, type: { name: "String" @@ -5607,226 +6326,606 @@ export const ServiceResourceProperties: coreClient.CompositeMapper = { } }; -export const ServiceResourceCreateUpdateParameters: coreClient.CompositeMapper = { +export const RestorableGremlinResourcesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceResourceCreateUpdateParameters", + className: "RestorableGremlinResourcesListResult", modelProperties: { - instanceSize: { - serializedName: "properties.instanceSize", + value: { + serializedName: "value", + readOnly: true, type: { - name: "String" - } - }, - instanceCount: { - constraints: { - InclusiveMinimum: 0 - }, - serializedName: "properties.instanceCount", - type: { - name: "Number" - } - }, - serviceType: { - serializedName: "properties.serviceType", - type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RestorableGremlinResourcesGetResult" + } + } } } } } }; -export const PeriodicModeProperties: coreClient.CompositeMapper = { +export const RestorableGremlinResourcesGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PeriodicModeProperties", + className: "RestorableGremlinResourcesGetResult", modelProperties: { - backupIntervalInMinutes: { - constraints: { - InclusiveMinimum: 0 - }, - serializedName: "backupIntervalInMinutes", + id: { + serializedName: "id", + readOnly: true, type: { - name: "Number" + name: "String" } }, - backupRetentionIntervalInHours: { - constraints: { - InclusiveMinimum: 0 - }, - serializedName: "backupRetentionIntervalInHours", + name: { + serializedName: "name", + readOnly: true, type: { - name: "Number" + name: "String" } }, - backupStorageRedundancy: { - serializedName: "backupStorageRedundancy", + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" + } + }, + databaseName: { + serializedName: "databaseName", type: { name: "String" } + }, + graphNames: { + serializedName: "graphNames", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } } } } }; -export const DataTransferServiceResource: coreClient.CompositeMapper = { +export const RestorableTablesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DataTransferServiceResource", + className: "RestorableTablesListResult", modelProperties: { - properties: { - serializedName: "properties", + value: { + serializedName: "value", + readOnly: true, type: { - name: "Composite", - className: "DataTransferServiceResourceProperties" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RestorableTableGetResult" + } + } } } } } }; -export const RegionalServiceResource: coreClient.CompositeMapper = { +export const RestorableTableGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RegionalServiceResource", + className: "RestorableTableGetResult", modelProperties: { - name: { - serializedName: "name", + id: { + serializedName: "id", readOnly: true, type: { name: "String" } }, - location: { - serializedName: "location", + name: { + serializedName: "name", readOnly: true, type: { name: "String" } }, - status: { - serializedName: "status", + type: { + serializedName: "type", readOnly: true, type: { name: "String" } - } - } - } -}; - -export const SqlDedicatedGatewayServiceResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SqlDedicatedGatewayServiceResource", - modelProperties: { - properties: { - serializedName: "properties", + }, + resource: { + serializedName: "properties.resource", type: { name: "Composite", - className: "SqlDedicatedGatewayServiceResourceProperties" + className: "RestorableTablePropertiesResource" } } } } }; -export const GraphAPIComputeServiceResource: coreClient.CompositeMapper = { +export const RestorableTablePropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GraphAPIComputeServiceResource", + className: "RestorableTablePropertiesResource", modelProperties: { - properties: { - serializedName: "properties", + rid: { + serializedName: "_rid", + readOnly: true, type: { - name: "Composite", - className: "GraphAPIComputeServiceResourceProperties" + name: "String" + } + }, + operationType: { + serializedName: "operationType", + readOnly: true, + type: { + name: "String" + } + }, + eventTimestamp: { + serializedName: "eventTimestamp", + readOnly: true, + type: { + name: "String" + } + }, + ownerId: { + serializedName: "ownerId", + readOnly: true, + type: { + name: "String" + } + }, + ownerResourceId: { + serializedName: "ownerResourceId", + readOnly: true, + type: { + name: "String" } } } } }; -export const MaterializedViewsBuilderServiceResource: coreClient.CompositeMapper = { +export const RestorableTableResourcesListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MaterializedViewsBuilderServiceResource", + className: "RestorableTableResourcesListResult", modelProperties: { - properties: { - serializedName: "properties", + value: { + serializedName: "value", + readOnly: true, type: { - name: "Composite", - className: "MaterializedViewsBuilderServiceResourceProperties" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RestorableTableResourcesGetResult" + } + } } } } } }; -export const ProxyResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ProxyResource", - modelProperties: { - ...Resource.type.modelProperties - } - } -}; - -export const PeriodicModeBackupPolicy: coreClient.CompositeMapper = { - serializedName: "Periodic", +export const RestorableTableResourcesGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PeriodicModeBackupPolicy", - uberParent: "BackupPolicy", - polymorphicDiscriminator: BackupPolicy.type.polymorphicDiscriminator, + className: "RestorableTableResourcesGetResult", modelProperties: { - ...BackupPolicy.type.modelProperties, - periodicModeProperties: { - serializedName: "periodicModeProperties", + id: { + serializedName: "id", + readOnly: true, type: { - name: "Composite", - className: "PeriodicModeProperties" + name: "String" + } + }, + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + type: { + serializedName: "type", + readOnly: true, + type: { + name: "String" } } } } }; -export const ContinuousModeBackupPolicy: coreClient.CompositeMapper = { - serializedName: "Continuous", +export const ServiceResourceListResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ContinuousModeBackupPolicy", - uberParent: "BackupPolicy", - polymorphicDiscriminator: BackupPolicy.type.polymorphicDiscriminator, + className: "ServiceResourceListResult", modelProperties: { - ...BackupPolicy.type.modelProperties + value: { + serializedName: "value", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ServiceResource" + } + } + } + } } } }; -export const DatabaseAccountGetResults: coreClient.CompositeMapper = { +export const ServiceResourceProperties: coreClient.CompositeMapper = { + serializedName: "ServiceResourceProperties", type: { name: "Composite", - className: "DatabaseAccountGetResults", + className: "ServiceResourceProperties", + uberParent: "ServiceResourceProperties", + additionalProperties: { type: { name: "Object" } }, + polymorphicDiscriminator: { + serializedName: "serviceType", + clientName: "serviceType" + }, modelProperties: { - ...ARMResourceProperties.type.modelProperties, - kind: { - serializedName: "kind", + creationTime: { + serializedName: "creationTime", + readOnly: true, type: { - name: "String" + name: "DateTime" } }, - identity: { - serializedName: "identity", + instanceSize: { + serializedName: "instanceSize", type: { - name: "Composite", - className: "ManagedServiceIdentity" + name: "String" } }, - systemData: { + instanceCount: { + constraints: { + InclusiveMinimum: 0 + }, + serializedName: "instanceCount", + type: { + name: "Number" + } + }, + serviceType: { + serializedName: "serviceType", + required: true, + type: { + name: "String" + } + }, + status: { + serializedName: "status", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const ServiceResourceCreateUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ServiceResourceCreateUpdateParameters", + modelProperties: { + instanceSize: { + serializedName: "properties.instanceSize", + type: { + name: "String" + } + }, + instanceCount: { + constraints: { + InclusiveMinimum: 0 + }, + serializedName: "properties.instanceCount", + type: { + name: "Number" + } + }, + serviceType: { + serializedName: "properties.serviceType", + type: { + name: "String" + } + } + } + } +}; + +export const PeriodicModeProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PeriodicModeProperties", + modelProperties: { + backupIntervalInMinutes: { + constraints: { + InclusiveMinimum: 0 + }, + serializedName: "backupIntervalInMinutes", + type: { + name: "Number" + } + }, + backupRetentionIntervalInHours: { + constraints: { + InclusiveMinimum: 0 + }, + serializedName: "backupRetentionIntervalInHours", + type: { + name: "Number" + } + }, + backupStorageRedundancy: { + serializedName: "backupStorageRedundancy", + type: { + name: "String" + } + } + } + } +}; + +export const ContinuousModeProperties: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ContinuousModeProperties", + modelProperties: { + tier: { + serializedName: "tier", + type: { + name: "String" + } + } + } + } +}; + +export const DataTransferServiceResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DataTransferServiceResource", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "DataTransferServiceResourceProperties" + } + } + } + } +}; + +export const RegionalServiceResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RegionalServiceResource", + modelProperties: { + name: { + serializedName: "name", + readOnly: true, + type: { + name: "String" + } + }, + location: { + serializedName: "location", + readOnly: true, + type: { + name: "String" + } + }, + status: { + serializedName: "status", + readOnly: true, + type: { + name: "String" + } + } + } + } +}; + +export const SqlDedicatedGatewayServiceResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlDedicatedGatewayServiceResource", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "SqlDedicatedGatewayServiceResourceProperties" + } + } + } + } +}; + +export const GraphAPIComputeServiceResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GraphAPIComputeServiceResource", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "GraphAPIComputeServiceResourceProperties" + } + } + } + } +}; + +export const MaterializedViewsBuilderServiceResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MaterializedViewsBuilderServiceResource", + modelProperties: { + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "MaterializedViewsBuilderServiceResourceProperties" + } + } + } + } +}; + +export const ProxyResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ProxyResource", + modelProperties: { + ...Resource.type.modelProperties + } + } +}; + +export const RestoreParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RestoreParameters", + modelProperties: { + ...RestoreParametersBase.type.modelProperties, + restoreMode: { + serializedName: "restoreMode", + type: { + name: "String" + } + }, + databasesToRestore: { + serializedName: "databasesToRestore", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DatabaseRestoreResource" + } + } + } + }, + gremlinDatabasesToRestore: { + serializedName: "gremlinDatabasesToRestore", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "GremlinDatabaseRestoreResource" + } + } + } + }, + tablesToRestore: { + serializedName: "tablesToRestore", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + sourceBackupLocation: { + serializedName: "sourceBackupLocation", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceRestoreParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ResourceRestoreParameters", + modelProperties: { + ...RestoreParametersBase.type.modelProperties + } + } +}; + +export const PeriodicModeBackupPolicy: coreClient.CompositeMapper = { + serializedName: "Periodic", + type: { + name: "Composite", + className: "PeriodicModeBackupPolicy", + uberParent: "BackupPolicy", + polymorphicDiscriminator: BackupPolicy.type.polymorphicDiscriminator, + modelProperties: { + ...BackupPolicy.type.modelProperties, + periodicModeProperties: { + serializedName: "periodicModeProperties", + type: { + name: "Composite", + className: "PeriodicModeProperties" + } + } + } + } +}; + +export const ContinuousModeBackupPolicy: coreClient.CompositeMapper = { + serializedName: "Continuous", + type: { + name: "Composite", + className: "ContinuousModeBackupPolicy", + uberParent: "BackupPolicy", + polymorphicDiscriminator: BackupPolicy.type.polymorphicDiscriminator, + modelProperties: { + ...BackupPolicy.type.modelProperties, + continuousModeProperties: { + serializedName: "continuousModeProperties", + type: { + name: "Composite", + className: "ContinuousModeProperties" + } + } + } + } +}; + +export const DatabaseAccountGetResults: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "DatabaseAccountGetResults", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + kind: { + serializedName: "kind", + type: { + name: "String" + } + }, + systemData: { serializedName: "systemData", type: { name: "Composite", @@ -6051,7 +7150,6 @@ export const DatabaseAccountGetResults: coreClient.CompositeMapper = { } }, createMode: { - defaultValue: "Default", serializedName: "properties.createMode", type: { name: "String" @@ -6101,6 +7199,13 @@ export const DatabaseAccountGetResults: coreClient.CompositeMapper = { } } }, + diagnosticLogSettings: { + serializedName: "properties.diagnosticLogSettings", + type: { + name: "Composite", + className: "DiagnosticLogSettings" + } + }, disableLocalAuth: { serializedName: "properties.disableLocalAuth", type: { @@ -6114,6 +7219,12 @@ export const DatabaseAccountGetResults: coreClient.CompositeMapper = { className: "Capacity" } }, + enableMaterializedViews: { + serializedName: "properties.enableMaterializedViews", + type: { + name: "Boolean" + } + }, keysMetadata: { serializedName: "properties.keysMetadata", type: { @@ -6127,6 +7238,12 @@ export const DatabaseAccountGetResults: coreClient.CompositeMapper = { name: "Boolean" } }, + enableBurstCapacity: { + serializedName: "properties.enableBurstCapacity", + type: { + name: "Boolean" + } + }, minimalTlsVersion: { serializedName: "properties.minimalTlsVersion", type: { @@ -6149,13 +7266,6 @@ export const DatabaseAccountCreateUpdateParameters: coreClient.CompositeMapper = name: "String" } }, - identity: { - serializedName: "identity", - type: { - name: "Composite", - className: "ManagedServiceIdentity" - } - }, consistencyPolicy: { serializedName: "properties.consistencyPolicy", type: { @@ -6301,7 +7411,6 @@ export const DatabaseAccountCreateUpdateParameters: coreClient.CompositeMapper = } }, createMode: { - defaultValue: "Default", serializedName: "properties.createMode", type: { name: "String" @@ -6344,6 +7453,13 @@ export const DatabaseAccountCreateUpdateParameters: coreClient.CompositeMapper = } } }, + diagnosticLogSettings: { + serializedName: "properties.diagnosticLogSettings", + type: { + name: "Composite", + className: "DiagnosticLogSettings" + } + }, disableLocalAuth: { serializedName: "properties.disableLocalAuth", type: { @@ -6364,6 +7480,12 @@ export const DatabaseAccountCreateUpdateParameters: coreClient.CompositeMapper = className: "Capacity" } }, + enableMaterializedViews: { + serializedName: "properties.enableMaterializedViews", + type: { + name: "Boolean" + } + }, keysMetadata: { serializedName: "properties.keysMetadata", type: { @@ -6377,6 +7499,12 @@ export const DatabaseAccountCreateUpdateParameters: coreClient.CompositeMapper = name: "Boolean" } }, + enableBurstCapacity: { + serializedName: "properties.enableBurstCapacity", + type: { + name: "Boolean" + } + }, minimalTlsVersion: { serializedName: "properties.minimalTlsVersion", type: { @@ -6387,6 +7515,54 @@ export const DatabaseAccountCreateUpdateParameters: coreClient.CompositeMapper = } }; +export const GraphResourceGetResults: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GraphResourceGetResults", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "GraphResourceGetPropertiesResource" + } + }, + options: { + serializedName: "properties.options", + type: { + name: "Composite", + className: "GraphResourceGetPropertiesOptions" + } + } + } + } +}; + +export const GraphResourceCreateUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GraphResourceCreateUpdateParameters", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "GraphResource" + } + }, + options: { + serializedName: "properties.options", + type: { + name: "Composite", + className: "CreateUpdateOptions" + } + } + } + } +}; + export const SqlDatabaseGetResults: coreClient.CompositeMapper = { type: { name: "Composite", @@ -6517,6 +7693,57 @@ export const SqlContainerCreateUpdateParameters: coreClient.CompositeMapper = { } }; +export const RetrieveThroughputParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RetrieveThroughputParameters", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "RetrieveThroughputPropertiesResource" + } + } + } + } +}; + +export const PhysicalPartitionThroughputInfoResult: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "PhysicalPartitionThroughputInfoResult", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "PhysicalPartitionThroughputInfoResultPropertiesResource" + } + } + } + } +}; + +export const RedistributeThroughputParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "RedistributeThroughputParameters", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "RedistributeThroughputPropertiesResource" + } + } + } + } +}; + export const SqlStoredProcedureGetResults: coreClient.CompositeMapper = { type: { name: "Composite", @@ -6856,17 +8083,65 @@ export const CassandraTableGetResults: coreClient.CompositeMapper = { } }; -export const CassandraTableCreateUpdateParameters: coreClient.CompositeMapper = { +export const CassandraTableCreateUpdateParameters: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraTableCreateUpdateParameters", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "CassandraTableResource" + } + }, + options: { + serializedName: "properties.options", + type: { + name: "Composite", + className: "CreateUpdateOptions" + } + } + } + } +}; + +export const GremlinDatabaseGetResults: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GremlinDatabaseGetResults", + modelProperties: { + ...ARMResourceProperties.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "GremlinDatabaseGetPropertiesResource" + } + }, + options: { + serializedName: "properties.options", + type: { + name: "Composite", + className: "GremlinDatabaseGetPropertiesOptions" + } + } + } + } +}; + +export const GremlinDatabaseCreateUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CassandraTableCreateUpdateParameters", + className: "GremlinDatabaseCreateUpdateParameters", modelProperties: { ...ARMResourceProperties.type.modelProperties, resource: { serializedName: "properties.resource", type: { name: "Composite", - className: "CassandraTableResource" + className: "GremlinDatabaseResource" } }, options: { @@ -6880,41 +8155,41 @@ export const CassandraTableCreateUpdateParameters: coreClient.CompositeMapper = } }; -export const GremlinDatabaseGetResults: coreClient.CompositeMapper = { +export const GremlinGraphGetResults: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinDatabaseGetResults", + className: "GremlinGraphGetResults", modelProperties: { ...ARMResourceProperties.type.modelProperties, resource: { serializedName: "properties.resource", type: { name: "Composite", - className: "GremlinDatabaseGetPropertiesResource" + className: "GremlinGraphGetPropertiesResource" } }, options: { serializedName: "properties.options", type: { name: "Composite", - className: "GremlinDatabaseGetPropertiesOptions" + className: "GremlinGraphGetPropertiesOptions" } } } } }; -export const GremlinDatabaseCreateUpdateParameters: coreClient.CompositeMapper = { +export const GremlinGraphCreateUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinDatabaseCreateUpdateParameters", + className: "GremlinGraphCreateUpdateParameters", modelProperties: { ...ARMResourceProperties.type.modelProperties, resource: { serializedName: "properties.resource", type: { name: "Composite", - className: "GremlinDatabaseResource" + className: "GremlinGraphResource" } }, options: { @@ -6928,41 +8203,41 @@ export const GremlinDatabaseCreateUpdateParameters: coreClient.CompositeMapper = } }; -export const GremlinGraphGetResults: coreClient.CompositeMapper = { +export const CassandraViewGetResults: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinGraphGetResults", + className: "CassandraViewGetResults", modelProperties: { ...ARMResourceProperties.type.modelProperties, resource: { serializedName: "properties.resource", type: { name: "Composite", - className: "GremlinGraphGetPropertiesResource" + className: "CassandraViewGetPropertiesResource" } }, options: { serializedName: "properties.options", type: { name: "Composite", - className: "GremlinGraphGetPropertiesOptions" + className: "CassandraViewGetPropertiesOptions" } } } } }; -export const GremlinGraphCreateUpdateParameters: coreClient.CompositeMapper = { +export const CassandraViewCreateUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinGraphCreateUpdateParameters", + className: "CassandraViewCreateUpdateParameters", modelProperties: { ...ARMResourceProperties.type.modelProperties, resource: { serializedName: "properties.resource", type: { name: "Composite", - className: "GremlinGraphResource" + className: "CassandraViewResource" } }, options: { @@ -7107,6 +8382,126 @@ export const PartitionUsage: coreClient.CompositeMapper = { } }; +export const GraphResourceGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GraphResourceGetPropertiesResource", + modelProperties: { + ...GraphResource.type.modelProperties + } + } +}; + +export const GraphResourceGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GraphResourceGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const SqlDatabaseGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlDatabaseGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const SqlContainerGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlContainerGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const MongoDBDatabaseGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDBDatabaseGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const MongoDBCollectionGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDBCollectionGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const TableGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TableGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const CassandraKeyspaceGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraKeyspaceGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const CassandraTableGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraTableGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const GremlinDatabaseGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GremlinDatabaseGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const GremlinGraphGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GremlinGraphGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + +export const CassandraViewGetPropertiesOptions: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraViewGetPropertiesOptions", + modelProperties: { + ...OptionsResource.type.modelProperties + } + } +}; + export const SqlDatabaseGetPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", @@ -7162,353 +8557,863 @@ export const RestorableSqlDatabasePropertiesResourceDatabase: coreClient.Composi } }; -export const ThroughputSettingsGetPropertiesResource: coreClient.CompositeMapper = { +export const ThroughputSettingsGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ThroughputSettingsGetPropertiesResource", + modelProperties: { + ...ThroughputSettingsResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const ClientEncryptionKeyGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "ClientEncryptionKeyGetPropertiesResource", + modelProperties: { + ...ClientEncryptionKeyResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const SqlContainerGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlContainerGetPropertiesResource", + modelProperties: { + ...SqlContainerResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const SqlStoredProcedureGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlStoredProcedureGetPropertiesResource", + modelProperties: { + ...SqlStoredProcedureResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const SqlUserDefinedFunctionGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlUserDefinedFunctionGetPropertiesResource", + modelProperties: { + ...SqlUserDefinedFunctionResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const SqlTriggerGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlTriggerGetPropertiesResource", + modelProperties: { + ...SqlTriggerResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const MongoDBDatabaseGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDBDatabaseGetPropertiesResource", + modelProperties: { + ...MongoDBDatabaseResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const MongoDBCollectionGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoDBCollectionGetPropertiesResource", + modelProperties: { + ...MongoDBCollectionResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const TableGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "TableGetPropertiesResource", + modelProperties: { + ...TableResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const CassandraKeyspaceGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraKeyspaceGetPropertiesResource", + modelProperties: { + ...CassandraKeyspaceResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const CassandraTableGetPropertiesResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraTableGetPropertiesResource", + modelProperties: { + ...CassandraTableResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties + } + } +}; + +export const GremlinDatabaseGetPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ThroughputSettingsGetPropertiesResource", + className: "GremlinDatabaseGetPropertiesResource", modelProperties: { - ...ThroughputSettingsResource.type.modelProperties, + ...GremlinDatabaseResource.type.modelProperties, ...ExtendedResourceProperties.type.modelProperties } } }; -export const SqlContainerGetPropertiesResource: coreClient.CompositeMapper = { +export const GremlinGraphGetPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlContainerGetPropertiesResource", + className: "GremlinGraphGetPropertiesResource", modelProperties: { - ...SqlContainerResource.type.modelProperties, + ...GremlinGraphResource.type.modelProperties, ...ExtendedResourceProperties.type.modelProperties } } }; -export const ClientEncryptionKeyGetPropertiesResource: coreClient.CompositeMapper = { +export const CassandraViewGetPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClientEncryptionKeyGetPropertiesResource", + className: "CassandraViewGetPropertiesResource", modelProperties: { - ...ClientEncryptionKeyResource.type.modelProperties, + ...CassandraViewResource.type.modelProperties, ...ExtendedResourceProperties.type.modelProperties } } }; -export const SqlStoredProcedureGetPropertiesResource: coreClient.CompositeMapper = { +export const RestorableSqlContainerPropertiesResourceContainer: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlStoredProcedureGetPropertiesResource", + className: "RestorableSqlContainerPropertiesResourceContainer", modelProperties: { - ...SqlStoredProcedureResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...SqlContainerResource.type.modelProperties, + ...ExtendedResourceProperties.type.modelProperties, + self: { + serializedName: "_self", + readOnly: true, + type: { + name: "String" + } + } } } }; -export const SqlUserDefinedFunctionGetPropertiesResource: coreClient.CompositeMapper = { +export const ClientEncryptionKeyGetResults: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlUserDefinedFunctionGetPropertiesResource", + className: "ClientEncryptionKeyGetResults", modelProperties: { - ...SqlUserDefinedFunctionResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + resource: { + serializedName: "properties.resource", + type: { + name: "Composite", + className: "ClientEncryptionKeyGetPropertiesResource" + } + } } } }; -export const SqlTriggerGetPropertiesResource: coreClient.CompositeMapper = { +export const LocationGetResult: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlTriggerGetPropertiesResource", + className: "LocationGetResult", modelProperties: { - ...SqlTriggerResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "LocationProperties" + } + } } } }; -export const MongoDBDatabaseGetPropertiesResource: coreClient.CompositeMapper = { +export const CreateJobRequest: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBDatabaseGetPropertiesResource", + className: "CreateJobRequest", modelProperties: { - ...MongoDBDatabaseResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "DataTransferJobProperties" + } + } } } }; -export const MongoDBCollectionGetPropertiesResource: coreClient.CompositeMapper = { +export const DataTransferJobGetResults: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBCollectionGetPropertiesResource", + className: "DataTransferJobGetResults", modelProperties: { - ...MongoDBCollectionResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + jobName: { + serializedName: "properties.jobName", + readOnly: true, + type: { + name: "String" + } + }, + source: { + serializedName: "properties.source", + type: { + name: "Composite", + className: "DataTransferDataSourceSink" + } + }, + destination: { + serializedName: "properties.destination", + type: { + name: "Composite", + className: "DataTransferDataSourceSink" + } + }, + status: { + serializedName: "properties.status", + readOnly: true, + type: { + name: "String" + } + }, + processedCount: { + serializedName: "properties.processedCount", + readOnly: true, + type: { + name: "Number" + } + }, + totalCount: { + serializedName: "properties.totalCount", + readOnly: true, + type: { + name: "Number" + } + }, + lastUpdatedUtcTime: { + serializedName: "properties.lastUpdatedUtcTime", + readOnly: true, + type: { + name: "DateTime" + } + }, + workerCount: { + constraints: { + InclusiveMinimum: 0 + }, + serializedName: "properties.workerCount", + type: { + name: "Number" + } + }, + error: { + serializedName: "properties.error", + type: { + name: "Composite", + className: "ErrorResponse" + } + } } } }; -export const TableGetPropertiesResource: coreClient.CompositeMapper = { +export const BackupResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "TableGetPropertiesResource", + className: "BackupResource", modelProperties: { - ...TableResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "BackupResourceProperties" + } + } } } }; -export const CassandraKeyspaceGetPropertiesResource: coreClient.CompositeMapper = { +export const DataCenterResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CassandraKeyspaceGetPropertiesResource", + className: "DataCenterResource", modelProperties: { - ...CassandraKeyspaceResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "DataCenterResourceProperties" + } + } } } }; -export const CassandraTableGetPropertiesResource: coreClient.CompositeMapper = { +export const MongoRoleDefinitionGetResults: coreClient.CompositeMapper = { type: { name: "Composite", - className: "CassandraTableGetPropertiesResource", + className: "MongoRoleDefinitionGetResults", modelProperties: { - ...CassandraTableResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + roleName: { + serializedName: "properties.roleName", + type: { + name: "String" + } + }, + typePropertiesType: { + serializedName: "properties.type", + type: { + name: "Enum", + allowedValues: ["BuiltInRole", "CustomRole"] + } + }, + databaseName: { + serializedName: "properties.databaseName", + type: { + name: "String" + } + }, + privileges: { + serializedName: "properties.privileges", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Privilege" + } + } + } + }, + roles: { + serializedName: "properties.roles", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Role" + } + } + } + } } } }; -export const GremlinDatabaseGetPropertiesResource: coreClient.CompositeMapper = { +export const MongoUserDefinitionGetResults: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoUserDefinitionGetResults", + modelProperties: { + ...ARMProxyResource.type.modelProperties, + userName: { + serializedName: "properties.userName", + type: { + name: "String" + } + }, + password: { + serializedName: "properties.password", + type: { + name: "String" + } + }, + databaseName: { + serializedName: "properties.databaseName", + type: { + name: "String" + } + }, + customData: { + serializedName: "properties.customData", + type: { + name: "String" + } + }, + roles: { + serializedName: "properties.roles", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Role" + } + } + } + }, + mechanisms: { + serializedName: "properties.mechanisms", + type: { + name: "String" + } + } + } + } +}; + +export const NotebookWorkspace: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinDatabaseGetPropertiesResource", + className: "NotebookWorkspace", modelProperties: { - ...GremlinDatabaseResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties, + notebookServerEndpoint: { + serializedName: "properties.notebookServerEndpoint", + readOnly: true, + type: { + name: "String" + } + }, + status: { + serializedName: "properties.status", + readOnly: true, + type: { + name: "String" + } + } } } }; -export const GremlinGraphGetPropertiesResource: coreClient.CompositeMapper = { +export const NotebookWorkspaceCreateUpdateParameters: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinGraphGetPropertiesResource", + className: "NotebookWorkspaceCreateUpdateParameters", modelProperties: { - ...GremlinGraphResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties + ...ARMProxyResource.type.modelProperties } } }; -export const RestorableSqlContainerPropertiesResourceContainer: coreClient.CompositeMapper = { +export const PrivateLinkResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "RestorableSqlContainerPropertiesResourceContainer", + className: "PrivateLinkResource", modelProperties: { - ...SqlContainerResource.type.modelProperties, - ...ExtendedResourceProperties.type.modelProperties, - self: { - serializedName: "_self", + ...ARMProxyResource.type.modelProperties, + groupId: { + serializedName: "properties.groupId", readOnly: true, type: { name: "String" } + }, + requiredMembers: { + serializedName: "properties.requiredMembers", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + requiredZoneNames: { + serializedName: "properties.requiredZoneNames", + readOnly: true, + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } } } } }; -export const SqlDatabaseGetPropertiesOptions: coreClient.CompositeMapper = { +export const SqlRoleDefinitionGetResults: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlDatabaseGetPropertiesOptions", + className: "SqlRoleDefinitionGetResults", modelProperties: { - ...OptionsResource.type.modelProperties + ...ARMProxyResource.type.modelProperties, + roleName: { + serializedName: "properties.roleName", + type: { + name: "String" + } + }, + typePropertiesType: { + serializedName: "properties.type", + type: { + name: "Enum", + allowedValues: ["BuiltInRole", "CustomRole"] + } + }, + assignableScopes: { + serializedName: "properties.assignableScopes", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + permissions: { + serializedName: "properties.permissions", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Permission" + } + } + } + } } } }; -export const SqlContainerGetPropertiesOptions: coreClient.CompositeMapper = { +export const SqlRoleAssignmentGetResults: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlContainerGetPropertiesOptions", + className: "SqlRoleAssignmentGetResults", modelProperties: { - ...OptionsResource.type.modelProperties + ...ARMProxyResource.type.modelProperties, + roleDefinitionId: { + serializedName: "properties.roleDefinitionId", + type: { + name: "String" + } + }, + scope: { + serializedName: "properties.scope", + type: { + name: "String" + } + }, + principalId: { + serializedName: "properties.principalId", + type: { + name: "String" + } + } } } }; -export const MongoDBDatabaseGetPropertiesOptions: coreClient.CompositeMapper = { +export const ServiceResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBDatabaseGetPropertiesOptions", + className: "ServiceResource", modelProperties: { - ...OptionsResource.type.modelProperties + ...ARMProxyResource.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ServiceResourceProperties" + } + } } } }; -export const MongoDBCollectionGetPropertiesOptions: coreClient.CompositeMapper = { +export const PhysicalPartitionThroughputInfoResultPropertiesResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBCollectionGetPropertiesOptions", + className: "PhysicalPartitionThroughputInfoResultPropertiesResource", modelProperties: { - ...OptionsResource.type.modelProperties + ...PhysicalPartitionThroughputInfoProperties.type.modelProperties } } }; -export const TableGetPropertiesOptions: coreClient.CompositeMapper = { +export const CosmosCassandraDataTransferDataSourceSink: coreClient.CompositeMapper = { + serializedName: "CosmosDBCassandra", type: { name: "Composite", - className: "TableGetPropertiesOptions", + className: "CosmosCassandraDataTransferDataSourceSink", + uberParent: "DataTransferDataSourceSink", + polymorphicDiscriminator: + DataTransferDataSourceSink.type.polymorphicDiscriminator, modelProperties: { - ...OptionsResource.type.modelProperties + ...DataTransferDataSourceSink.type.modelProperties, + keyspaceName: { + serializedName: "keyspaceName", + required: true, + type: { + name: "String" + } + }, + tableName: { + serializedName: "tableName", + required: true, + type: { + name: "String" + } + } } } }; -export const CassandraKeyspaceGetPropertiesOptions: coreClient.CompositeMapper = { +export const CosmosSqlDataTransferDataSourceSink: coreClient.CompositeMapper = { + serializedName: "CosmosDBSql", type: { name: "Composite", - className: "CassandraKeyspaceGetPropertiesOptions", + className: "CosmosSqlDataTransferDataSourceSink", + uberParent: "DataTransferDataSourceSink", + polymorphicDiscriminator: + DataTransferDataSourceSink.type.polymorphicDiscriminator, modelProperties: { - ...OptionsResource.type.modelProperties + ...DataTransferDataSourceSink.type.modelProperties, + databaseName: { + serializedName: "databaseName", + required: true, + type: { + name: "String" + } + }, + containerName: { + serializedName: "containerName", + required: true, + type: { + name: "String" + } + } } } }; -export const CassandraTableGetPropertiesOptions: coreClient.CompositeMapper = { +export const AzureBlobDataTransferDataSourceSink: coreClient.CompositeMapper = { + serializedName: "AzureBlobStorage", type: { name: "Composite", - className: "CassandraTableGetPropertiesOptions", + className: "AzureBlobDataTransferDataSourceSink", + uberParent: "DataTransferDataSourceSink", + polymorphicDiscriminator: + DataTransferDataSourceSink.type.polymorphicDiscriminator, modelProperties: { - ...OptionsResource.type.modelProperties + ...DataTransferDataSourceSink.type.modelProperties, + containerName: { + serializedName: "containerName", + required: true, + type: { + name: "String" + } + }, + endpointUrl: { + serializedName: "endpointUrl", + type: { + name: "String" + } + } } } }; -export const GremlinDatabaseGetPropertiesOptions: coreClient.CompositeMapper = { +export const ClusterResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinDatabaseGetPropertiesOptions", + className: "ClusterResource", modelProperties: { - ...OptionsResource.type.modelProperties + ...ManagedCassandraARMResourceProperties.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "ClusterResourceProperties" + } + } } } }; -export const GremlinGraphGetPropertiesOptions: coreClient.CompositeMapper = { +export const NodeGroupSpec: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GremlinGraphGetPropertiesOptions", + className: "NodeGroupSpec", modelProperties: { - ...OptionsResource.type.modelProperties + ...NodeGroupProperties.type.modelProperties, + kind: { + serializedName: "kind", + type: { + name: "String" + } + }, + nodeCount: { + serializedName: "nodeCount", + type: { + name: "Number" + } + } } } }; -export const ClientEncryptionKeyGetResults: coreClient.CompositeMapper = { +export const TrackedResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClientEncryptionKeyGetResults", + className: "TrackedResource", modelProperties: { - ...ARMProxyResource.type.modelProperties, - resource: { - serializedName: "properties.resource", + ...ResourceAutoGenerated.type.modelProperties, + tags: { + serializedName: "tags", type: { - name: "Composite", - className: "ClientEncryptionKeyGetPropertiesResource" + name: "Dictionary", + value: { type: { name: "String" } } + } + }, + location: { + serializedName: "location", + required: true, + type: { + name: "String" } } } } }; -export const LocationGetResult: coreClient.CompositeMapper = { +export const ProxyResourceAutoGenerated: coreClient.CompositeMapper = { type: { name: "Composite", - className: "LocationGetResult", + className: "ProxyResourceAutoGenerated", modelProperties: { - ...ARMProxyResource.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "LocationProperties" - } - } + ...ResourceAutoGenerated.type.modelProperties } } }; -export const DataCenterResource: coreClient.CompositeMapper = { +export const DataTransferServiceResourceProperties: coreClient.CompositeMapper = { + serializedName: "DataTransfer", type: { name: "Composite", - className: "DataCenterResource", + className: "DataTransferServiceResourceProperties", + uberParent: "ServiceResourceProperties", + additionalProperties: { type: { name: "Object" } }, + polymorphicDiscriminator: + ServiceResourceProperties.type.polymorphicDiscriminator, modelProperties: { - ...ARMProxyResource.type.modelProperties, - properties: { - serializedName: "properties", + ...ServiceResourceProperties.type.modelProperties, + locations: { + serializedName: "locations", + readOnly: true, type: { - name: "Composite", - className: "DataCenterResourceProperties" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DataTransferRegionalServiceResource" + } + } } } } } }; -export const MongoRoleDefinitionGetResults: coreClient.CompositeMapper = { +export const SqlDedicatedGatewayServiceResourceProperties: coreClient.CompositeMapper = { + serializedName: "SqlDedicatedGateway", type: { name: "Composite", - className: "MongoRoleDefinitionGetResults", + className: "SqlDedicatedGatewayServiceResourceProperties", + uberParent: "ServiceResourceProperties", + additionalProperties: { type: { name: "Object" } }, + polymorphicDiscriminator: + ServiceResourceProperties.type.polymorphicDiscriminator, modelProperties: { - ...ARMProxyResource.type.modelProperties, - roleName: { - serializedName: "properties.roleName", - type: { - name: "String" - } - }, - typePropertiesType: { - serializedName: "properties.type", - type: { - name: "Enum", - allowedValues: ["BuiltInRole", "CustomRole"] - } - }, - databaseName: { - serializedName: "properties.databaseName", + ...ServiceResourceProperties.type.modelProperties, + sqlDedicatedGatewayEndpoint: { + serializedName: "sqlDedicatedGatewayEndpoint", type: { name: "String" } }, - privileges: { - serializedName: "properties.privileges", + locations: { + serializedName: "locations", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "Privilege" + className: "SqlDedicatedGatewayRegionalServiceResource" } } } + } + } + } +}; + +export const GraphAPIComputeServiceResourceProperties: coreClient.CompositeMapper = { + serializedName: "GraphAPICompute", + type: { + name: "Composite", + className: "GraphAPIComputeServiceResourceProperties", + uberParent: "ServiceResourceProperties", + additionalProperties: { type: { name: "Object" } }, + polymorphicDiscriminator: + ServiceResourceProperties.type.polymorphicDiscriminator, + modelProperties: { + ...ServiceResourceProperties.type.modelProperties, + graphApiComputeEndpoint: { + serializedName: "graphApiComputeEndpoint", + type: { + name: "String" + } }, - roles: { - serializedName: "properties.roles", + locations: { + serializedName: "locations", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "Role" + className: "GraphAPIComputeRegionalServiceResource" } } } @@ -7517,73 +9422,69 @@ export const MongoRoleDefinitionGetResults: coreClient.CompositeMapper = { } }; -export const MongoUserDefinitionGetResults: coreClient.CompositeMapper = { +export const MaterializedViewsBuilderServiceResourceProperties: coreClient.CompositeMapper = { + serializedName: "MaterializedViewsBuilder", type: { name: "Composite", - className: "MongoUserDefinitionGetResults", + className: "MaterializedViewsBuilderServiceResourceProperties", + uberParent: "ServiceResourceProperties", + additionalProperties: { type: { name: "Object" } }, + polymorphicDiscriminator: + ServiceResourceProperties.type.polymorphicDiscriminator, modelProperties: { - ...ARMProxyResource.type.modelProperties, - userName: { - serializedName: "properties.userName", - type: { - name: "String" - } - }, - password: { - serializedName: "properties.password", - type: { - name: "String" - } - }, - databaseName: { - serializedName: "properties.databaseName", - type: { - name: "String" - } - }, - customData: { - serializedName: "properties.customData", - type: { - name: "String" - } - }, - roles: { - serializedName: "properties.roles", + ...ServiceResourceProperties.type.modelProperties, + locations: { + serializedName: "locations", + readOnly: true, type: { name: "Sequence", element: { type: { name: "Composite", - className: "Role" + className: "MaterializedViewsBuilderRegionalServiceResource" } } } - }, - mechanisms: { - serializedName: "properties.mechanisms", - type: { - name: "String" - } } } } }; -export const NotebookWorkspace: coreClient.CompositeMapper = { +export const DataTransferRegionalServiceResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "NotebookWorkspace", + className: "DataTransferRegionalServiceResource", modelProperties: { - ...ARMProxyResource.type.modelProperties, - notebookServerEndpoint: { - serializedName: "properties.notebookServerEndpoint", + ...RegionalServiceResource.type.modelProperties + } + } +}; + +export const SqlDedicatedGatewayRegionalServiceResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlDedicatedGatewayRegionalServiceResource", + modelProperties: { + ...RegionalServiceResource.type.modelProperties, + sqlDedicatedGatewayEndpoint: { + serializedName: "sqlDedicatedGatewayEndpoint", readOnly: true, type: { name: "String" } - }, - status: { - serializedName: "properties.status", + } + } + } +}; + +export const GraphAPIComputeRegionalServiceResource: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "GraphAPIComputeRegionalServiceResource", + modelProperties: { + ...RegionalServiceResource.type.modelProperties, + graphApiComputeEndpoint: { + serializedName: "graphApiComputeEndpoint", readOnly: true, type: { name: "String" @@ -7593,95 +9494,128 @@ export const NotebookWorkspace: coreClient.CompositeMapper = { } }; -export const NotebookWorkspaceCreateUpdateParameters: coreClient.CompositeMapper = { +export const MaterializedViewsBuilderRegionalServiceResource: coreClient.CompositeMapper = { type: { name: "Composite", - className: "NotebookWorkspaceCreateUpdateParameters", + className: "MaterializedViewsBuilderRegionalServiceResource", modelProperties: { - ...ARMProxyResource.type.modelProperties + ...RegionalServiceResource.type.modelProperties } } }; -export const PrivateLinkResource: coreClient.CompositeMapper = { +export const PrivateEndpointConnection: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateLinkResource", + className: "PrivateEndpointConnection", modelProperties: { - ...ARMProxyResource.type.modelProperties, - groupId: { - serializedName: "properties.groupId", - readOnly: true, + ...ProxyResource.type.modelProperties, + privateEndpoint: { + serializedName: "properties.privateEndpoint", type: { - name: "String" + name: "Composite", + className: "PrivateEndpointProperty" } }, - requiredMembers: { - serializedName: "properties.requiredMembers", - readOnly: true, + privateLinkServiceConnectionState: { + serializedName: "properties.privateLinkServiceConnectionState", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "Composite", + className: "PrivateLinkServiceConnectionStateProperty" } }, - requiredZoneNames: { - serializedName: "properties.requiredZoneNames", - readOnly: true, + groupId: { + serializedName: "properties.groupId", type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + type: { + name: "String" } } } } }; -export const SqlRoleDefinitionGetResults: coreClient.CompositeMapper = { +export const MongoCluster: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlRoleDefinitionGetResults", + className: "MongoCluster", modelProperties: { - ...ARMProxyResource.type.modelProperties, - roleName: { - serializedName: "properties.roleName", + ...TrackedResource.type.modelProperties, + createMode: { + serializedName: "properties.createMode", type: { name: "String" } }, - typePropertiesType: { - serializedName: "properties.type", + restoreParameters: { + serializedName: "properties.restoreParameters", type: { - name: "Enum", - allowedValues: ["BuiltInRole", "CustomRole"] + name: "Composite", + className: "MongoClusterRestoreParameters" } }, - assignableScopes: { - serializedName: "properties.assignableScopes", + administratorLogin: { + serializedName: "properties.administratorLogin", + type: { + name: "String" + } + }, + administratorLoginPassword: { + serializedName: "properties.administratorLoginPassword", + type: { + name: "String" + } + }, + serverVersion: { + serializedName: "properties.serverVersion", + type: { + name: "String" + } + }, + connectionString: { + serializedName: "properties.connectionString", + readOnly: true, + type: { + name: "String" + } + }, + earliestRestoreTime: { + serializedName: "properties.earliestRestoreTime", + readOnly: true, + type: { + name: "String" + } + }, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, + type: { + name: "String" + } + }, + clusterStatus: { + serializedName: "properties.clusterStatus", + readOnly: true, type: { - name: "Sequence", - element: { - type: { - name: "String" - } - } + name: "String" } }, - permissions: { - serializedName: "properties.permissions", + nodeGroupSpecs: { + constraints: { + MinItems: 1 + }, + serializedName: "properties.nodeGroupSpecs", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Permission" + className: "NodeGroupSpec" } } } @@ -7690,26 +9624,39 @@ export const SqlRoleDefinitionGetResults: coreClient.CompositeMapper = { } }; -export const SqlRoleAssignmentGetResults: coreClient.CompositeMapper = { +export const FirewallRule: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlRoleAssignmentGetResults", + className: "FirewallRule", modelProperties: { - ...ARMProxyResource.type.modelProperties, - roleDefinitionId: { - serializedName: "properties.roleDefinitionId", + ...ProxyResourceAutoGenerated.type.modelProperties, + provisioningState: { + serializedName: "properties.provisioningState", + readOnly: true, type: { name: "String" } }, - scope: { - serializedName: "properties.scope", + startIpAddress: { + constraints: { + Pattern: new RegExp( + "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + ) + }, + serializedName: "properties.startIpAddress", + required: true, type: { name: "String" } }, - principalId: { - serializedName: "properties.principalId", + endIpAddress: { + constraints: { + Pattern: new RegExp( + "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$" + ) + }, + serializedName: "properties.endIpAddress", + required: true, type: { name: "String" } @@ -7718,183 +9665,166 @@ export const SqlRoleAssignmentGetResults: coreClient.CompositeMapper = { } }; -export const ServiceResource: coreClient.CompositeMapper = { +export const DatabaseAccountsDeleteHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceResource", + className: "DatabaseAccountsDeleteHeaders", modelProperties: { - ...ARMProxyResource.type.modelProperties, - properties: { - serializedName: "properties", + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { - name: "Composite", - className: "ServiceResourceProperties" + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" } } } } }; -export const ClusterResource: coreClient.CompositeMapper = { +export const DatabaseAccountsFailoverPriorityChangeHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ClusterResource", + className: "DatabaseAccountsFailoverPriorityChangeHeaders", modelProperties: { - ...ManagedCassandraARMResourceProperties.type.modelProperties, - properties: { - serializedName: "properties", + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { - name: "Composite", - className: "ClusterResourceProperties" + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" } } } } }; -export const DataTransferServiceResourceProperties: coreClient.CompositeMapper = { - serializedName: "DataTransfer", +export const DatabaseAccountsOfflineRegionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DataTransferServiceResourceProperties", - uberParent: "ServiceResourceProperties", - additionalProperties: { type: { name: "Object" } }, - polymorphicDiscriminator: - ServiceResourceProperties.type.polymorphicDiscriminator, + className: "DatabaseAccountsOfflineRegionHeaders", modelProperties: { - ...ServiceResourceProperties.type.modelProperties, - locations: { - serializedName: "locations", - readOnly: true, + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DataTransferRegionalServiceResource" - } - } + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" } } } } }; -export const SqlDedicatedGatewayServiceResourceProperties: coreClient.CompositeMapper = { - serializedName: "SqlDedicatedGateway", +export const DatabaseAccountsOnlineRegionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlDedicatedGatewayServiceResourceProperties", - uberParent: "ServiceResourceProperties", - additionalProperties: { type: { name: "Object" } }, - polymorphicDiscriminator: - ServiceResourceProperties.type.polymorphicDiscriminator, + className: "DatabaseAccountsOnlineRegionHeaders", modelProperties: { - ...ServiceResourceProperties.type.modelProperties, - sqlDedicatedGatewayEndpoint: { - serializedName: "sqlDedicatedGatewayEndpoint", + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { name: "String" } }, - locations: { - serializedName: "locations", - readOnly: true, + location: { + serializedName: "location", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SqlDedicatedGatewayRegionalServiceResource" - } - } + name: "String" } } } } }; -export const GraphAPIComputeServiceResourceProperties: coreClient.CompositeMapper = { - serializedName: "GraphAPICompute", +export const DatabaseAccountsRegenerateKeyHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GraphAPIComputeServiceResourceProperties", - uberParent: "ServiceResourceProperties", - additionalProperties: { type: { name: "Object" } }, - polymorphicDiscriminator: - ServiceResourceProperties.type.polymorphicDiscriminator, + className: "DatabaseAccountsRegenerateKeyHeaders", modelProperties: { - ...ServiceResourceProperties.type.modelProperties, - graphApiComputeEndpoint: { - serializedName: "graphApiComputeEndpoint", + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { name: "String" } }, - locations: { - serializedName: "locations", - readOnly: true, + location: { + serializedName: "location", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GraphAPIComputeRegionalServiceResource" - } - } + name: "String" } } } } }; -export const MaterializedViewsBuilderServiceResourceProperties: coreClient.CompositeMapper = { - serializedName: "MaterializedViewsBuilder", +export const GraphResourcesCreateUpdateGraphHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MaterializedViewsBuilderServiceResourceProperties", - uberParent: "ServiceResourceProperties", - additionalProperties: { type: { name: "Object" } }, - polymorphicDiscriminator: - ServiceResourceProperties.type.polymorphicDiscriminator, + className: "GraphResourcesCreateUpdateGraphHeaders", modelProperties: { - ...ServiceResourceProperties.type.modelProperties, - locations: { - serializedName: "locations", - readOnly: true, + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MaterializedViewsBuilderRegionalServiceResource" - } - } + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" } } } } }; -export const DataTransferRegionalServiceResource: coreClient.CompositeMapper = { +export const GraphResourcesDeleteGraphResourceHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DataTransferRegionalServiceResource", + className: "GraphResourcesDeleteGraphResourceHeaders", modelProperties: { - ...RegionalServiceResource.type.modelProperties + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } } } }; -export const SqlDedicatedGatewayRegionalServiceResource: coreClient.CompositeMapper = { +export const SqlResourcesCreateUpdateSqlDatabaseHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlDedicatedGatewayRegionalServiceResource", + className: "SqlResourcesCreateUpdateSqlDatabaseHeaders", modelProperties: { - ...RegionalServiceResource.type.modelProperties, - sqlDedicatedGatewayEndpoint: { - serializedName: "sqlDedicatedGatewayEndpoint", - readOnly: true, + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", type: { name: "String" } @@ -7903,15 +9833,19 @@ export const SqlDedicatedGatewayRegionalServiceResource: coreClient.CompositeMap } }; -export const GraphAPIComputeRegionalServiceResource: coreClient.CompositeMapper = { +export const SqlResourcesDeleteSqlDatabaseHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "GraphAPIComputeRegionalServiceResource", + className: "SqlResourcesDeleteSqlDatabaseHeaders", modelProperties: { - ...RegionalServiceResource.type.modelProperties, - graphApiComputeEndpoint: { - serializedName: "graphApiComputeEndpoint", - readOnly: true, + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", type: { name: "String" } @@ -7920,44 +9854,61 @@ export const GraphAPIComputeRegionalServiceResource: coreClient.CompositeMapper } }; -export const MaterializedViewsBuilderRegionalServiceResource: coreClient.CompositeMapper = { +export const SqlResourcesUpdateSqlDatabaseThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MaterializedViewsBuilderRegionalServiceResource", + className: "SqlResourcesUpdateSqlDatabaseThroughputHeaders", modelProperties: { - ...RegionalServiceResource.type.modelProperties + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const SqlResourcesMigrateSqlDatabaseToAutoscaleHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "SqlResourcesMigrateSqlDatabaseToAutoscaleHeaders", + modelProperties: { + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } } } }; -export const PrivateEndpointConnection: coreClient.CompositeMapper = { +export const SqlResourcesMigrateSqlDatabaseToManualThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "PrivateEndpointConnection", + className: "SqlResourcesMigrateSqlDatabaseToManualThroughputHeaders", modelProperties: { - ...ProxyResource.type.modelProperties, - privateEndpoint: { - serializedName: "properties.privateEndpoint", - type: { - name: "Composite", - className: "PrivateEndpointProperty" - } - }, - privateLinkServiceConnectionState: { - serializedName: "properties.privateLinkServiceConnectionState", - type: { - name: "Composite", - className: "PrivateLinkServiceConnectionStateProperty" - } - }, - groupId: { - serializedName: "properties.groupId", + azureAsyncOperation: { + serializedName: "azure-asyncoperation", type: { name: "String" } }, - provisioningState: { - serializedName: "properties.provisioningState", + location: { + serializedName: "location", type: { name: "String" } @@ -7966,10 +9917,10 @@ export const PrivateEndpointConnection: coreClient.CompositeMapper = { } }; -export const DatabaseAccountsDeleteHeaders: coreClient.CompositeMapper = { +export const SqlResourcesCreateUpdateClientEncryptionKeyHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseAccountsDeleteHeaders", + className: "SqlResourcesCreateUpdateClientEncryptionKeyHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -7987,10 +9938,10 @@ export const DatabaseAccountsDeleteHeaders: coreClient.CompositeMapper = { } }; -export const DatabaseAccountsFailoverPriorityChangeHeaders: coreClient.CompositeMapper = { +export const SqlResourcesCreateUpdateSqlContainerHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseAccountsFailoverPriorityChangeHeaders", + className: "SqlResourcesCreateUpdateSqlContainerHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8008,10 +9959,10 @@ export const DatabaseAccountsFailoverPriorityChangeHeaders: coreClient.Composite } }; -export const DatabaseAccountsOfflineRegionHeaders: coreClient.CompositeMapper = { +export const SqlResourcesDeleteSqlContainerHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseAccountsOfflineRegionHeaders", + className: "SqlResourcesDeleteSqlContainerHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8029,10 +9980,10 @@ export const DatabaseAccountsOfflineRegionHeaders: coreClient.CompositeMapper = } }; -export const DatabaseAccountsOnlineRegionHeaders: coreClient.CompositeMapper = { +export const SqlResourcesListSqlContainerPartitionMergeHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseAccountsOnlineRegionHeaders", + className: "SqlResourcesListSqlContainerPartitionMergeHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8050,10 +10001,10 @@ export const DatabaseAccountsOnlineRegionHeaders: coreClient.CompositeMapper = { } }; -export const DatabaseAccountsRegenerateKeyHeaders: coreClient.CompositeMapper = { +export const SqlResourcesUpdateSqlContainerThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "DatabaseAccountsRegenerateKeyHeaders", + className: "SqlResourcesUpdateSqlContainerThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8071,10 +10022,10 @@ export const DatabaseAccountsRegenerateKeyHeaders: coreClient.CompositeMapper = } }; -export const SqlResourcesCreateUpdateSqlDatabaseHeaders: coreClient.CompositeMapper = { +export const SqlResourcesMigrateSqlContainerToAutoscaleHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesCreateUpdateSqlDatabaseHeaders", + className: "SqlResourcesMigrateSqlContainerToAutoscaleHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8092,10 +10043,10 @@ export const SqlResourcesCreateUpdateSqlDatabaseHeaders: coreClient.CompositeMap } }; -export const SqlResourcesDeleteSqlDatabaseHeaders: coreClient.CompositeMapper = { +export const SqlResourcesMigrateSqlContainerToManualThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesDeleteSqlDatabaseHeaders", + className: "SqlResourcesMigrateSqlContainerToManualThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8113,10 +10064,10 @@ export const SqlResourcesDeleteSqlDatabaseHeaders: coreClient.CompositeMapper = } }; -export const SqlResourcesUpdateSqlDatabaseThroughputHeaders: coreClient.CompositeMapper = { +export const SqlResourcesSqlDatabaseRetrieveThroughputDistributionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesUpdateSqlDatabaseThroughputHeaders", + className: "SqlResourcesSqlDatabaseRetrieveThroughputDistributionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8134,10 +10085,10 @@ export const SqlResourcesUpdateSqlDatabaseThroughputHeaders: coreClient.Composit } }; -export const SqlResourcesMigrateSqlDatabaseToAutoscaleHeaders: coreClient.CompositeMapper = { +export const SqlResourcesSqlDatabaseRedistributeThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesMigrateSqlDatabaseToAutoscaleHeaders", + className: "SqlResourcesSqlDatabaseRedistributeThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8155,10 +10106,10 @@ export const SqlResourcesMigrateSqlDatabaseToAutoscaleHeaders: coreClient.Compos } }; -export const SqlResourcesMigrateSqlDatabaseToManualThroughputHeaders: coreClient.CompositeMapper = { +export const SqlResourcesSqlContainerRetrieveThroughputDistributionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesMigrateSqlDatabaseToManualThroughputHeaders", + className: "SqlResourcesSqlContainerRetrieveThroughputDistributionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8176,10 +10127,10 @@ export const SqlResourcesMigrateSqlDatabaseToManualThroughputHeaders: coreClient } }; -export const SqlResourcesCreateUpdateSqlContainerHeaders: coreClient.CompositeMapper = { +export const SqlResourcesSqlContainerRedistributeThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesCreateUpdateSqlContainerHeaders", + className: "SqlResourcesSqlContainerRedistributeThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8197,10 +10148,10 @@ export const SqlResourcesCreateUpdateSqlContainerHeaders: coreClient.CompositeMa } }; -export const SqlResourcesDeleteSqlContainerHeaders: coreClient.CompositeMapper = { +export const SqlResourcesCreateUpdateSqlStoredProcedureHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesDeleteSqlContainerHeaders", + className: "SqlResourcesCreateUpdateSqlStoredProcedureHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8218,10 +10169,10 @@ export const SqlResourcesDeleteSqlContainerHeaders: coreClient.CompositeMapper = } }; -export const SqlResourcesUpdateSqlContainerThroughputHeaders: coreClient.CompositeMapper = { +export const SqlResourcesDeleteSqlStoredProcedureHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesUpdateSqlContainerThroughputHeaders", + className: "SqlResourcesDeleteSqlStoredProcedureHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8239,10 +10190,10 @@ export const SqlResourcesUpdateSqlContainerThroughputHeaders: coreClient.Composi } }; -export const SqlResourcesMigrateSqlContainerToAutoscaleHeaders: coreClient.CompositeMapper = { +export const SqlResourcesCreateUpdateSqlUserDefinedFunctionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesMigrateSqlContainerToAutoscaleHeaders", + className: "SqlResourcesCreateUpdateSqlUserDefinedFunctionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8260,10 +10211,10 @@ export const SqlResourcesMigrateSqlContainerToAutoscaleHeaders: coreClient.Compo } }; -export const SqlResourcesMigrateSqlContainerToManualThroughputHeaders: coreClient.CompositeMapper = { +export const SqlResourcesDeleteSqlUserDefinedFunctionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesMigrateSqlContainerToManualThroughputHeaders", + className: "SqlResourcesDeleteSqlUserDefinedFunctionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8281,10 +10232,10 @@ export const SqlResourcesMigrateSqlContainerToManualThroughputHeaders: coreClien } }; -export const SqlResourcesCreateUpdateClientEncryptionKeyHeaders: coreClient.CompositeMapper = { +export const SqlResourcesCreateUpdateSqlTriggerHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesCreateUpdateClientEncryptionKeyHeaders", + className: "SqlResourcesCreateUpdateSqlTriggerHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8302,10 +10253,10 @@ export const SqlResourcesCreateUpdateClientEncryptionKeyHeaders: coreClient.Comp } }; -export const SqlResourcesCreateUpdateSqlStoredProcedureHeaders: coreClient.CompositeMapper = { +export const SqlResourcesDeleteSqlTriggerHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesCreateUpdateSqlStoredProcedureHeaders", + className: "SqlResourcesDeleteSqlTriggerHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8323,10 +10274,10 @@ export const SqlResourcesCreateUpdateSqlStoredProcedureHeaders: coreClient.Compo } }; -export const SqlResourcesDeleteSqlStoredProcedureHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesCreateUpdateMongoDBDatabaseHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesDeleteSqlStoredProcedureHeaders", + className: "MongoDBResourcesCreateUpdateMongoDBDatabaseHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8344,10 +10295,10 @@ export const SqlResourcesDeleteSqlStoredProcedureHeaders: coreClient.CompositeMa } }; -export const SqlResourcesCreateUpdateSqlUserDefinedFunctionHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesDeleteMongoDBDatabaseHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesCreateUpdateSqlUserDefinedFunctionHeaders", + className: "MongoDBResourcesDeleteMongoDBDatabaseHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8365,10 +10316,10 @@ export const SqlResourcesCreateUpdateSqlUserDefinedFunctionHeaders: coreClient.C } }; -export const SqlResourcesDeleteSqlUserDefinedFunctionHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesUpdateMongoDBDatabaseThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesDeleteSqlUserDefinedFunctionHeaders", + className: "MongoDBResourcesUpdateMongoDBDatabaseThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8386,10 +10337,10 @@ export const SqlResourcesDeleteSqlUserDefinedFunctionHeaders: coreClient.Composi } }; -export const SqlResourcesCreateUpdateSqlTriggerHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesCreateUpdateSqlTriggerHeaders", + className: "MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8407,10 +10358,11 @@ export const SqlResourcesCreateUpdateSqlTriggerHeaders: coreClient.CompositeMapp } }; -export const SqlResourcesDeleteSqlTriggerHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "SqlResourcesDeleteSqlTriggerHeaders", + className: + "MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8428,10 +10380,11 @@ export const SqlResourcesDeleteSqlTriggerHeaders: coreClient.CompositeMapper = { } }; -export const MongoDBResourcesCreateUpdateMongoDBDatabaseHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBResourcesCreateUpdateMongoDBDatabaseHeaders", + className: + "MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8449,10 +10402,10 @@ export const MongoDBResourcesCreateUpdateMongoDBDatabaseHeaders: coreClient.Comp } }; -export const MongoDBResourcesDeleteMongoDBDatabaseHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesMongoDBDatabaseRedistributeThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBResourcesDeleteMongoDBDatabaseHeaders", + className: "MongoDBResourcesMongoDBDatabaseRedistributeThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8470,10 +10423,11 @@ export const MongoDBResourcesDeleteMongoDBDatabaseHeaders: coreClient.CompositeM } }; -export const MongoDBResourcesUpdateMongoDBDatabaseThroughputHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBResourcesUpdateMongoDBDatabaseThroughputHeaders", + className: + "MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8491,10 +10445,10 @@ export const MongoDBResourcesUpdateMongoDBDatabaseThroughputHeaders: coreClient. } }; -export const MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesMongoDBContainerRedistributeThroughputHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleHeaders", + className: "MongoDBResourcesMongoDBContainerRedistributeThroughputHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8512,11 +10466,10 @@ export const MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleHeaders: coreClien } }; -export const MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesCreateUpdateMongoDBCollectionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: - "MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputHeaders", + className: "MongoDBResourcesCreateUpdateMongoDBCollectionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8534,10 +10487,10 @@ export const MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputHeaders: co } }; -export const MongoDBResourcesCreateUpdateMongoDBCollectionHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesDeleteMongoDBCollectionHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBResourcesCreateUpdateMongoDBCollectionHeaders", + className: "MongoDBResourcesDeleteMongoDBCollectionHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8555,10 +10508,10 @@ export const MongoDBResourcesCreateUpdateMongoDBCollectionHeaders: coreClient.Co } }; -export const MongoDBResourcesDeleteMongoDBCollectionHeaders: coreClient.CompositeMapper = { +export const MongoDBResourcesListMongoDBCollectionPartitionMergeHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "MongoDBResourcesDeleteMongoDBCollectionHeaders", + className: "MongoDBResourcesListMongoDBCollectionPartitionMergeHeaders", modelProperties: { azureAsyncOperation: { serializedName: "azure-asyncoperation", @@ -8957,6 +10910,112 @@ export const CassandraResourcesMigrateCassandraTableToManualThroughputHeaders: c } }; +export const CassandraResourcesCreateUpdateCassandraViewHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraResourcesCreateUpdateCassandraViewHeaders", + modelProperties: { + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const CassandraResourcesDeleteCassandraViewHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraResourcesDeleteCassandraViewHeaders", + modelProperties: { + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const CassandraResourcesUpdateCassandraViewThroughputHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraResourcesUpdateCassandraViewThroughputHeaders", + modelProperties: { + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const CassandraResourcesMigrateCassandraViewToAutoscaleHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "CassandraResourcesMigrateCassandraViewToAutoscaleHeaders", + modelProperties: { + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const CassandraResourcesMigrateCassandraViewToManualThroughputHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: + "CassandraResourcesMigrateCassandraViewToManualThroughputHeaders", + modelProperties: { + azureAsyncOperation: { + serializedName: "azure-asyncoperation", + type: { + name: "String" + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + export const GremlinResourcesCreateUpdateGremlinDatabaseHeaders: coreClient.CompositeMapper = { type: { name: "Composite", @@ -9168,17 +11227,41 @@ export const GremlinResourcesMigrateGremlinGraphToManualThroughputHeaders: coreC } }; -export const ServiceCreateHeaders: coreClient.CompositeMapper = { +export const MongoClustersDeleteHeaders: coreClient.CompositeMapper = { type: { name: "Composite", - className: "ServiceCreateHeaders", + className: "MongoClustersDeleteHeaders", modelProperties: { - azureAsyncOperation: { - serializedName: "azure-asyncoperation", + location: { + serializedName: "location", type: { name: "String" } - }, + } + } + } +}; + +export const MongoClustersUpdateHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoClustersUpdateHeaders", + modelProperties: { + location: { + serializedName: "location", + type: { + name: "String" + } + } + } + } +}; + +export const MongoClustersDeleteFirewallRuleHeaders: coreClient.CompositeMapper = { + type: { + name: "Composite", + className: "MongoClustersDeleteFirewallRuleHeaders", + modelProperties: { location: { serializedName: "location", type: { @@ -9212,9 +11295,13 @@ export const ServiceDeleteHeaders: coreClient.CompositeMapper = { export let discriminators = { BackupPolicy: BackupPolicy, + DataTransferDataSourceSink: DataTransferDataSourceSink, ServiceResourceProperties: ServiceResourceProperties, "BackupPolicy.Periodic": PeriodicModeBackupPolicy, "BackupPolicy.Continuous": ContinuousModeBackupPolicy, + "DataTransferDataSourceSink.CosmosDBCassandra": CosmosCassandraDataTransferDataSourceSink, + "DataTransferDataSourceSink.CosmosDBSql": CosmosSqlDataTransferDataSourceSink, + "DataTransferDataSourceSink.AzureBlobStorage": AzureBlobDataTransferDataSourceSink, "ServiceResourceProperties.DataTransfer": DataTransferServiceResourceProperties, "ServiceResourceProperties.SqlDedicatedGateway": SqlDedicatedGatewayServiceResourceProperties, "ServiceResourceProperties.GraphAPICompute": GraphAPIComputeServiceResourceProperties, diff --git a/sdk/cosmosdb/arm-cosmosdb/src/models/parameters.ts b/sdk/cosmosdb/arm-cosmosdb/src/models/parameters.ts index f58db8c3de5c4..5da64d5a93ff1 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/models/parameters.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/models/parameters.ts @@ -17,10 +17,14 @@ import { FailoverPolicies as FailoverPoliciesMapper, RegionForOnlineOffline as RegionForOnlineOfflineMapper, DatabaseAccountRegenerateKeyParameters as DatabaseAccountRegenerateKeyParametersMapper, + GraphResourceCreateUpdateParameters as GraphResourceCreateUpdateParametersMapper, SqlDatabaseCreateUpdateParameters as SqlDatabaseCreateUpdateParametersMapper, ThroughputSettingsUpdateParameters as ThroughputSettingsUpdateParametersMapper, - SqlContainerCreateUpdateParameters as SqlContainerCreateUpdateParametersMapper, ClientEncryptionKeyCreateUpdateParameters as ClientEncryptionKeyCreateUpdateParametersMapper, + SqlContainerCreateUpdateParameters as SqlContainerCreateUpdateParametersMapper, + MergeParameters as MergeParametersMapper, + RetrieveThroughputParameters as RetrieveThroughputParametersMapper, + RedistributeThroughputParameters as RedistributeThroughputParametersMapper, SqlStoredProcedureCreateUpdateParameters as SqlStoredProcedureCreateUpdateParametersMapper, SqlUserDefinedFunctionCreateUpdateParameters as SqlUserDefinedFunctionCreateUpdateParametersMapper, SqlTriggerCreateUpdateParameters as SqlTriggerCreateUpdateParametersMapper, @@ -34,11 +38,17 @@ import { TableCreateUpdateParameters as TableCreateUpdateParametersMapper, CassandraKeyspaceCreateUpdateParameters as CassandraKeyspaceCreateUpdateParametersMapper, CassandraTableCreateUpdateParameters as CassandraTableCreateUpdateParametersMapper, + CassandraViewCreateUpdateParameters as CassandraViewCreateUpdateParametersMapper, GremlinDatabaseCreateUpdateParameters as GremlinDatabaseCreateUpdateParametersMapper, GremlinGraphCreateUpdateParameters as GremlinGraphCreateUpdateParametersMapper, + CreateJobRequest as CreateJobRequestMapper, ClusterResource as ClusterResourceMapper, CommandPostBody as CommandPostBodyMapper, DataCenterResource as DataCenterResourceMapper, + MongoCluster as MongoClusterMapper, + MongoClusterUpdate as MongoClusterUpdateMapper, + FirewallRule as FirewallRuleMapper, + CheckNameAvailabilityRequest as CheckNameAvailabilityRequestMapper, NotebookWorkspaceCreateUpdateParameters as NotebookWorkspaceCreateUpdateParametersMapper, PrivateEndpointConnection as PrivateEndpointConnectionMapper, ServiceResourceCreateUpdateParameters as ServiceResourceCreateUpdateParametersMapper @@ -116,7 +126,7 @@ export const accountName: OperationURLParameter = { export const apiVersion: OperationQueryParameter = { parameterPath: "apiVersion", mapper: { - defaultValue: "2022-11-15", + defaultValue: "2023-03-01-preview", isConstant: true, serializedName: "api-version", type: { @@ -266,6 +276,22 @@ export const partitionKeyRangeId: OperationURLParameter = { } }; +export const graphName: OperationURLParameter = { + parameterPath: "graphName", + mapper: { + serializedName: "graphName", + required: true, + type: { + name: "String" + } + } +}; + +export const createUpdateGraphParameters: OperationParameter = { + parameterPath: "createUpdateGraphParameters", + mapper: GraphResourceCreateUpdateParametersMapper +}; + export const databaseName: OperationURLParameter = { parameterPath: "databaseName", mapper: { @@ -287,10 +313,10 @@ export const updateThroughputParameters: OperationParameter = { mapper: ThroughputSettingsUpdateParametersMapper }; -export const containerName: OperationURLParameter = { - parameterPath: "containerName", +export const clientEncryptionKeyName: OperationURLParameter = { + parameterPath: "clientEncryptionKeyName", mapper: { - serializedName: "containerName", + serializedName: "clientEncryptionKeyName", required: true, type: { name: "String" @@ -298,15 +324,15 @@ export const containerName: OperationURLParameter = { } }; -export const createUpdateSqlContainerParameters: OperationParameter = { - parameterPath: "createUpdateSqlContainerParameters", - mapper: SqlContainerCreateUpdateParametersMapper +export const createUpdateClientEncryptionKeyParameters: OperationParameter = { + parameterPath: "createUpdateClientEncryptionKeyParameters", + mapper: ClientEncryptionKeyCreateUpdateParametersMapper }; -export const clientEncryptionKeyName: OperationURLParameter = { - parameterPath: "clientEncryptionKeyName", +export const containerName: OperationURLParameter = { + parameterPath: "containerName", mapper: { - serializedName: "clientEncryptionKeyName", + serializedName: "containerName", required: true, type: { name: "String" @@ -314,9 +340,24 @@ export const clientEncryptionKeyName: OperationURLParameter = { } }; -export const createUpdateClientEncryptionKeyParameters: OperationParameter = { - parameterPath: "createUpdateClientEncryptionKeyParameters", - mapper: ClientEncryptionKeyCreateUpdateParametersMapper +export const createUpdateSqlContainerParameters: OperationParameter = { + parameterPath: "createUpdateSqlContainerParameters", + mapper: SqlContainerCreateUpdateParametersMapper +}; + +export const mergeParameters: OperationParameter = { + parameterPath: "mergeParameters", + mapper: MergeParametersMapper +}; + +export const retrieveThroughputParameters: OperationParameter = { + parameterPath: "retrieveThroughputParameters", + mapper: RetrieveThroughputParametersMapper +}; + +export const redistributeThroughputParameters: OperationParameter = { + parameterPath: "redistributeThroughputParameters", + mapper: RedistributeThroughputParametersMapper }; export const storedProcedureName: OperationURLParameter = { @@ -494,15 +535,10 @@ export const createUpdateCassandraTableParameters: OperationParameter = { mapper: CassandraTableCreateUpdateParametersMapper }; -export const createUpdateGremlinDatabaseParameters: OperationParameter = { - parameterPath: "createUpdateGremlinDatabaseParameters", - mapper: GremlinDatabaseCreateUpdateParametersMapper -}; - -export const graphName: OperationURLParameter = { - parameterPath: "graphName", +export const viewName: OperationURLParameter = { + parameterPath: "viewName", mapper: { - serializedName: "graphName", + serializedName: "viewName", required: true, type: { name: "String" @@ -510,6 +546,16 @@ export const graphName: OperationURLParameter = { } }; +export const createUpdateCassandraViewParameters: OperationParameter = { + parameterPath: "createUpdateCassandraViewParameters", + mapper: CassandraViewCreateUpdateParametersMapper +}; + +export const createUpdateGremlinDatabaseParameters: OperationParameter = { + parameterPath: "createUpdateGremlinDatabaseParameters", + mapper: GremlinDatabaseCreateUpdateParametersMapper +}; + export const createUpdateGremlinGraphParameters: OperationParameter = { parameterPath: "createUpdateGremlinGraphParameters", mapper: GremlinGraphCreateUpdateParametersMapper @@ -526,6 +572,22 @@ export const location1: OperationURLParameter = { } }; +export const jobCreateParameters: OperationParameter = { + parameterPath: "jobCreateParameters", + mapper: CreateJobRequestMapper +}; + +export const jobName: OperationURLParameter = { + parameterPath: "jobName", + mapper: { + serializedName: "jobName", + required: true, + type: { + name: "String" + } + } +}; + export const clusterName: OperationURLParameter = { parameterPath: "clusterName", mapper: { @@ -552,6 +614,22 @@ export const body1: OperationParameter = { mapper: CommandPostBodyMapper }; +export const backupId: OperationURLParameter = { + parameterPath: "backupId", + mapper: { + constraints: { + Pattern: new RegExp("^[0-9]+$"), + MaxLength: 15, + MinLength: 1 + }, + serializedName: "backupId", + required: true, + type: { + name: "String" + } + } +}; + export const dataCenterName: OperationURLParameter = { parameterPath: "dataCenterName", mapper: { @@ -573,6 +651,72 @@ export const body2: OperationParameter = { mapper: DataCenterResourceMapper }; +export const parameters: OperationParameter = { + parameterPath: "parameters", + mapper: MongoClusterMapper +}; + +export const mongoClusterName: OperationURLParameter = { + parameterPath: "mongoClusterName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-z0-9]+(-[a-z0-9]+)*"), + MaxLength: 40, + MinLength: 3 + }, + serializedName: "mongoClusterName", + required: true, + type: { + name: "String" + } + } +}; + +export const parameters1: OperationParameter = { + parameterPath: "parameters", + mapper: MongoClusterUpdateMapper +}; + +export const parameters2: OperationParameter = { + parameterPath: "parameters", + mapper: FirewallRuleMapper +}; + +export const firewallRuleName: OperationURLParameter = { + parameterPath: "firewallRuleName", + mapper: { + constraints: { + Pattern: new RegExp("^[a-zA-Z0-9][-_.a-zA-Z0-9]*"), + MaxLength: 80, + MinLength: 1 + }, + serializedName: "firewallRuleName", + required: true, + type: { + name: "String" + } + } +}; + +export const parameters3: OperationParameter = { + parameterPath: "parameters", + mapper: CheckNameAvailabilityRequestMapper +}; + +export const location2: OperationURLParameter = { + parameterPath: "location", + mapper: { + constraints: { + MinLength: 1 + }, + serializedName: "location", + required: true, + type: { + name: "String" + } + } +}; + export const notebookWorkspaceName: OperationURLParameter = { parameterPath: "notebookWorkspaceName", mapper: { @@ -600,7 +744,7 @@ export const privateEndpointConnectionName: OperationURLParameter = { } }; -export const parameters: OperationParameter = { +export const parameters4: OperationParameter = { parameterPath: "parameters", mapper: PrivateEndpointConnectionMapper }; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraClusters.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraClusters.ts index 44ddb96df0bfe..fcb1d9561a58f 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraClusters.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraClusters.ts @@ -24,6 +24,9 @@ import { CassandraClustersListBySubscriptionResponse, CassandraClustersListByResourceGroupOptionalParams, CassandraClustersListByResourceGroupResponse, + BackupResource, + CassandraClustersListBackupsOptionalParams, + CassandraClustersListBackupsResponse, CassandraClustersGetOptionalParams, CassandraClustersGetResponse, CassandraClustersDeleteOptionalParams, @@ -34,6 +37,8 @@ import { CommandPostBody, CassandraClustersInvokeCommandOptionalParams, CassandraClustersInvokeCommandResponse, + CassandraClustersGetBackupOptionalParams, + CassandraClustersGetBackupResponse, CassandraClustersDeallocateOptionalParams, CassandraClustersStartOptionalParams, CassandraClustersStatusOptionalParams, @@ -146,6 +151,68 @@ export class CassandraClustersImpl implements CassandraClusters { } } + /** + * List the backups of this cluster that are available to restore. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName Managed Cassandra cluster name. + * @param options The options parameters. + */ + public listBackups( + resourceGroupName: string, + clusterName: string, + options?: CassandraClustersListBackupsOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listBackupsPagingAll( + resourceGroupName, + clusterName, + 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.listBackupsPagingPage( + resourceGroupName, + clusterName, + options, + settings + ); + } + }; + } + + private async *listBackupsPagingPage( + resourceGroupName: string, + clusterName: string, + options?: CassandraClustersListBackupsOptionalParams, + _settings?: PageSettings + ): AsyncIterableIterator { + let result: CassandraClustersListBackupsResponse; + result = await this._listBackups(resourceGroupName, clusterName, options); + yield result.value || []; + } + + private async *listBackupsPagingAll( + resourceGroupName: string, + clusterName: string, + options?: CassandraClustersListBackupsOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listBackupsPagingPage( + resourceGroupName, + clusterName, + options + )) { + yield* page; + } + } + /** * List all managed Cassandra clusters in this subscription. * @param options The options parameters. @@ -560,6 +627,42 @@ export class CassandraClustersImpl implements CassandraClusters { return poller.pollUntilDone(); } + /** + * List the backups of this cluster that are available to restore. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName Managed Cassandra cluster name. + * @param options The options parameters. + */ + private _listBackups( + resourceGroupName: string, + clusterName: string, + options?: CassandraClustersListBackupsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, options }, + listBackupsOperationSpec + ); + } + + /** + * Get the properties of an individual backup of this cluster that is available to restore. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName Managed Cassandra cluster name. + * @param backupId Id of a restorable backup of a Cassandra cluster. + * @param options The options parameters. + */ + getBackup( + resourceGroupName: string, + clusterName: string, + backupId: string, + options?: CassandraClustersGetBackupOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, clusterName, backupId, options }, + getBackupOperationSpec + ); + } + /** * Deallocate the Managed Cassandra Cluster and Associated Data Centers. Deallocation will deallocate * the host virtual machine of this cluster, and reserved the data disk. This won't do anything on an @@ -934,6 +1037,51 @@ const invokeCommandOperationSpec: coreClient.OperationSpec = { mediaType: "json", serializer }; +const listBackupsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/backups", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ListBackups + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getBackupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/backups/{backupId}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.BackupResource + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.clusterName, + Parameters.backupId + ], + headerParameters: [Parameters.accept], + serializer +}; const deallocateOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/cassandraClusters/{clusterName}/deallocate", diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraResources.ts index 0e3362049a2c5..8083dd468af5f 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraResources.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/cassandraResources.ts @@ -25,6 +25,9 @@ import { CassandraTableGetResults, CassandraResourcesListCassandraTablesOptionalParams, CassandraResourcesListCassandraTablesResponse, + CassandraViewGetResults, + CassandraResourcesListCassandraViewsOptionalParams, + CassandraResourcesListCassandraViewsResponse, CassandraResourcesGetCassandraKeyspaceOptionalParams, CassandraResourcesGetCassandraKeyspaceResponse, CassandraKeyspaceCreateUpdateParameters, @@ -55,7 +58,21 @@ import { CassandraResourcesMigrateCassandraTableToAutoscaleOptionalParams, CassandraResourcesMigrateCassandraTableToAutoscaleResponse, CassandraResourcesMigrateCassandraTableToManualThroughputOptionalParams, - CassandraResourcesMigrateCassandraTableToManualThroughputResponse + CassandraResourcesMigrateCassandraTableToManualThroughputResponse, + CassandraResourcesGetCassandraViewOptionalParams, + CassandraResourcesGetCassandraViewResponse, + CassandraViewCreateUpdateParameters, + CassandraResourcesCreateUpdateCassandraViewOptionalParams, + CassandraResourcesCreateUpdateCassandraViewResponse, + CassandraResourcesDeleteCassandraViewOptionalParams, + CassandraResourcesGetCassandraViewThroughputOptionalParams, + CassandraResourcesGetCassandraViewThroughputResponse, + CassandraResourcesUpdateCassandraViewThroughputOptionalParams, + CassandraResourcesUpdateCassandraViewThroughputResponse, + CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams, + CassandraResourcesMigrateCassandraViewToAutoscaleResponse, + CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams, + CassandraResourcesMigrateCassandraViewToManualThroughputResponse } from "../models"; /// @@ -211,6 +228,80 @@ export class CassandraResourcesImpl implements CassandraResources { } } + /** + * Lists the Cassandra materialized views under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param options The options parameters. + */ + public listCassandraViews( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + options?: CassandraResourcesListCassandraViewsOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listCassandraViewsPagingAll( + resourceGroupName, + accountName, + keyspaceName, + 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.listCassandraViewsPagingPage( + resourceGroupName, + accountName, + keyspaceName, + options, + settings + ); + } + }; + } + + private async *listCassandraViewsPagingPage( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + options?: CassandraResourcesListCassandraViewsOptionalParams, + _settings?: PageSettings + ): AsyncIterableIterator { + let result: CassandraResourcesListCassandraViewsResponse; + result = await this._listCassandraViews( + resourceGroupName, + accountName, + keyspaceName, + options + ); + yield result.value || []; + } + + private async *listCassandraViewsPagingAll( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + options?: CassandraResourcesListCassandraViewsOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listCassandraViewsPagingPage( + resourceGroupName, + accountName, + keyspaceName, + options + )) { + yield* page; + } + } + /** * Lists the Cassandra keyspaces under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -1398,204 +1489,788 @@ export class CassandraResourcesImpl implements CassandraResources { ); return poller.pollUntilDone(); } -} -// Operation Specifications -const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); -const listCassandraKeyspacesOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.CassandraKeyspaceListResult - } - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.accountName - ], - headerParameters: [Parameters.accept], - serializer -}; -const getCassandraKeyspaceOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.CassandraKeyspaceGetResults - } - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.accountName, - Parameters.keyspaceName - ], - headerParameters: [Parameters.accept], - serializer -}; -const createUpdateCassandraKeyspaceOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}", - httpMethod: "PUT", - responses: { - 200: { - bodyMapper: Mappers.CassandraKeyspaceGetResults - }, - 201: { - bodyMapper: Mappers.CassandraKeyspaceGetResults - }, - 202: { - bodyMapper: Mappers.CassandraKeyspaceGetResults - }, - 204: { - bodyMapper: Mappers.CassandraKeyspaceGetResults - } - }, - requestBody: Parameters.createUpdateCassandraKeyspaceParameters, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.accountName, - Parameters.keyspaceName - ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", - serializer -}; -const deleteCassandraKeyspaceOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}", - httpMethod: "DELETE", - responses: { - 200: { - headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders - }, - 201: { - headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders - }, - 202: { - headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders - }, - 204: { - headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders - } - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.accountName, - Parameters.keyspaceName - ], - serializer -}; -const getCassandraKeyspaceThroughputOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default", - httpMethod: "GET", - responses: { - 200: { - bodyMapper: Mappers.ThroughputSettingsGetResults - } - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.accountName, - Parameters.keyspaceName - ], - headerParameters: [Parameters.accept], - serializer -}; -const updateCassandraKeyspaceThroughputOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default", - httpMethod: "PUT", - responses: { - 200: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 201: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 202: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 204: { - bodyMapper: Mappers.ThroughputSettingsGetResults - } - }, - requestBody: Parameters.updateThroughputParameters, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.accountName, - Parameters.keyspaceName - ], - headerParameters: [Parameters.accept, Parameters.contentType], - mediaType: "json", - serializer -}; -const migrateCassandraKeyspaceToAutoscaleOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToAutoscale", - httpMethod: "POST", - responses: { - 200: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 201: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 202: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 204: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - queryParameters: [Parameters.apiVersion], - urlParameters: [ - Parameters.$host, - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.accountName, - Parameters.keyspaceName - ], - headerParameters: [Parameters.accept], - serializer -}; -const migrateCassandraKeyspaceToManualThroughputOperationSpec: coreClient.OperationSpec = { - path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToManualThroughput", - httpMethod: "POST", - responses: { - 200: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 201: { - bodyMapper: Mappers.ThroughputSettingsGetResults - }, - 202: { - bodyMapper: Mappers.ThroughputSettingsGetResults + /** + * Lists the Cassandra materialized views under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param options The options parameters. + */ + private _listCassandraViews( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + options?: CassandraResourcesListCassandraViewsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, keyspaceName, options }, + listCassandraViewsOperationSpec + ); + } + + /** + * Gets the Cassandra view under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + getCassandraView( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesGetCassandraViewOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, keyspaceName, viewName, options }, + getCassandraViewOperationSpec + ); + } + + /** + * Create or update an Azure Cosmos DB Cassandra View + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param createUpdateCassandraViewParameters The parameters to provide for the current Cassandra View. + * @param options The options parameters. + */ + async beginCreateUpdateCassandraView( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + createUpdateCassandraViewParameters: CassandraViewCreateUpdateParameters, + options?: CassandraResourcesCreateUpdateCassandraViewOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CassandraResourcesCreateUpdateCassandraViewResponse + > + > { + 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, + accountName, + keyspaceName, + viewName, + createUpdateCassandraViewParameters, + options + }, + spec: createUpdateCassandraViewOperationSpec + }); + const poller = await createHttpPoller< + CassandraResourcesCreateUpdateCassandraViewResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Create or update an Azure Cosmos DB Cassandra View + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param createUpdateCassandraViewParameters The parameters to provide for the current Cassandra View. + * @param options The options parameters. + */ + async beginCreateUpdateCassandraViewAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + createUpdateCassandraViewParameters: CassandraViewCreateUpdateParameters, + options?: CassandraResourcesCreateUpdateCassandraViewOptionalParams + ): Promise { + const poller = await this.beginCreateUpdateCassandraView( + resourceGroupName, + accountName, + keyspaceName, + viewName, + createUpdateCassandraViewParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Deletes an existing Azure Cosmos DB Cassandra view. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + async beginDeleteCassandraView( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesDeleteCassandraViewOptionalParams + ): 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, accountName, keyspaceName, viewName, options }, + spec: deleteCassandraViewOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Deletes an existing Azure Cosmos DB Cassandra view. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + async beginDeleteCassandraViewAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesDeleteCassandraViewOptionalParams + ): Promise { + const poller = await this.beginDeleteCassandraView( + resourceGroupName, + accountName, + keyspaceName, + viewName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Gets the RUs per second of the Cassandra view under an existing Azure Cosmos DB database account + * with the provided name. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + getCassandraViewThroughput( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesGetCassandraViewThroughputOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, keyspaceName, viewName, options }, + getCassandraViewThroughputOperationSpec + ); + } + + /** + * Update RUs per second of an Azure Cosmos DB Cassandra view + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param updateThroughputParameters The RUs per second of the parameters to provide for the current + * Cassandra view. + * @param options The options parameters. + */ + async beginUpdateCassandraViewThroughput( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + updateThroughputParameters: ThroughputSettingsUpdateParameters, + options?: CassandraResourcesUpdateCassandraViewThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CassandraResourcesUpdateCassandraViewThroughputResponse + > + > { + 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, + accountName, + keyspaceName, + viewName, + updateThroughputParameters, + options + }, + spec: updateCassandraViewThroughputOperationSpec + }); + const poller = await createHttpPoller< + CassandraResourcesUpdateCassandraViewThroughputResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Update RUs per second of an Azure Cosmos DB Cassandra view + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param updateThroughputParameters The RUs per second of the parameters to provide for the current + * Cassandra view. + * @param options The options parameters. + */ + async beginUpdateCassandraViewThroughputAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + updateThroughputParameters: ThroughputSettingsUpdateParameters, + options?: CassandraResourcesUpdateCassandraViewThroughputOptionalParams + ): Promise { + const poller = await this.beginUpdateCassandraViewThroughput( + resourceGroupName, + accountName, + keyspaceName, + viewName, + updateThroughputParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Migrate an Azure Cosmos DB Cassandra view from manual throughput to autoscale + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + async beginMigrateCassandraViewToAutoscale( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CassandraResourcesMigrateCassandraViewToAutoscaleResponse + > + > { + 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, accountName, keyspaceName, viewName, options }, + spec: migrateCassandraViewToAutoscaleOperationSpec + }); + const poller = await createHttpPoller< + CassandraResourcesMigrateCassandraViewToAutoscaleResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Migrate an Azure Cosmos DB Cassandra view from manual throughput to autoscale + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + async beginMigrateCassandraViewToAutoscaleAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams + ): Promise { + const poller = await this.beginMigrateCassandraViewToAutoscale( + resourceGroupName, + accountName, + keyspaceName, + viewName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Migrate an Azure Cosmos DB Cassandra view from autoscale to manual throughput + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + async beginMigrateCassandraViewToManualThroughput( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + CassandraResourcesMigrateCassandraViewToManualThroughputResponse + >, + CassandraResourcesMigrateCassandraViewToManualThroughputResponse + > + > { + 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, accountName, keyspaceName, viewName, options }, + spec: migrateCassandraViewToManualThroughputOperationSpec + }); + const poller = await createHttpPoller< + CassandraResourcesMigrateCassandraViewToManualThroughputResponse, + OperationState< + CassandraResourcesMigrateCassandraViewToManualThroughputResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Migrate an Azure Cosmos DB Cassandra view from autoscale to manual throughput + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + async beginMigrateCassandraViewToManualThroughputAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams + ): Promise { + const poller = await this.beginMigrateCassandraViewToManualThroughput( + resourceGroupName, + accountName, + keyspaceName, + viewName, + options + ); + return poller.pollUntilDone(); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listCassandraKeyspacesOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CassandraKeyspaceListResult + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getCassandraKeyspaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CassandraKeyspaceGetResults + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createUpdateCassandraKeyspaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.CassandraKeyspaceGetResults + }, + 201: { + bodyMapper: Mappers.CassandraKeyspaceGetResults + }, + 202: { + bodyMapper: Mappers.CassandraKeyspaceGetResults + }, + 204: { + bodyMapper: Mappers.CassandraKeyspaceGetResults + } + }, + requestBody: Parameters.createUpdateCassandraKeyspaceParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteCassandraKeyspaceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}", + httpMethod: "DELETE", + responses: { + 200: { + headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders + }, + 201: { + headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders + }, + 202: { + headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders + }, + 204: { + headersMapper: Mappers.CassandraResourcesDeleteCassandraKeyspaceHeaders + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName + ], + serializer +}; +const getCassandraKeyspaceThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateCassandraKeyspaceThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 201: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 202: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 204: { + bodyMapper: Mappers.ThroughputSettingsGetResults + } + }, + requestBody: Parameters.updateThroughputParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const migrateCassandraKeyspaceToAutoscaleOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToAutoscale", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 201: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 202: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 204: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const migrateCassandraKeyspaceToManualThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/throughputSettings/default/migrateToManualThroughput", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 201: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 202: { + bodyMapper: Mappers.ThroughputSettingsGetResults }, 204: { bodyMapper: Mappers.ThroughputSettingsGetResults @@ -1836,3 +2511,211 @@ const migrateCassandraTableToManualThroughputOperationSpec: coreClient.Operation headerParameters: [Parameters.accept], serializer }; +const listCassandraViewsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CassandraViewListResult + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getCassandraViewOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views/{viewName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.CassandraViewGetResults + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName, + Parameters.viewName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createUpdateCassandraViewOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views/{viewName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.CassandraViewGetResults + }, + 201: { + bodyMapper: Mappers.CassandraViewGetResults + }, + 202: { + bodyMapper: Mappers.CassandraViewGetResults + }, + 204: { + bodyMapper: Mappers.CassandraViewGetResults + } + }, + requestBody: Parameters.createUpdateCassandraViewParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName, + Parameters.viewName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteCassandraViewOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views/{viewName}", + httpMethod: "DELETE", + responses: { 200: {}, 201: {}, 202: {}, 204: {} }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName, + Parameters.viewName + ], + serializer +}; +const getCassandraViewThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views/{viewName}/throughputSettings/default", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName, + Parameters.viewName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateCassandraViewThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views/{viewName}/throughputSettings/default", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 201: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 202: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 204: { + bodyMapper: Mappers.ThroughputSettingsGetResults + } + }, + requestBody: Parameters.updateThroughputParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName, + Parameters.viewName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const migrateCassandraViewToAutoscaleOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views/{viewName}/throughputSettings/default/migrateToAutoscale", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 201: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 202: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 204: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName, + Parameters.viewName + ], + headerParameters: [Parameters.accept], + serializer +}; +const migrateCassandraViewToManualThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/cassandraKeyspaces/{keyspaceName}/views/{viewName}/throughputSettings/default/migrateToManualThroughput", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 201: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 202: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + 204: { + bodyMapper: Mappers.ThroughputSettingsGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.keyspaceName, + Parameters.viewName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/dataTransferJobs.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/dataTransferJobs.ts new file mode 100644 index 0000000000000..fa0f29cdd55ac --- /dev/null +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/dataTransferJobs.ts @@ -0,0 +1,427 @@ +/* + * 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 { DataTransferJobs } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { CosmosDBManagementClient } from "../cosmosDBManagementClient"; +import { + DataTransferJobGetResults, + DataTransferJobsListByDatabaseAccountNextOptionalParams, + DataTransferJobsListByDatabaseAccountOptionalParams, + DataTransferJobsListByDatabaseAccountResponse, + CreateJobRequest, + DataTransferJobsCreateOptionalParams, + DataTransferJobsCreateResponse, + DataTransferJobsGetOptionalParams, + DataTransferJobsGetResponse, + DataTransferJobsPauseOptionalParams, + DataTransferJobsPauseResponse, + DataTransferJobsResumeOptionalParams, + DataTransferJobsResumeResponse, + DataTransferJobsCancelOptionalParams, + DataTransferJobsCancelResponse, + DataTransferJobsListByDatabaseAccountNextResponse +} from "../models"; + +/// +/** Class containing DataTransferJobs operations. */ +export class DataTransferJobsImpl implements DataTransferJobs { + private readonly client: CosmosDBManagementClient; + + /** + * Initialize a new instance of the class DataTransferJobs class. + * @param client Reference to the service client + */ + constructor(client: CosmosDBManagementClient) { + this.client = client; + } + + /** + * Get a list of Data Transfer jobs. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param options The options parameters. + */ + public listByDatabaseAccount( + resourceGroupName: string, + accountName: string, + options?: DataTransferJobsListByDatabaseAccountOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listByDatabaseAccountPagingAll( + resourceGroupName, + accountName, + 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.listByDatabaseAccountPagingPage( + resourceGroupName, + accountName, + options, + settings + ); + } + }; + } + + private async *listByDatabaseAccountPagingPage( + resourceGroupName: string, + accountName: string, + options?: DataTransferJobsListByDatabaseAccountOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: DataTransferJobsListByDatabaseAccountResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listByDatabaseAccount( + resourceGroupName, + accountName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listByDatabaseAccountNext( + resourceGroupName, + accountName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listByDatabaseAccountPagingAll( + resourceGroupName: string, + accountName: string, + options?: DataTransferJobsListByDatabaseAccountOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByDatabaseAccountPagingPage( + resourceGroupName, + accountName, + options + )) { + yield* page; + } + } + + /** + * Creates a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param jobCreateParameters Parameters to create Data Transfer Job + * @param options The options parameters. + */ + create( + resourceGroupName: string, + accountName: string, + jobName: string, + jobCreateParameters: CreateJobRequest, + options?: DataTransferJobsCreateOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, jobName, jobCreateParameters, options }, + createOperationSpec + ); + } + + /** + * Get a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + get( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, jobName, options }, + getOperationSpec + ); + } + + /** + * Pause a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + pause( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsPauseOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, jobName, options }, + pauseOperationSpec + ); + } + + /** + * Resumes a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + resume( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsResumeOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, jobName, options }, + resumeOperationSpec + ); + } + + /** + * Cancels a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + cancel( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsCancelOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, jobName, options }, + cancelOperationSpec + ); + } + + /** + * Get a list of Data Transfer jobs. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param options The options parameters. + */ + private _listByDatabaseAccount( + resourceGroupName: string, + accountName: string, + options?: DataTransferJobsListByDatabaseAccountOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, options }, + listByDatabaseAccountOperationSpec + ); + } + + /** + * ListByDatabaseAccountNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param nextLink The nextLink from the previous successful call to the ListByDatabaseAccount method. + * @param options The options parameters. + */ + private _listByDatabaseAccountNext( + resourceGroupName: string, + accountName: string, + nextLink: string, + options?: DataTransferJobsListByDatabaseAccountNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, nextLink, options }, + listByDatabaseAccountNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const createOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/dataTransferJobs/{jobName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.DataTransferJobGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.jobCreateParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.jobName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/dataTransferJobs/{jobName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.DataTransferJobGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.jobName + ], + headerParameters: [Parameters.accept], + serializer +}; +const pauseOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/dataTransferJobs/{jobName}/pause", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.DataTransferJobGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.jobName + ], + headerParameters: [Parameters.accept], + serializer +}; +const resumeOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/dataTransferJobs/{jobName}/resume", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.DataTransferJobGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.jobName + ], + headerParameters: [Parameters.accept], + serializer +}; +const cancelOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/dataTransferJobs/{jobName}/cancel", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.DataTransferJobGetResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.jobName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByDatabaseAccountOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/dataTransferJobs", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.DataTransferJobFeedResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByDatabaseAccountNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.DataTransferJobFeedResults + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/graphResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/graphResources.ts new file mode 100644 index 0000000000000..ca9d84964a8c2 --- /dev/null +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/graphResources.ts @@ -0,0 +1,424 @@ +/* + * 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 { GraphResources } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { CosmosDBManagementClient } from "../cosmosDBManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + GraphResourceGetResults, + GraphResourcesListGraphsOptionalParams, + GraphResourcesListGraphsResponse, + GraphResourcesGetGraphOptionalParams, + GraphResourcesGetGraphResponse, + GraphResourceCreateUpdateParameters, + GraphResourcesCreateUpdateGraphOptionalParams, + GraphResourcesCreateUpdateGraphResponse, + GraphResourcesDeleteGraphResourceOptionalParams +} from "../models"; + +/// +/** Class containing GraphResources operations. */ +export class GraphResourcesImpl implements GraphResources { + private readonly client: CosmosDBManagementClient; + + /** + * Initialize a new instance of the class GraphResources class. + * @param client Reference to the service client + */ + constructor(client: CosmosDBManagementClient) { + this.client = client; + } + + /** + * Lists the graphs under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param options The options parameters. + */ + public listGraphs( + resourceGroupName: string, + accountName: string, + options?: GraphResourcesListGraphsOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listGraphsPagingAll( + resourceGroupName, + accountName, + 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.listGraphsPagingPage( + resourceGroupName, + accountName, + options, + settings + ); + } + }; + } + + private async *listGraphsPagingPage( + resourceGroupName: string, + accountName: string, + options?: GraphResourcesListGraphsOptionalParams, + _settings?: PageSettings + ): AsyncIterableIterator { + let result: GraphResourcesListGraphsResponse; + result = await this._listGraphs(resourceGroupName, accountName, options); + yield result.value || []; + } + + private async *listGraphsPagingAll( + resourceGroupName: string, + accountName: string, + options?: GraphResourcesListGraphsOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listGraphsPagingPage( + resourceGroupName, + accountName, + options + )) { + yield* page; + } + } + + /** + * Lists the graphs under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param options The options parameters. + */ + private _listGraphs( + resourceGroupName: string, + accountName: string, + options?: GraphResourcesListGraphsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, options }, + listGraphsOperationSpec + ); + } + + /** + * Gets the Graph resource under an existing Azure Cosmos DB database account with the provided name. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param options The options parameters. + */ + getGraph( + resourceGroupName: string, + accountName: string, + graphName: string, + options?: GraphResourcesGetGraphOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, graphName, options }, + getGraphOperationSpec + ); + } + + /** + * Create or update an Azure Cosmos DB Graph. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param createUpdateGraphParameters The parameters to provide for the current graph. + * @param options The options parameters. + */ + async beginCreateUpdateGraph( + resourceGroupName: string, + accountName: string, + graphName: string, + createUpdateGraphParameters: GraphResourceCreateUpdateParameters, + options?: GraphResourcesCreateUpdateGraphOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + GraphResourcesCreateUpdateGraphResponse + > + > { + 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, + accountName, + graphName, + createUpdateGraphParameters, + options + }, + spec: createUpdateGraphOperationSpec + }); + const poller = await createHttpPoller< + GraphResourcesCreateUpdateGraphResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Create or update an Azure Cosmos DB Graph. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param createUpdateGraphParameters The parameters to provide for the current graph. + * @param options The options parameters. + */ + async beginCreateUpdateGraphAndWait( + resourceGroupName: string, + accountName: string, + graphName: string, + createUpdateGraphParameters: GraphResourceCreateUpdateParameters, + options?: GraphResourcesCreateUpdateGraphOptionalParams + ): Promise { + const poller = await this.beginCreateUpdateGraph( + resourceGroupName, + accountName, + graphName, + createUpdateGraphParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Deletes an existing Azure Cosmos DB Graph Resource. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param options The options parameters. + */ + async beginDeleteGraphResource( + resourceGroupName: string, + accountName: string, + graphName: string, + options?: GraphResourcesDeleteGraphResourceOptionalParams + ): 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, accountName, graphName, options }, + spec: deleteGraphResourceOperationSpec + }); + const poller = await createHttpPoller>(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Deletes an existing Azure Cosmos DB Graph Resource. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param options The options parameters. + */ + async beginDeleteGraphResourceAndWait( + resourceGroupName: string, + accountName: string, + graphName: string, + options?: GraphResourcesDeleteGraphResourceOptionalParams + ): Promise { + const poller = await this.beginDeleteGraphResource( + resourceGroupName, + accountName, + graphName, + options + ); + return poller.pollUntilDone(); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listGraphsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/graphs", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.GraphResourcesListResult + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getGraphOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/graphs/{graphName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.GraphResourceGetResults + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.graphName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createUpdateGraphOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/graphs/{graphName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.GraphResourceGetResults + }, + 201: { + bodyMapper: Mappers.GraphResourceGetResults + }, + 202: { + bodyMapper: Mappers.GraphResourceGetResults + }, + 204: { + bodyMapper: Mappers.GraphResourceGetResults + } + }, + requestBody: Parameters.createUpdateGraphParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.graphName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteGraphResourceOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/graphs/{graphName}", + httpMethod: "DELETE", + responses: { 200: {}, 201: {}, 202: {}, 204: {} }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.graphName + ], + serializer +}; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/gremlinResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/gremlinResources.ts index 71d2f195fb633..6170d76b9253b 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operations/gremlinResources.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/gremlinResources.ts @@ -1754,8 +1754,8 @@ const getGremlinGraphOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], headerParameters: [Parameters.accept], serializer @@ -1785,8 +1785,8 @@ const createUpdateGremlinGraphOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], headerParameters: [Parameters.accept, Parameters.contentType], mediaType: "json", @@ -1816,8 +1816,8 @@ const deleteGremlinGraphOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], serializer }; @@ -1836,8 +1836,8 @@ const getGremlinGraphThroughputOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], headerParameters: [Parameters.accept], serializer @@ -1867,8 +1867,8 @@ const updateGremlinGraphThroughputOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], headerParameters: [Parameters.accept, Parameters.contentType], mediaType: "json", @@ -1901,8 +1901,8 @@ const migrateGremlinGraphToAutoscaleOperationSpec: coreClient.OperationSpec = { Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], headerParameters: [Parameters.accept], serializer @@ -1934,8 +1934,8 @@ const migrateGremlinGraphToManualThroughputOperationSpec: coreClient.OperationSp Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], headerParameters: [Parameters.accept], serializer @@ -1968,8 +1968,8 @@ const retrieveContinuousBackupInformationOperationSpec: coreClient.OperationSpec Parameters.subscriptionId, Parameters.resourceGroupName, Parameters.accountName, - Parameters.databaseName, - Parameters.graphName + Parameters.graphName, + Parameters.databaseName ], headerParameters: [Parameters.accept, Parameters.contentType], mediaType: "json", diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/index.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/index.ts index 96531b8c1b96d..062f4d7ab604b 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operations/index.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/index.ts @@ -19,14 +19,17 @@ export * from "./collectionPartitionRegion"; export * from "./collectionPartition"; export * from "./partitionKeyRangeId"; export * from "./partitionKeyRangeIdRegion"; +export * from "./graphResources"; export * from "./sqlResources"; export * from "./mongoDBResources"; export * from "./tableResources"; export * from "./cassandraResources"; export * from "./gremlinResources"; export * from "./locations"; +export * from "./dataTransferJobs"; export * from "./cassandraClusters"; export * from "./cassandraDataCenters"; +export * from "./mongoClusters"; export * from "./notebookWorkspaces"; export * from "./privateEndpointConnections"; export * from "./privateLinkResources"; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/mongoClusters.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/mongoClusters.ts new file mode 100644 index 0000000000000..b276197519114 --- /dev/null +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/mongoClusters.ts @@ -0,0 +1,1308 @@ +/* + * 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 { MongoClusters } from "../operationsInterfaces"; +import * as coreClient from "@azure/core-client"; +import * as Mappers from "../models/mappers"; +import * as Parameters from "../models/parameters"; +import { CosmosDBManagementClient } from "../cosmosDBManagementClient"; +import { + SimplePollerLike, + OperationState, + createHttpPoller +} from "@azure/core-lro"; +import { createLroSpec } from "../lroImpl"; +import { + MongoCluster, + MongoClustersListNextOptionalParams, + MongoClustersListOptionalParams, + MongoClustersListResponse, + MongoClustersListByResourceGroupNextOptionalParams, + MongoClustersListByResourceGroupOptionalParams, + MongoClustersListByResourceGroupResponse, + FirewallRule, + MongoClustersListFirewallRulesNextOptionalParams, + MongoClustersListFirewallRulesOptionalParams, + MongoClustersListFirewallRulesResponse, + MongoClustersCreateOrUpdateOptionalParams, + MongoClustersCreateOrUpdateResponse, + MongoClustersGetOptionalParams, + MongoClustersGetResponse, + MongoClustersDeleteOptionalParams, + MongoClustersDeleteResponse, + MongoClusterUpdate, + MongoClustersUpdateOptionalParams, + MongoClustersUpdateResponse, + MongoClustersCreateOrUpdateFirewallRuleOptionalParams, + MongoClustersCreateOrUpdateFirewallRuleResponse, + MongoClustersDeleteFirewallRuleOptionalParams, + MongoClustersDeleteFirewallRuleResponse, + MongoClustersGetFirewallRuleOptionalParams, + MongoClustersGetFirewallRuleResponse, + CheckNameAvailabilityRequest, + MongoClustersCheckNameAvailabilityOptionalParams, + MongoClustersCheckNameAvailabilityResponse, + MongoClustersListConnectionStringsOptionalParams, + MongoClustersListConnectionStringsResponse, + MongoClustersListNextResponse, + MongoClustersListByResourceGroupNextResponse, + MongoClustersListFirewallRulesNextResponse +} from "../models"; + +/// +/** Class containing MongoClusters operations. */ +export class MongoClustersImpl implements MongoClusters { + private readonly client: CosmosDBManagementClient; + + /** + * Initialize a new instance of the class MongoClusters class. + * @param client Reference to the service client + */ + constructor(client: CosmosDBManagementClient) { + this.client = client; + } + + /** + * List all the mongo clusters in a given subscription. + * @param options The options parameters. + */ + public list( + options?: MongoClustersListOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listPagingAll(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.listPagingPage(options, settings); + } + }; + } + + private async *listPagingPage( + options?: MongoClustersListOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: MongoClustersListResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._list(options); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listNext(continuationToken, options); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listPagingAll( + options?: MongoClustersListOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listPagingPage(options)) { + yield* page; + } + } + + /** + * List all the mongo clusters in a given resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + public listByResourceGroup( + resourceGroupName: string, + options?: MongoClustersListByResourceGroupOptionalParams + ): 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?: MongoClustersListByResourceGroupOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: MongoClustersListByResourceGroupResponse; + 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?: MongoClustersListByResourceGroupOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listByResourceGroupPagingPage( + resourceGroupName, + options + )) { + yield* page; + } + } + + /** + * List all the firewall rules in a given mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + public listFirewallRules( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersListFirewallRulesOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listFirewallRulesPagingAll( + resourceGroupName, + mongoClusterName, + 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.listFirewallRulesPagingPage( + resourceGroupName, + mongoClusterName, + options, + settings + ); + } + }; + } + + private async *listFirewallRulesPagingPage( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersListFirewallRulesOptionalParams, + settings?: PageSettings + ): AsyncIterableIterator { + let result: MongoClustersListFirewallRulesResponse; + let continuationToken = settings?.continuationToken; + if (!continuationToken) { + result = await this._listFirewallRules( + resourceGroupName, + mongoClusterName, + options + ); + let page = result.value || []; + continuationToken = result.nextLink; + setContinuationToken(page, continuationToken); + yield page; + } + while (continuationToken) { + result = await this._listFirewallRulesNext( + resourceGroupName, + mongoClusterName, + continuationToken, + options + ); + continuationToken = result.nextLink; + let page = result.value || []; + setContinuationToken(page, continuationToken); + yield page; + } + } + + private async *listFirewallRulesPagingAll( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersListFirewallRulesOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listFirewallRulesPagingPage( + resourceGroupName, + mongoClusterName, + options + )) { + yield* page; + } + } + + /** + * List all the mongo clusters in a given subscription. + * @param options The options parameters. + */ + private _list( + options?: MongoClustersListOptionalParams + ): Promise { + return this.client.sendOperationRequest({ options }, listOperationSpec); + } + + /** + * List all the mongo clusters in a given resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + private _listByResourceGroup( + resourceGroupName: string, + options?: MongoClustersListByResourceGroupOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, options }, + listByResourceGroupOperationSpec + ); + } + + /** + * Create or update a mongo cluster. Update overwrites all properties for the resource. To only modify + * some of the properties, use PATCH. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The required parameters for creating or updating a mongo cluster. + * @param options The options parameters. + */ + async beginCreateOrUpdate( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoCluster, + options?: MongoClustersCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersCreateOrUpdateResponse + > + > { + 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, mongoClusterName, parameters, options }, + spec: createOrUpdateOperationSpec + }); + const poller = await createHttpPoller< + MongoClustersCreateOrUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a mongo cluster. Update overwrites all properties for the resource. To only modify + * some of the properties, use PATCH. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The required parameters for creating or updating a mongo cluster. + * @param options The options parameters. + */ + async beginCreateOrUpdateAndWait( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoCluster, + options?: MongoClustersCreateOrUpdateOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdate( + resourceGroupName, + mongoClusterName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Gets information about a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersGetOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, mongoClusterName, options }, + getOperationSpec + ); + } + + /** + * Deletes a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + async beginDelete( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersDeleteOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersDeleteResponse + > + > { + 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, mongoClusterName, options }, + spec: deleteOperationSpec + }); + const poller = await createHttpPoller< + MongoClustersDeleteResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Deletes a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + async beginDeleteAndWait( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersDeleteOptionalParams + ): Promise { + const poller = await this.beginDelete( + resourceGroupName, + mongoClusterName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Updates an existing mongo cluster. The request body can contain one to many of the properties + * present in the normal mongo cluster definition. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The parameters for updating a mongo cluster. + * @param options The options parameters. + */ + async beginUpdate( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoClusterUpdate, + options?: MongoClustersUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersUpdateResponse + > + > { + 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, mongoClusterName, parameters, options }, + spec: updateOperationSpec + }); + const poller = await createHttpPoller< + MongoClustersUpdateResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Updates an existing mongo cluster. The request body can contain one to many of the properties + * present in the normal mongo cluster definition. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The parameters for updating a mongo cluster. + * @param options The options parameters. + */ + async beginUpdateAndWait( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoClusterUpdate, + options?: MongoClustersUpdateOptionalParams + ): Promise { + const poller = await this.beginUpdate( + resourceGroupName, + mongoClusterName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Creates a new firewall rule or updates an existing firewall rule on a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param parameters The required parameters for creating or updating a firewall rule. + * @param options The options parameters. + */ + async beginCreateOrUpdateFirewallRule( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + parameters: FirewallRule, + options?: MongoClustersCreateOrUpdateFirewallRuleOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersCreateOrUpdateFirewallRuleResponse + > + > { + 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, + mongoClusterName, + firewallRuleName, + parameters, + options + }, + spec: createOrUpdateFirewallRuleOperationSpec + }); + const poller = await createHttpPoller< + MongoClustersCreateOrUpdateFirewallRuleResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "azure-async-operation" + }); + await poller.poll(); + return poller; + } + + /** + * Creates a new firewall rule or updates an existing firewall rule on a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param parameters The required parameters for creating or updating a firewall rule. + * @param options The options parameters. + */ + async beginCreateOrUpdateFirewallRuleAndWait( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + parameters: FirewallRule, + options?: MongoClustersCreateOrUpdateFirewallRuleOptionalParams + ): Promise { + const poller = await this.beginCreateOrUpdateFirewallRule( + resourceGroupName, + mongoClusterName, + firewallRuleName, + parameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Deletes a mongo cluster firewall rule. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param options The options parameters. + */ + async beginDeleteFirewallRule( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + options?: MongoClustersDeleteFirewallRuleOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersDeleteFirewallRuleResponse + > + > { + 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, mongoClusterName, firewallRuleName, options }, + spec: deleteFirewallRuleOperationSpec + }); + const poller = await createHttpPoller< + MongoClustersDeleteFirewallRuleResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Deletes a mongo cluster firewall rule. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param options The options parameters. + */ + async beginDeleteFirewallRuleAndWait( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + options?: MongoClustersDeleteFirewallRuleOptionalParams + ): Promise { + const poller = await this.beginDeleteFirewallRule( + resourceGroupName, + mongoClusterName, + firewallRuleName, + options + ); + return poller.pollUntilDone(); + } + + /** + * Gets information about a mongo cluster firewall rule. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param options The options parameters. + */ + getFirewallRule( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + options?: MongoClustersGetFirewallRuleOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, mongoClusterName, firewallRuleName, options }, + getFirewallRuleOperationSpec + ); + } + + /** + * List all the firewall rules in a given mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + private _listFirewallRules( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersListFirewallRulesOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, mongoClusterName, options }, + listFirewallRulesOperationSpec + ); + } + + /** + * Check the availability of name for resource + * @param location The name of the Azure region. + * @param parameters The required parameters for checking if resource name is available. + * @param options The options parameters. + */ + checkNameAvailability( + location: string, + parameters: CheckNameAvailabilityRequest, + options?: MongoClustersCheckNameAvailabilityOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { location, parameters, options }, + checkNameAvailabilityOperationSpec + ); + } + + /** + * List mongo cluster connection strings. This includes the default connection string using + * SCRAM-SHA-256, as well as other connection strings supported by the cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + listConnectionStrings( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersListConnectionStringsOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, mongoClusterName, options }, + listConnectionStringsOperationSpec + ); + } + + /** + * ListNext + * @param nextLink The nextLink from the previous successful call to the List method. + * @param options The options parameters. + */ + private _listNext( + nextLink: string, + options?: MongoClustersListNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { nextLink, options }, + listNextOperationSpec + ); + } + + /** + * ListByResourceGroupNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @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?: MongoClustersListByResourceGroupNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, nextLink, options }, + listByResourceGroupNextOperationSpec + ); + } + + /** + * ListFirewallRulesNext + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param nextLink The nextLink from the previous successful call to the ListFirewallRules method. + * @param options The options parameters. + */ + private _listFirewallRulesNext( + resourceGroupName: string, + mongoClusterName: string, + nextLink: string, + options?: MongoClustersListFirewallRulesNextOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, mongoClusterName, nextLink, options }, + listFirewallRulesNextOperationSpec + ); + } +} +// Operation Specifications +const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); + +const listOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/mongoClusters", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.MongoClusterListResult + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [Parameters.$host, Parameters.subscriptionId], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.MongoClusterListResult + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createOrUpdateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.MongoCluster + }, + 201: { + bodyMapper: Mappers.MongoCluster + }, + 202: { + bodyMapper: Mappers.MongoCluster + }, + 204: { + bodyMapper: Mappers.MongoCluster + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + requestBody: Parameters.parameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const getOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.MongoCluster + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName + ], + headerParameters: [Parameters.accept], + serializer +}; +const deleteOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", + httpMethod: "DELETE", + responses: { + 200: { + headersMapper: Mappers.MongoClustersDeleteHeaders + }, + 201: { + headersMapper: Mappers.MongoClustersDeleteHeaders + }, + 202: { + headersMapper: Mappers.MongoClustersDeleteHeaders + }, + 204: { + headersMapper: Mappers.MongoClustersDeleteHeaders + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName + ], + headerParameters: [Parameters.accept], + serializer +}; +const updateOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}", + httpMethod: "PATCH", + responses: { + 200: { + bodyMapper: Mappers.MongoCluster + }, + 201: { + bodyMapper: Mappers.MongoCluster + }, + 202: { + bodyMapper: Mappers.MongoCluster + }, + 204: { + bodyMapper: Mappers.MongoCluster + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + requestBody: Parameters.parameters1, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const createOrUpdateFirewallRuleOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.FirewallRule + }, + 201: { + bodyMapper: Mappers.FirewallRule + }, + 202: { + bodyMapper: Mappers.FirewallRule + }, + 204: { + bodyMapper: Mappers.FirewallRule + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + requestBody: Parameters.parameters2, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName, + Parameters.firewallRuleName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const deleteFirewallRuleOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", + httpMethod: "DELETE", + responses: { + 200: { + headersMapper: Mappers.MongoClustersDeleteFirewallRuleHeaders + }, + 201: { + headersMapper: Mappers.MongoClustersDeleteFirewallRuleHeaders + }, + 202: { + headersMapper: Mappers.MongoClustersDeleteFirewallRuleHeaders + }, + 204: { + headersMapper: Mappers.MongoClustersDeleteFirewallRuleHeaders + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName, + Parameters.firewallRuleName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getFirewallRuleOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules/{firewallRuleName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.FirewallRule + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName, + Parameters.firewallRuleName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listFirewallRulesOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/firewallRules", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.FirewallRuleListResult + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName + ], + headerParameters: [Parameters.accept], + serializer +}; +const checkNameAvailabilityOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/checkMongoClusterNameAvailability", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.CheckNameAvailabilityResponse + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + requestBody: Parameters.parameters3, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.location2 + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const listConnectionStringsOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/mongoClusters/{mongoClusterName}/listConnectionStrings", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.ListConnectionStringsResult + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.mongoClusterName + ], + headerParameters: [Parameters.accept], + serializer +}; +const listNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.MongoClusterListResult + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; +const listByResourceGroupNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.MongoClusterListResult + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.nextLink + ], + headerParameters: [Parameters.accept], + serializer +}; +const listFirewallRulesNextOperationSpec: coreClient.OperationSpec = { + path: "{nextLink}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.FirewallRuleListResult + }, + default: { + bodyMapper: Mappers.ErrorResponseAutoGenerated + } + }, + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.nextLink, + Parameters.mongoClusterName + ], + headerParameters: [Parameters.accept], + serializer +}; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/mongoDBResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/mongoDBResources.ts index ee29a8ec5d699..419cc16700d24 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operations/mongoDBResources.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/mongoDBResources.ts @@ -47,6 +47,16 @@ import { MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleResponse, MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputOptionalParams, MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputResponse, + RetrieveThroughputParameters, + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams, + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse, + RedistributeThroughputParameters, + MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams, + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse, + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams, + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse, + MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams, + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse, MongoDBResourcesGetMongoDBCollectionOptionalParams, MongoDBResourcesGetMongoDBCollectionResponse, MongoDBCollectionCreateUpdateParameters, @@ -54,6 +64,9 @@ import { MongoDBResourcesCreateUpdateMongoDBCollectionResponse, MongoDBResourcesDeleteMongoDBCollectionOptionalParams, MongoDBResourcesDeleteMongoDBCollectionResponse, + MergeParameters, + MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams, + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse, MongoDBResourcesGetMongoDBCollectionThroughputOptionalParams, MongoDBResourcesGetMongoDBCollectionThroughputResponse, MongoDBResourcesUpdateMongoDBCollectionThroughputOptionalParams, @@ -926,6 +939,474 @@ export class MongoDBResourcesImpl implements MongoDBResources { return poller.pollUntilDone(); } + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB database. + * @param options The options parameters. + */ + async beginMongoDBDatabaseRetrieveThroughputDistribution( + resourceGroupName: string, + accountName: string, + databaseName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + >, + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + > + > { + 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, + accountName, + databaseName, + retrieveThroughputParameters, + options + }, + spec: mongoDBDatabaseRetrieveThroughputDistributionOperationSpec + }); + const poller = await createHttpPoller< + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse, + OperationState< + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB database. + * @param options The options parameters. + */ + async beginMongoDBDatabaseRetrieveThroughputDistributionAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise< + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + > { + const poller = await this.beginMongoDBDatabaseRetrieveThroughputDistribution( + resourceGroupName, + accountName, + databaseName, + retrieveThroughputParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB database. + * @param options The options parameters. + */ + async beginMongoDBDatabaseRedistributeThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse + >, + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse + > + > { + 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, + accountName, + databaseName, + redistributeThroughputParameters, + options + }, + spec: mongoDBDatabaseRedistributeThroughputOperationSpec + }); + const poller = await createHttpPoller< + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse, + OperationState< + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB database. + * @param options The options parameters. + */ + async beginMongoDBDatabaseRedistributeThroughputAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams + ): Promise { + const poller = await this.beginMongoDBDatabaseRedistributeThroughput( + resourceGroupName, + accountName, + databaseName, + redistributeThroughputParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB container. + * @param options The options parameters. + */ + async beginMongoDBContainerRetrieveThroughputDistribution( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + >, + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + > + > { + 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, + accountName, + databaseName, + collectionName, + retrieveThroughputParameters, + options + }, + spec: mongoDBContainerRetrieveThroughputDistributionOperationSpec + }); + const poller = await createHttpPoller< + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse, + OperationState< + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB container. + * @param options The options parameters. + */ + async beginMongoDBContainerRetrieveThroughputDistributionAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams + ): Promise< + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + > { + const poller = await this.beginMongoDBContainerRetrieveThroughputDistribution( + resourceGroupName, + accountName, + databaseName, + collectionName, + retrieveThroughputParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB container. + * @param options The options parameters. + */ + async beginMongoDBContainerRedistributeThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse + >, + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse + > + > { + 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, + accountName, + databaseName, + collectionName, + redistributeThroughputParameters, + options + }, + spec: mongoDBContainerRedistributeThroughputOperationSpec + }); + const poller = await createHttpPoller< + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse, + OperationState< + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB container. + * @param options The options parameters. + */ + async beginMongoDBContainerRedistributeThroughputAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams + ): Promise { + const poller = await this.beginMongoDBContainerRedistributeThroughput( + resourceGroupName, + accountName, + databaseName, + collectionName, + redistributeThroughputParameters, + options + ); + return poller.pollUntilDone(); + } + /** * Lists the MongoDB collection under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -1186,6 +1667,123 @@ export class MongoDBResourcesImpl implements MongoDBResources { return poller.pollUntilDone(); } + /** + * Merges the partitions of a MongoDB Collection + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param mergeParameters The parameters for the merge operation. + * @param options The options parameters. + */ + async beginListMongoDBCollectionPartitionMerge( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + mergeParameters: MergeParameters, + options?: MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse + >, + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse + > + > { + 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, + accountName, + databaseName, + collectionName, + mergeParameters, + options + }, + spec: listMongoDBCollectionPartitionMergeOperationSpec + }); + const poller = await createHttpPoller< + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse, + OperationState< + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Merges the partitions of a MongoDB Collection + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param mergeParameters The parameters for the merge operation. + * @param options The options parameters. + */ + async beginListMongoDBCollectionPartitionMergeAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + mergeParameters: MergeParameters, + options?: MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams + ): Promise { + const poller = await this.beginListMongoDBCollectionPartitionMerge( + resourceGroupName, + accountName, + databaseName, + collectionName, + mergeParameters, + options + ); + return poller.pollUntilDone(); + } + /** * Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account * with the provided name. @@ -2342,6 +2940,144 @@ const migrateMongoDBDatabaseToManualThroughputOperationSpec: coreClient.Operatio headerParameters: [Parameters.accept], serializer }; +const mongoDBDatabaseRetrieveThroughputDistributionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/retrieveThroughputDistribution", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.retrieveThroughputParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const mongoDBDatabaseRedistributeThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/throughputSettings/default/redistributeThroughput", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.redistributeThroughputParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const mongoDBContainerRetrieveThroughputDistributionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/retrieveThroughputDistribution", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.retrieveThroughputParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName, + Parameters.collectionName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const mongoDBContainerRedistributeThroughputOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default/redistributeThroughput", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.redistributeThroughputParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName, + Parameters.collectionName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; const listMongoDBCollectionsOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections", @@ -2444,6 +3180,41 @@ const deleteMongoDBCollectionOperationSpec: coreClient.OperationSpec = { ], serializer }; +const listMongoDBCollectionPartitionMergeOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/partitionMerge", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.mergeParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName, + Parameters.collectionName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; const getMongoDBCollectionThroughputOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/mongodbDatabases/{databaseName}/collections/{collectionName}/throughputSettings/default", diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/privateEndpointConnections.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/privateEndpointConnections.ts index f50ade0f71dcf..31cf6e2983a56 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operations/privateEndpointConnections.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/privateEndpointConnections.ts @@ -411,7 +411,7 @@ const createOrUpdateOperationSpec: coreClient.OperationSpec = { bodyMapper: Mappers.ErrorResponse } }, - requestBody: Parameters.parameters, + requestBody: Parameters.parameters4, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operations/sqlResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operations/sqlResources.ts index 30318a49cd397..0f173aeed7e8b 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operations/sqlResources.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operations/sqlResources.ts @@ -22,12 +22,12 @@ import { SqlDatabaseGetResults, SqlResourcesListSqlDatabasesOptionalParams, SqlResourcesListSqlDatabasesResponse, - SqlContainerGetResults, - SqlResourcesListSqlContainersOptionalParams, - SqlResourcesListSqlContainersResponse, ClientEncryptionKeyGetResults, SqlResourcesListClientEncryptionKeysOptionalParams, SqlResourcesListClientEncryptionKeysResponse, + SqlContainerGetResults, + SqlResourcesListSqlContainersOptionalParams, + SqlResourcesListSqlContainersResponse, SqlStoredProcedureGetResults, SqlResourcesListSqlStoredProceduresOptionalParams, SqlResourcesListSqlStoredProceduresResponse, @@ -59,6 +59,11 @@ import { SqlResourcesMigrateSqlDatabaseToAutoscaleResponse, SqlResourcesMigrateSqlDatabaseToManualThroughputOptionalParams, SqlResourcesMigrateSqlDatabaseToManualThroughputResponse, + SqlResourcesGetClientEncryptionKeyOptionalParams, + SqlResourcesGetClientEncryptionKeyResponse, + ClientEncryptionKeyCreateUpdateParameters, + SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams, + SqlResourcesCreateUpdateClientEncryptionKeyResponse, SqlResourcesGetSqlContainerOptionalParams, SqlResourcesGetSqlContainerResponse, SqlContainerCreateUpdateParameters, @@ -66,6 +71,9 @@ import { SqlResourcesCreateUpdateSqlContainerResponse, SqlResourcesDeleteSqlContainerOptionalParams, SqlResourcesDeleteSqlContainerResponse, + MergeParameters, + SqlResourcesListSqlContainerPartitionMergeOptionalParams, + SqlResourcesListSqlContainerPartitionMergeResponse, SqlResourcesGetSqlContainerThroughputOptionalParams, SqlResourcesGetSqlContainerThroughputResponse, SqlResourcesUpdateSqlContainerThroughputOptionalParams, @@ -74,11 +82,16 @@ import { SqlResourcesMigrateSqlContainerToAutoscaleResponse, SqlResourcesMigrateSqlContainerToManualThroughputOptionalParams, SqlResourcesMigrateSqlContainerToManualThroughputResponse, - SqlResourcesGetClientEncryptionKeyOptionalParams, - SqlResourcesGetClientEncryptionKeyResponse, - ClientEncryptionKeyCreateUpdateParameters, - SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams, - SqlResourcesCreateUpdateClientEncryptionKeyResponse, + RetrieveThroughputParameters, + SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams, + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse, + RedistributeThroughputParameters, + SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams, + SqlResourcesSqlDatabaseRedistributeThroughputResponse, + SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams, + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse, + SqlResourcesSqlContainerRedistributeThroughputOptionalParams, + SqlResourcesSqlContainerRedistributeThroughputResponse, SqlResourcesGetSqlStoredProcedureOptionalParams, SqlResourcesGetSqlStoredProcedureResponse, SqlStoredProcedureCreateUpdateParameters, @@ -197,19 +210,19 @@ export class SqlResourcesImpl implements SqlResources { } /** - * Lists the SQL container under an existing Azure Cosmos DB database account. + * Lists the ClientEncryptionKeys under an existing Azure Cosmos DB SQL database. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. * @param options The options parameters. */ - public listSqlContainers( + public listClientEncryptionKeys( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListSqlContainersOptionalParams - ): PagedAsyncIterableIterator { - const iter = this.listSqlContainersPagingAll( + options?: SqlResourcesListClientEncryptionKeysOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listClientEncryptionKeysPagingAll( resourceGroupName, accountName, databaseName, @@ -226,7 +239,7 @@ export class SqlResourcesImpl implements SqlResources { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listSqlContainersPagingPage( + return this.listClientEncryptionKeysPagingPage( resourceGroupName, accountName, databaseName, @@ -237,15 +250,15 @@ export class SqlResourcesImpl implements SqlResources { }; } - private async *listSqlContainersPagingPage( + private async *listClientEncryptionKeysPagingPage( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListSqlContainersOptionalParams, + options?: SqlResourcesListClientEncryptionKeysOptionalParams, _settings?: PageSettings - ): AsyncIterableIterator { - let result: SqlResourcesListSqlContainersResponse; - result = await this._listSqlContainers( + ): AsyncIterableIterator { + let result: SqlResourcesListClientEncryptionKeysResponse; + result = await this._listClientEncryptionKeys( resourceGroupName, accountName, databaseName, @@ -254,13 +267,13 @@ export class SqlResourcesImpl implements SqlResources { yield result.value || []; } - private async *listSqlContainersPagingAll( + private async *listClientEncryptionKeysPagingAll( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListSqlContainersOptionalParams - ): AsyncIterableIterator { - for await (const page of this.listSqlContainersPagingPage( + options?: SqlResourcesListClientEncryptionKeysOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listClientEncryptionKeysPagingPage( resourceGroupName, accountName, databaseName, @@ -271,19 +284,19 @@ export class SqlResourcesImpl implements SqlResources { } /** - * Lists the ClientEncryptionKeys under an existing Azure Cosmos DB SQL database. + * Lists the SQL container under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. * @param options The options parameters. */ - public listClientEncryptionKeys( + public listSqlContainers( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListClientEncryptionKeysOptionalParams - ): PagedAsyncIterableIterator { - const iter = this.listClientEncryptionKeysPagingAll( + options?: SqlResourcesListSqlContainersOptionalParams + ): PagedAsyncIterableIterator { + const iter = this.listSqlContainersPagingAll( resourceGroupName, accountName, databaseName, @@ -300,7 +313,7 @@ export class SqlResourcesImpl implements SqlResources { if (settings?.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } - return this.listClientEncryptionKeysPagingPage( + return this.listSqlContainersPagingPage( resourceGroupName, accountName, databaseName, @@ -311,15 +324,15 @@ export class SqlResourcesImpl implements SqlResources { }; } - private async *listClientEncryptionKeysPagingPage( + private async *listSqlContainersPagingPage( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListClientEncryptionKeysOptionalParams, + options?: SqlResourcesListSqlContainersOptionalParams, _settings?: PageSettings - ): AsyncIterableIterator { - let result: SqlResourcesListClientEncryptionKeysResponse; - result = await this._listClientEncryptionKeys( + ): AsyncIterableIterator { + let result: SqlResourcesListSqlContainersResponse; + result = await this._listSqlContainers( resourceGroupName, accountName, databaseName, @@ -328,13 +341,13 @@ export class SqlResourcesImpl implements SqlResources { yield result.value || []; } - private async *listClientEncryptionKeysPagingAll( + private async *listSqlContainersPagingAll( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListClientEncryptionKeysOptionalParams - ): AsyncIterableIterator { - for await (const page of this.listClientEncryptionKeysPagingPage( + options?: SqlResourcesListSqlContainersOptionalParams + ): AsyncIterableIterator { + for await (const page of this.listSqlContainersPagingPage( resourceGroupName, accountName, databaseName, @@ -1277,6 +1290,168 @@ export class SqlResourcesImpl implements SqlResources { return poller.pollUntilDone(); } + /** + * Lists the ClientEncryptionKeys under an existing Azure Cosmos DB SQL database. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param options The options parameters. + */ + private _listClientEncryptionKeys( + resourceGroupName: string, + accountName: string, + databaseName: string, + options?: SqlResourcesListClientEncryptionKeysOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, databaseName, options }, + listClientEncryptionKeysOperationSpec + ); + } + + /** + * Gets the ClientEncryptionKey under an existing Azure Cosmos DB SQL database. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param options The options parameters. + */ + getClientEncryptionKey( + resourceGroupName: string, + accountName: string, + databaseName: string, + clientEncryptionKeyName: string, + options?: SqlResourcesGetClientEncryptionKeyOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + accountName, + databaseName, + clientEncryptionKeyName, + options + }, + getClientEncryptionKeyOperationSpec + ); + } + + /** + * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure + * Powershell (instead of directly). + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption + * key. + * @param options The options parameters. + */ + async beginCreateUpdateClientEncryptionKey( + resourceGroupName: string, + accountName: string, + databaseName: string, + clientEncryptionKeyName: string, + createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, + options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + SqlResourcesCreateUpdateClientEncryptionKeyResponse + > + > { + 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, + accountName, + databaseName, + clientEncryptionKeyName, + createUpdateClientEncryptionKeyParameters, + options + }, + spec: createUpdateClientEncryptionKeyOperationSpec + }); + const poller = await createHttpPoller< + SqlResourcesCreateUpdateClientEncryptionKeyResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs + }); + await poller.poll(); + return poller; + } + + /** + * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure + * Powershell (instead of directly). + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption + * key. + * @param options The options parameters. + */ + async beginCreateUpdateClientEncryptionKeyAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + clientEncryptionKeyName: string, + createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, + options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams + ): Promise { + const poller = await this.beginCreateUpdateClientEncryptionKey( + resourceGroupName, + accountName, + databaseName, + clientEncryptionKeyName, + createUpdateClientEncryptionKeyParameters, + options + ); + return poller.pollUntilDone(); + } + /** * Lists the SQL container under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -1536,34 +1711,147 @@ export class SqlResourcesImpl implements SqlResources { } /** - * Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account. + * Merges the partitions of a SQL Container * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. * @param containerName Cosmos DB container name. + * @param mergeParameters The parameters for the merge operation. * @param options The options parameters. */ - getSqlContainerThroughput( + async beginListSqlContainerPartitionMerge( resourceGroupName: string, accountName: string, databaseName: string, containerName: string, - options?: SqlResourcesGetSqlContainerThroughputOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, accountName, databaseName, containerName, options }, - getSqlContainerThroughputOperationSpec - ); - } - - /** - * Update RUs per second of an Azure Cosmos DB SQL container - * @param resourceGroupName The name of the resource group. The name is case insensitive. - * @param accountName Cosmos DB database account name. - * @param databaseName Cosmos DB database name. - * @param containerName Cosmos DB container name. - * @param updateThroughputParameters The parameters to provide for the RUs per second of the current - * SQL container. + mergeParameters: MergeParameters, + options?: SqlResourcesListSqlContainerPartitionMergeOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + SqlResourcesListSqlContainerPartitionMergeResponse + > + > { + 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, + accountName, + databaseName, + containerName, + mergeParameters, + options + }, + spec: listSqlContainerPartitionMergeOperationSpec + }); + const poller = await createHttpPoller< + SqlResourcesListSqlContainerPartitionMergeResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Merges the partitions of a SQL Container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param mergeParameters The parameters for the merge operation. + * @param options The options parameters. + */ + async beginListSqlContainerPartitionMergeAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + mergeParameters: MergeParameters, + options?: SqlResourcesListSqlContainerPartitionMergeOptionalParams + ): Promise { + const poller = await this.beginListSqlContainerPartitionMerge( + resourceGroupName, + accountName, + databaseName, + containerName, + mergeParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param options The options parameters. + */ + getSqlContainerThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + options?: SqlResourcesGetSqlContainerThroughputOptionalParams + ): Promise { + return this.client.sendOperationRequest( + { resourceGroupName, accountName, databaseName, containerName, options }, + getSqlContainerThroughputOperationSpec + ); + } + + /** + * Update RUs per second of an Azure Cosmos DB SQL container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param updateThroughputParameters The parameters to provide for the RUs per second of the current + * SQL container. * @param options The options parameters. */ async beginUpdateSqlContainerThroughput( @@ -1883,79 +2171,373 @@ export class SqlResourcesImpl implements SqlResources { } /** - * Lists the ClientEncryptionKeys under an existing Azure Cosmos DB SQL database. + * Retrieve throughput distribution for an Azure Cosmos DB SQL database * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL database. * @param options The options parameters. */ - private _listClientEncryptionKeys( + async beginSqlDatabaseRetrieveThroughputDistribution( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListClientEncryptionKeysOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { resourceGroupName, accountName, databaseName, options }, - listClientEncryptionKeysOperationSpec + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse + >, + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse + > + > { + 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, + accountName, + databaseName, + retrieveThroughputParameters, + options + }, + spec: sqlDatabaseRetrieveThroughputDistributionOperationSpec + }); + const poller = await createHttpPoller< + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse, + OperationState< + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Retrieve throughput distribution for an Azure Cosmos DB SQL database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL database. + * @param options The options parameters. + */ + async beginSqlDatabaseRetrieveThroughputDistributionAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise { + const poller = await this.beginSqlDatabaseRetrieveThroughputDistribution( + resourceGroupName, + accountName, + databaseName, + retrieveThroughputParameters, + options + ); + return poller.pollUntilDone(); + } + + /** + * Redistribute throughput for an Azure Cosmos DB SQL database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL database. + * @param options The options parameters. + */ + async beginSqlDatabaseRedistributeThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + SqlResourcesSqlDatabaseRedistributeThroughputResponse + > + > { + 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, + accountName, + databaseName, + redistributeThroughputParameters, + options + }, + spec: sqlDatabaseRedistributeThroughputOperationSpec + }); + const poller = await createHttpPoller< + SqlResourcesSqlDatabaseRedistributeThroughputResponse, + OperationState + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; + } + + /** + * Redistribute throughput for an Azure Cosmos DB SQL database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL database. + * @param options The options parameters. + */ + async beginSqlDatabaseRedistributeThroughputAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams + ): Promise { + const poller = await this.beginSqlDatabaseRedistributeThroughput( + resourceGroupName, + accountName, + databaseName, + redistributeThroughputParameters, + options ); + return poller.pollUntilDone(); + } + + /** + * Retrieve throughput distribution for an Azure Cosmos DB SQL container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL container. + * @param options The options parameters. + */ + async beginSqlContainerRetrieveThroughputDistribution( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse + >, + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse + > + > { + 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, + accountName, + databaseName, + containerName, + retrieveThroughputParameters, + options + }, + spec: sqlContainerRetrieveThroughputDistributionOperationSpec + }); + const poller = await createHttpPoller< + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse, + OperationState< + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse + > + >(lro, { + restoreFrom: options?.resumeFrom, + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" + }); + await poller.poll(); + return poller; } /** - * Gets the ClientEncryptionKey under an existing Azure Cosmos DB SQL database. + * Retrieve throughput distribution for an Azure Cosmos DB SQL container * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. - * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param containerName Cosmos DB container name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL container. * @param options The options parameters. */ - getClientEncryptionKey( + async beginSqlContainerRetrieveThroughputDistributionAndWait( resourceGroupName: string, accountName: string, databaseName: string, - clientEncryptionKeyName: string, - options?: SqlResourcesGetClientEncryptionKeyOptionalParams - ): Promise { - return this.client.sendOperationRequest( - { - resourceGroupName, - accountName, - databaseName, - clientEncryptionKeyName, - options - }, - getClientEncryptionKeyOperationSpec + containerName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams + ): Promise { + const poller = await this.beginSqlContainerRetrieveThroughputDistribution( + resourceGroupName, + accountName, + databaseName, + containerName, + retrieveThroughputParameters, + options ); + return poller.pollUntilDone(); } /** - * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure - * Powershell (instead of directly). + * Redistribute throughput for an Azure Cosmos DB SQL container * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. - * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. - * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption - * key. + * @param containerName Cosmos DB container name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL container. * @param options The options parameters. */ - async beginCreateUpdateClientEncryptionKey( + async beginSqlContainerRedistributeThroughput( resourceGroupName: string, accountName: string, databaseName: string, - clientEncryptionKeyName: string, - createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, - options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams + containerName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlContainerRedistributeThroughputOptionalParams ): Promise< SimplePollerLike< - OperationState, - SqlResourcesCreateUpdateClientEncryptionKeyResponse + OperationState, + SqlResourcesSqlContainerRedistributeThroughputResponse > > { const directSendOperation = async ( args: coreClient.OperationArguments, spec: coreClient.OperationSpec - ): Promise => { + ): Promise => { return this.client.sendOperationRequest(args, spec); }; const sendOperationFn = async ( @@ -1997,48 +2579,48 @@ export class SqlResourcesImpl implements SqlResources { resourceGroupName, accountName, databaseName, - clientEncryptionKeyName, - createUpdateClientEncryptionKeyParameters, + containerName, + redistributeThroughputParameters, options }, - spec: createUpdateClientEncryptionKeyOperationSpec + spec: sqlContainerRedistributeThroughputOperationSpec }); const poller = await createHttpPoller< - SqlResourcesCreateUpdateClientEncryptionKeyResponse, - OperationState + SqlResourcesSqlContainerRedistributeThroughputResponse, + OperationState >(lro, { restoreFrom: options?.resumeFrom, - intervalInMs: options?.updateIntervalInMs + intervalInMs: options?.updateIntervalInMs, + resourceLocationConfig: "location" }); await poller.poll(); return poller; } /** - * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure - * Powershell (instead of directly). + * Redistribute throughput for an Azure Cosmos DB SQL container * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. - * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. - * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption - * key. + * @param containerName Cosmos DB container name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL container. * @param options The options parameters. */ - async beginCreateUpdateClientEncryptionKeyAndWait( + async beginSqlContainerRedistributeThroughputAndWait( resourceGroupName: string, accountName: string, databaseName: string, - clientEncryptionKeyName: string, - createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, - options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams - ): Promise { - const poller = await this.beginCreateUpdateClientEncryptionKey( + containerName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlContainerRedistributeThroughputOptionalParams + ): Promise { + const poller = await this.beginSqlContainerRedistributeThroughput( resourceGroupName, accountName, databaseName, - clientEncryptionKeyName, - createUpdateClientEncryptionKeyParameters, + containerName, + redistributeThroughputParameters, options ); return poller.pollUntilDone(); @@ -3682,6 +4264,79 @@ const migrateSqlDatabaseToManualThroughputOperationSpec: coreClient.OperationSpe headerParameters: [Parameters.accept], serializer }; +const listClientEncryptionKeysOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/clientEncryptionKeys", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ClientEncryptionKeysListResult + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName + ], + headerParameters: [Parameters.accept], + serializer +}; +const getClientEncryptionKeyOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/clientEncryptionKeys/{clientEncryptionKeyName}", + httpMethod: "GET", + responses: { + 200: { + bodyMapper: Mappers.ClientEncryptionKeyGetResults + } + }, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName, + Parameters.clientEncryptionKeyName + ], + headerParameters: [Parameters.accept], + serializer +}; +const createUpdateClientEncryptionKeyOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/clientEncryptionKeys/{clientEncryptionKeyName}", + httpMethod: "PUT", + responses: { + 200: { + bodyMapper: Mappers.ClientEncryptionKeyGetResults + }, + 201: { + bodyMapper: Mappers.ClientEncryptionKeyGetResults + }, + 202: { + bodyMapper: Mappers.ClientEncryptionKeyGetResults + }, + 204: { + bodyMapper: Mappers.ClientEncryptionKeyGetResults + } + }, + requestBody: Parameters.createUpdateClientEncryptionKeyParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName, + Parameters.clientEncryptionKeyName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; const listSqlContainersOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers", @@ -3784,6 +4439,41 @@ const deleteSqlContainerOperationSpec: coreClient.OperationSpec = { ], serializer }; +const listSqlContainerPartitionMergeOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/partitionMerge", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionStorageInfoCollection + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.mergeParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName, + Parameters.containerName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; const getSqlContainerThroughputOperationSpec: coreClient.OperationSpec = { path: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default", @@ -3903,15 +4593,28 @@ const migrateSqlContainerToManualThroughputOperationSpec: coreClient.OperationSp headerParameters: [Parameters.accept], serializer }; -const listClientEncryptionKeysOperationSpec: coreClient.OperationSpec = { +const sqlDatabaseRetrieveThroughputDistributionOperationSpec: coreClient.OperationSpec = { path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/clientEncryptionKeys", - httpMethod: "GET", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/retrieveThroughputDistribution", + httpMethod: "POST", responses: { 200: { - bodyMapper: Mappers.ClientEncryptionKeysListResult + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError } }, + requestBody: Parameters.retrieveThroughputParameters, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -3920,18 +4623,66 @@ const listClientEncryptionKeysOperationSpec: coreClient.OperationSpec = { Parameters.accountName, Parameters.databaseName ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer }; -const getClientEncryptionKeyOperationSpec: coreClient.OperationSpec = { +const sqlDatabaseRedistributeThroughputOperationSpec: coreClient.OperationSpec = { path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/clientEncryptionKeys/{clientEncryptionKeyName}", - httpMethod: "GET", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/throughputSettings/default/redistributeThroughput", + httpMethod: "POST", responses: { 200: { - bodyMapper: Mappers.ClientEncryptionKeyGetResults + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + requestBody: Parameters.redistributeThroughputParameters, + queryParameters: [Parameters.apiVersion], + urlParameters: [ + Parameters.$host, + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.accountName, + Parameters.databaseName + ], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", + serializer +}; +const sqlContainerRetrieveThroughputDistributionOperationSpec: coreClient.OperationSpec = { + path: + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/retrieveThroughputDistribution", + httpMethod: "POST", + responses: { + 200: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 201: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 202: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + 204: { + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError } }, + requestBody: Parameters.retrieveThroughputParameters, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -3939,30 +4690,34 @@ const getClientEncryptionKeyOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.accountName, Parameters.databaseName, - Parameters.clientEncryptionKeyName + Parameters.containerName ], - headerParameters: [Parameters.accept], + headerParameters: [Parameters.accept, Parameters.contentType], + mediaType: "json", serializer }; -const createUpdateClientEncryptionKeyOperationSpec: coreClient.OperationSpec = { +const sqlContainerRedistributeThroughputOperationSpec: coreClient.OperationSpec = { path: - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/clientEncryptionKeys/{clientEncryptionKeyName}", - httpMethod: "PUT", + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DocumentDB/databaseAccounts/{accountName}/sqlDatabases/{databaseName}/containers/{containerName}/throughputSettings/default/redistributeThroughput", + httpMethod: "POST", responses: { 200: { - bodyMapper: Mappers.ClientEncryptionKeyGetResults + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult }, 201: { - bodyMapper: Mappers.ClientEncryptionKeyGetResults + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult }, 202: { - bodyMapper: Mappers.ClientEncryptionKeyGetResults + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult }, 204: { - bodyMapper: Mappers.ClientEncryptionKeyGetResults + bodyMapper: Mappers.PhysicalPartitionThroughputInfoResult + }, + default: { + bodyMapper: Mappers.CloudError } }, - requestBody: Parameters.createUpdateClientEncryptionKeyParameters, + requestBody: Parameters.redistributeThroughputParameters, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.$host, @@ -3970,7 +4725,7 @@ const createUpdateClientEncryptionKeyOperationSpec: coreClient.OperationSpec = { Parameters.resourceGroupName, Parameters.accountName, Parameters.databaseName, - Parameters.clientEncryptionKeyName + Parameters.containerName ], headerParameters: [Parameters.accept, Parameters.contentType], mediaType: "json", diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraClusters.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraClusters.ts index a986f122c8ddc..50b10290ff84a 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraClusters.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraClusters.ts @@ -12,6 +12,8 @@ import { ClusterResource, CassandraClustersListBySubscriptionOptionalParams, CassandraClustersListByResourceGroupOptionalParams, + BackupResource, + CassandraClustersListBackupsOptionalParams, CassandraClustersGetOptionalParams, CassandraClustersGetResponse, CassandraClustersDeleteOptionalParams, @@ -22,6 +24,8 @@ import { CommandPostBody, CassandraClustersInvokeCommandOptionalParams, CassandraClustersInvokeCommandResponse, + CassandraClustersGetBackupOptionalParams, + CassandraClustersGetBackupResponse, CassandraClustersDeallocateOptionalParams, CassandraClustersStartOptionalParams, CassandraClustersStatusOptionalParams, @@ -47,6 +51,17 @@ export interface CassandraClusters { resourceGroupName: string, options?: CassandraClustersListByResourceGroupOptionalParams ): PagedAsyncIterableIterator; + /** + * List the backups of this cluster that are available to restore. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName Managed Cassandra cluster name. + * @param options The options parameters. + */ + listBackups( + resourceGroupName: string, + clusterName: string, + options?: CassandraClustersListBackupsOptionalParams + ): PagedAsyncIterableIterator; /** * Get the properties of a managed Cassandra cluster. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -175,6 +190,19 @@ export interface CassandraClusters { body: CommandPostBody, options?: CassandraClustersInvokeCommandOptionalParams ): Promise; + /** + * Get the properties of an individual backup of this cluster that is available to restore. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param clusterName Managed Cassandra cluster name. + * @param backupId Id of a restorable backup of a Cassandra cluster. + * @param options The options parameters. + */ + getBackup( + resourceGroupName: string, + clusterName: string, + backupId: string, + options?: CassandraClustersGetBackupOptionalParams + ): Promise; /** * Deallocate the Managed Cassandra Cluster and Associated Data Centers. Deallocation will deallocate * the host virtual machine of this cluster, and reserved the data disk. This won't do anything on an diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraResources.ts index 887d47ff925f8..90e49ef1dd33b 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraResources.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/cassandraResources.ts @@ -13,6 +13,8 @@ import { CassandraResourcesListCassandraKeyspacesOptionalParams, CassandraTableGetResults, CassandraResourcesListCassandraTablesOptionalParams, + CassandraViewGetResults, + CassandraResourcesListCassandraViewsOptionalParams, CassandraResourcesGetCassandraKeyspaceOptionalParams, CassandraResourcesGetCassandraKeyspaceResponse, CassandraKeyspaceCreateUpdateParameters, @@ -43,7 +45,21 @@ import { CassandraResourcesMigrateCassandraTableToAutoscaleOptionalParams, CassandraResourcesMigrateCassandraTableToAutoscaleResponse, CassandraResourcesMigrateCassandraTableToManualThroughputOptionalParams, - CassandraResourcesMigrateCassandraTableToManualThroughputResponse + CassandraResourcesMigrateCassandraTableToManualThroughputResponse, + CassandraResourcesGetCassandraViewOptionalParams, + CassandraResourcesGetCassandraViewResponse, + CassandraViewCreateUpdateParameters, + CassandraResourcesCreateUpdateCassandraViewOptionalParams, + CassandraResourcesCreateUpdateCassandraViewResponse, + CassandraResourcesDeleteCassandraViewOptionalParams, + CassandraResourcesGetCassandraViewThroughputOptionalParams, + CassandraResourcesGetCassandraViewThroughputResponse, + CassandraResourcesUpdateCassandraViewThroughputOptionalParams, + CassandraResourcesUpdateCassandraViewThroughputResponse, + CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams, + CassandraResourcesMigrateCassandraViewToAutoscaleResponse, + CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams, + CassandraResourcesMigrateCassandraViewToManualThroughputResponse } from "../models"; /// @@ -73,6 +89,19 @@ export interface CassandraResources { keyspaceName: string, options?: CassandraResourcesListCassandraTablesOptionalParams ): PagedAsyncIterableIterator; + /** + * Lists the Cassandra materialized views under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param options The options parameters. + */ + listCassandraViews( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + options?: CassandraResourcesListCassandraViewsOptionalParams + ): PagedAsyncIterableIterator; /** * Gets the Cassandra keyspaces under an existing Azure Cosmos DB database account with the provided * name. @@ -498,4 +527,217 @@ export interface CassandraResources { tableName: string, options?: CassandraResourcesMigrateCassandraTableToManualThroughputOptionalParams ): Promise; + /** + * Gets the Cassandra view under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + getCassandraView( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesGetCassandraViewOptionalParams + ): Promise; + /** + * Create or update an Azure Cosmos DB Cassandra View + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param createUpdateCassandraViewParameters The parameters to provide for the current Cassandra View. + * @param options The options parameters. + */ + beginCreateUpdateCassandraView( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + createUpdateCassandraViewParameters: CassandraViewCreateUpdateParameters, + options?: CassandraResourcesCreateUpdateCassandraViewOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CassandraResourcesCreateUpdateCassandraViewResponse + > + >; + /** + * Create or update an Azure Cosmos DB Cassandra View + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param createUpdateCassandraViewParameters The parameters to provide for the current Cassandra View. + * @param options The options parameters. + */ + beginCreateUpdateCassandraViewAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + createUpdateCassandraViewParameters: CassandraViewCreateUpdateParameters, + options?: CassandraResourcesCreateUpdateCassandraViewOptionalParams + ): Promise; + /** + * Deletes an existing Azure Cosmos DB Cassandra view. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + beginDeleteCassandraView( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesDeleteCassandraViewOptionalParams + ): Promise, void>>; + /** + * Deletes an existing Azure Cosmos DB Cassandra view. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + beginDeleteCassandraViewAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesDeleteCassandraViewOptionalParams + ): Promise; + /** + * Gets the RUs per second of the Cassandra view under an existing Azure Cosmos DB database account + * with the provided name. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + getCassandraViewThroughput( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesGetCassandraViewThroughputOptionalParams + ): Promise; + /** + * Update RUs per second of an Azure Cosmos DB Cassandra view + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param updateThroughputParameters The RUs per second of the parameters to provide for the current + * Cassandra view. + * @param options The options parameters. + */ + beginUpdateCassandraViewThroughput( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + updateThroughputParameters: ThroughputSettingsUpdateParameters, + options?: CassandraResourcesUpdateCassandraViewThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CassandraResourcesUpdateCassandraViewThroughputResponse + > + >; + /** + * Update RUs per second of an Azure Cosmos DB Cassandra view + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param updateThroughputParameters The RUs per second of the parameters to provide for the current + * Cassandra view. + * @param options The options parameters. + */ + beginUpdateCassandraViewThroughputAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + updateThroughputParameters: ThroughputSettingsUpdateParameters, + options?: CassandraResourcesUpdateCassandraViewThroughputOptionalParams + ): Promise; + /** + * Migrate an Azure Cosmos DB Cassandra view from manual throughput to autoscale + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + beginMigrateCassandraViewToAutoscale( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + CassandraResourcesMigrateCassandraViewToAutoscaleResponse + > + >; + /** + * Migrate an Azure Cosmos DB Cassandra view from manual throughput to autoscale + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + beginMigrateCassandraViewToAutoscaleAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToAutoscaleOptionalParams + ): Promise; + /** + * Migrate an Azure Cosmos DB Cassandra view from autoscale to manual throughput + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + beginMigrateCassandraViewToManualThroughput( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + CassandraResourcesMigrateCassandraViewToManualThroughputResponse + >, + CassandraResourcesMigrateCassandraViewToManualThroughputResponse + > + >; + /** + * Migrate an Azure Cosmos DB Cassandra view from autoscale to manual throughput + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param keyspaceName Cosmos DB keyspace name. + * @param viewName Cosmos DB view name. + * @param options The options parameters. + */ + beginMigrateCassandraViewToManualThroughputAndWait( + resourceGroupName: string, + accountName: string, + keyspaceName: string, + viewName: string, + options?: CassandraResourcesMigrateCassandraViewToManualThroughputOptionalParams + ): Promise; } diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/dataTransferJobs.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/dataTransferJobs.ts new file mode 100644 index 0000000000000..ba391a27b49f9 --- /dev/null +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/dataTransferJobs.ts @@ -0,0 +1,107 @@ +/* + * 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 { + DataTransferJobGetResults, + DataTransferJobsListByDatabaseAccountOptionalParams, + CreateJobRequest, + DataTransferJobsCreateOptionalParams, + DataTransferJobsCreateResponse, + DataTransferJobsGetOptionalParams, + DataTransferJobsGetResponse, + DataTransferJobsPauseOptionalParams, + DataTransferJobsPauseResponse, + DataTransferJobsResumeOptionalParams, + DataTransferJobsResumeResponse, + DataTransferJobsCancelOptionalParams, + DataTransferJobsCancelResponse +} from "../models"; + +/// +/** Interface representing a DataTransferJobs. */ +export interface DataTransferJobs { + /** + * Get a list of Data Transfer jobs. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param options The options parameters. + */ + listByDatabaseAccount( + resourceGroupName: string, + accountName: string, + options?: DataTransferJobsListByDatabaseAccountOptionalParams + ): PagedAsyncIterableIterator; + /** + * Creates a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param jobCreateParameters Parameters to create Data Transfer Job + * @param options The options parameters. + */ + create( + resourceGroupName: string, + accountName: string, + jobName: string, + jobCreateParameters: CreateJobRequest, + options?: DataTransferJobsCreateOptionalParams + ): Promise; + /** + * Get a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + get( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsGetOptionalParams + ): Promise; + /** + * Pause a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + pause( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsPauseOptionalParams + ): Promise; + /** + * Resumes a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + resume( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsResumeOptionalParams + ): Promise; + /** + * Cancels a Data Transfer Job. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param jobName Name of the Data Transfer Job + * @param options The options parameters. + */ + cancel( + resourceGroupName: string, + accountName: string, + jobName: string, + options?: DataTransferJobsCancelOptionalParams + ): Promise; +} diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/graphResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/graphResources.ts new file mode 100644 index 0000000000000..b32ac0f5f5de1 --- /dev/null +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/graphResources.ts @@ -0,0 +1,110 @@ +/* + * 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 { + GraphResourceGetResults, + GraphResourcesListGraphsOptionalParams, + GraphResourcesGetGraphOptionalParams, + GraphResourcesGetGraphResponse, + GraphResourceCreateUpdateParameters, + GraphResourcesCreateUpdateGraphOptionalParams, + GraphResourcesCreateUpdateGraphResponse, + GraphResourcesDeleteGraphResourceOptionalParams +} from "../models"; + +/// +/** Interface representing a GraphResources. */ +export interface GraphResources { + /** + * Lists the graphs under an existing Azure Cosmos DB database account. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param options The options parameters. + */ + listGraphs( + resourceGroupName: string, + accountName: string, + options?: GraphResourcesListGraphsOptionalParams + ): PagedAsyncIterableIterator; + /** + * Gets the Graph resource under an existing Azure Cosmos DB database account with the provided name. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param options The options parameters. + */ + getGraph( + resourceGroupName: string, + accountName: string, + graphName: string, + options?: GraphResourcesGetGraphOptionalParams + ): Promise; + /** + * Create or update an Azure Cosmos DB Graph. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param createUpdateGraphParameters The parameters to provide for the current graph. + * @param options The options parameters. + */ + beginCreateUpdateGraph( + resourceGroupName: string, + accountName: string, + graphName: string, + createUpdateGraphParameters: GraphResourceCreateUpdateParameters, + options?: GraphResourcesCreateUpdateGraphOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + GraphResourcesCreateUpdateGraphResponse + > + >; + /** + * Create or update an Azure Cosmos DB Graph. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param createUpdateGraphParameters The parameters to provide for the current graph. + * @param options The options parameters. + */ + beginCreateUpdateGraphAndWait( + resourceGroupName: string, + accountName: string, + graphName: string, + createUpdateGraphParameters: GraphResourceCreateUpdateParameters, + options?: GraphResourcesCreateUpdateGraphOptionalParams + ): Promise; + /** + * Deletes an existing Azure Cosmos DB Graph Resource. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param options The options parameters. + */ + beginDeleteGraphResource( + resourceGroupName: string, + accountName: string, + graphName: string, + options?: GraphResourcesDeleteGraphResourceOptionalParams + ): Promise, void>>; + /** + * Deletes an existing Azure Cosmos DB Graph Resource. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param graphName Cosmos DB graph resource name. + * @param options The options parameters. + */ + beginDeleteGraphResourceAndWait( + resourceGroupName: string, + accountName: string, + graphName: string, + options?: GraphResourcesDeleteGraphResourceOptionalParams + ): Promise; +} diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/index.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/index.ts index 96531b8c1b96d..062f4d7ab604b 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/index.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/index.ts @@ -19,14 +19,17 @@ export * from "./collectionPartitionRegion"; export * from "./collectionPartition"; export * from "./partitionKeyRangeId"; export * from "./partitionKeyRangeIdRegion"; +export * from "./graphResources"; export * from "./sqlResources"; export * from "./mongoDBResources"; export * from "./tableResources"; export * from "./cassandraResources"; export * from "./gremlinResources"; export * from "./locations"; +export * from "./dataTransferJobs"; export * from "./cassandraClusters"; export * from "./cassandraDataCenters"; +export * from "./mongoClusters"; export * from "./notebookWorkspaces"; export * from "./privateEndpointConnections"; export * from "./privateLinkResources"; diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoClusters.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoClusters.ts new file mode 100644 index 0000000000000..dee5339452f91 --- /dev/null +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoClusters.ts @@ -0,0 +1,275 @@ +/* + * 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 { + MongoCluster, + MongoClustersListOptionalParams, + MongoClustersListByResourceGroupOptionalParams, + FirewallRule, + MongoClustersListFirewallRulesOptionalParams, + MongoClustersCreateOrUpdateOptionalParams, + MongoClustersCreateOrUpdateResponse, + MongoClustersGetOptionalParams, + MongoClustersGetResponse, + MongoClustersDeleteOptionalParams, + MongoClustersDeleteResponse, + MongoClusterUpdate, + MongoClustersUpdateOptionalParams, + MongoClustersUpdateResponse, + MongoClustersCreateOrUpdateFirewallRuleOptionalParams, + MongoClustersCreateOrUpdateFirewallRuleResponse, + MongoClustersDeleteFirewallRuleOptionalParams, + MongoClustersDeleteFirewallRuleResponse, + MongoClustersGetFirewallRuleOptionalParams, + MongoClustersGetFirewallRuleResponse, + CheckNameAvailabilityRequest, + MongoClustersCheckNameAvailabilityOptionalParams, + MongoClustersCheckNameAvailabilityResponse, + MongoClustersListConnectionStringsOptionalParams, + MongoClustersListConnectionStringsResponse +} from "../models"; + +/// +/** Interface representing a MongoClusters. */ +export interface MongoClusters { + /** + * List all the mongo clusters in a given subscription. + * @param options The options parameters. + */ + list( + options?: MongoClustersListOptionalParams + ): PagedAsyncIterableIterator; + /** + * List all the mongo clusters in a given resource group. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param options The options parameters. + */ + listByResourceGroup( + resourceGroupName: string, + options?: MongoClustersListByResourceGroupOptionalParams + ): PagedAsyncIterableIterator; + /** + * List all the firewall rules in a given mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + listFirewallRules( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersListFirewallRulesOptionalParams + ): PagedAsyncIterableIterator; + /** + * Create or update a mongo cluster. Update overwrites all properties for the resource. To only modify + * some of the properties, use PATCH. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The required parameters for creating or updating a mongo cluster. + * @param options The options parameters. + */ + beginCreateOrUpdate( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoCluster, + options?: MongoClustersCreateOrUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersCreateOrUpdateResponse + > + >; + /** + * Create or update a mongo cluster. Update overwrites all properties for the resource. To only modify + * some of the properties, use PATCH. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The required parameters for creating or updating a mongo cluster. + * @param options The options parameters. + */ + beginCreateOrUpdateAndWait( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoCluster, + options?: MongoClustersCreateOrUpdateOptionalParams + ): Promise; + /** + * Gets information about a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + get( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersGetOptionalParams + ): Promise; + /** + * Deletes a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + beginDelete( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersDeleteOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersDeleteResponse + > + >; + /** + * Deletes a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + beginDeleteAndWait( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersDeleteOptionalParams + ): Promise; + /** + * Updates an existing mongo cluster. The request body can contain one to many of the properties + * present in the normal mongo cluster definition. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The parameters for updating a mongo cluster. + * @param options The options parameters. + */ + beginUpdate( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoClusterUpdate, + options?: MongoClustersUpdateOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersUpdateResponse + > + >; + /** + * Updates an existing mongo cluster. The request body can contain one to many of the properties + * present in the normal mongo cluster definition. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param parameters The parameters for updating a mongo cluster. + * @param options The options parameters. + */ + beginUpdateAndWait( + resourceGroupName: string, + mongoClusterName: string, + parameters: MongoClusterUpdate, + options?: MongoClustersUpdateOptionalParams + ): Promise; + /** + * Creates a new firewall rule or updates an existing firewall rule on a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param parameters The required parameters for creating or updating a firewall rule. + * @param options The options parameters. + */ + beginCreateOrUpdateFirewallRule( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + parameters: FirewallRule, + options?: MongoClustersCreateOrUpdateFirewallRuleOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersCreateOrUpdateFirewallRuleResponse + > + >; + /** + * Creates a new firewall rule or updates an existing firewall rule on a mongo cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param parameters The required parameters for creating or updating a firewall rule. + * @param options The options parameters. + */ + beginCreateOrUpdateFirewallRuleAndWait( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + parameters: FirewallRule, + options?: MongoClustersCreateOrUpdateFirewallRuleOptionalParams + ): Promise; + /** + * Deletes a mongo cluster firewall rule. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param options The options parameters. + */ + beginDeleteFirewallRule( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + options?: MongoClustersDeleteFirewallRuleOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + MongoClustersDeleteFirewallRuleResponse + > + >; + /** + * Deletes a mongo cluster firewall rule. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param options The options parameters. + */ + beginDeleteFirewallRuleAndWait( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + options?: MongoClustersDeleteFirewallRuleOptionalParams + ): Promise; + /** + * Gets information about a mongo cluster firewall rule. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param firewallRuleName The name of the mongo cluster firewall rule. + * @param options The options parameters. + */ + getFirewallRule( + resourceGroupName: string, + mongoClusterName: string, + firewallRuleName: string, + options?: MongoClustersGetFirewallRuleOptionalParams + ): Promise; + /** + * Check the availability of name for resource + * @param location The name of the Azure region. + * @param parameters The required parameters for checking if resource name is available. + * @param options The options parameters. + */ + checkNameAvailability( + location: string, + parameters: CheckNameAvailabilityRequest, + options?: MongoClustersCheckNameAvailabilityOptionalParams + ): Promise; + /** + * List mongo cluster connection strings. This includes the default connection string using + * SCRAM-SHA-256, as well as other connection strings supported by the cluster. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param mongoClusterName The name of the mongo cluster. + * @param options The options parameters. + */ + listConnectionStrings( + resourceGroupName: string, + mongoClusterName: string, + options?: MongoClustersListConnectionStringsOptionalParams + ): Promise; +} diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoDBResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoDBResources.ts index c21d235c66138..c66caed17daff 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoDBResources.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/mongoDBResources.ts @@ -33,6 +33,16 @@ import { MongoDBResourcesMigrateMongoDBDatabaseToAutoscaleResponse, MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputOptionalParams, MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputResponse, + RetrieveThroughputParameters, + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams, + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse, + RedistributeThroughputParameters, + MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams, + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse, + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams, + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse, + MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams, + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse, MongoDBResourcesGetMongoDBCollectionOptionalParams, MongoDBResourcesGetMongoDBCollectionResponse, MongoDBCollectionCreateUpdateParameters, @@ -40,6 +50,9 @@ import { MongoDBResourcesCreateUpdateMongoDBCollectionResponse, MongoDBResourcesDeleteMongoDBCollectionOptionalParams, MongoDBResourcesDeleteMongoDBCollectionResponse, + MergeParameters, + MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams, + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse, MongoDBResourcesGetMongoDBCollectionThroughputOptionalParams, MongoDBResourcesGetMongoDBCollectionThroughputResponse, MongoDBResourcesUpdateMongoDBCollectionThroughputOptionalParams, @@ -311,6 +324,174 @@ export interface MongoDBResources { databaseName: string, options?: MongoDBResourcesMigrateMongoDBDatabaseToManualThroughputOptionalParams ): Promise; + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB database. + * @param options The options parameters. + */ + beginMongoDBDatabaseRetrieveThroughputDistribution( + resourceGroupName: string, + accountName: string, + databaseName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + >, + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + > + >; + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB database. + * @param options The options parameters. + */ + beginMongoDBDatabaseRetrieveThroughputDistributionAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise< + MongoDBResourcesMongoDBDatabaseRetrieveThroughputDistributionResponse + >; + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB database. + * @param options The options parameters. + */ + beginMongoDBDatabaseRedistributeThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse + >, + MongoDBResourcesMongoDBDatabaseRedistributeThroughputResponse + > + >; + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB database. + * @param options The options parameters. + */ + beginMongoDBDatabaseRedistributeThroughputAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBDatabaseRedistributeThroughputOptionalParams + ): Promise; + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB container. + * @param options The options parameters. + */ + beginMongoDBContainerRetrieveThroughputDistribution( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + >, + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + > + >; + /** + * Retrieve throughput distribution for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current MongoDB container. + * @param options The options parameters. + */ + beginMongoDBContainerRetrieveThroughputDistributionAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionOptionalParams + ): Promise< + MongoDBResourcesMongoDBContainerRetrieveThroughputDistributionResponse + >; + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB container. + * @param options The options parameters. + */ + beginMongoDBContainerRedistributeThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse + >, + MongoDBResourcesMongoDBContainerRedistributeThroughputResponse + > + >; + /** + * Redistribute throughput for an Azure Cosmos DB MongoDB container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current MongoDB container. + * @param options The options parameters. + */ + beginMongoDBContainerRedistributeThroughputAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: MongoDBResourcesMongoDBContainerRedistributeThroughputOptionalParams + ): Promise; /** * Gets the MongoDB collection under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -402,6 +583,47 @@ export interface MongoDBResources { collectionName: string, options?: MongoDBResourcesDeleteMongoDBCollectionOptionalParams ): Promise; + /** + * Merges the partitions of a MongoDB Collection + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param mergeParameters The parameters for the merge operation. + * @param options The options parameters. + */ + beginListMongoDBCollectionPartitionMerge( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + mergeParameters: MergeParameters, + options?: MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse + >, + MongoDBResourcesListMongoDBCollectionPartitionMergeResponse + > + >; + /** + * Merges the partitions of a MongoDB Collection + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param collectionName Cosmos DB collection name. + * @param mergeParameters The parameters for the merge operation. + * @param options The options parameters. + */ + beginListMongoDBCollectionPartitionMergeAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + collectionName: string, + mergeParameters: MergeParameters, + options?: MongoDBResourcesListMongoDBCollectionPartitionMergeOptionalParams + ): Promise; /** * Gets the RUs per second of the MongoDB collection under an existing Azure Cosmos DB database account * with the provided name. diff --git a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/sqlResources.ts b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/sqlResources.ts index df2919fe6ed6f..8fe2fe6c9c581 100644 --- a/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/sqlResources.ts +++ b/sdk/cosmosdb/arm-cosmosdb/src/operationsInterfaces/sqlResources.ts @@ -11,10 +11,10 @@ import { SimplePollerLike, OperationState } from "@azure/core-lro"; import { SqlDatabaseGetResults, SqlResourcesListSqlDatabasesOptionalParams, - SqlContainerGetResults, - SqlResourcesListSqlContainersOptionalParams, ClientEncryptionKeyGetResults, SqlResourcesListClientEncryptionKeysOptionalParams, + SqlContainerGetResults, + SqlResourcesListSqlContainersOptionalParams, SqlStoredProcedureGetResults, SqlResourcesListSqlStoredProceduresOptionalParams, SqlUserDefinedFunctionGetResults, @@ -41,6 +41,11 @@ import { SqlResourcesMigrateSqlDatabaseToAutoscaleResponse, SqlResourcesMigrateSqlDatabaseToManualThroughputOptionalParams, SqlResourcesMigrateSqlDatabaseToManualThroughputResponse, + SqlResourcesGetClientEncryptionKeyOptionalParams, + SqlResourcesGetClientEncryptionKeyResponse, + ClientEncryptionKeyCreateUpdateParameters, + SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams, + SqlResourcesCreateUpdateClientEncryptionKeyResponse, SqlResourcesGetSqlContainerOptionalParams, SqlResourcesGetSqlContainerResponse, SqlContainerCreateUpdateParameters, @@ -48,6 +53,9 @@ import { SqlResourcesCreateUpdateSqlContainerResponse, SqlResourcesDeleteSqlContainerOptionalParams, SqlResourcesDeleteSqlContainerResponse, + MergeParameters, + SqlResourcesListSqlContainerPartitionMergeOptionalParams, + SqlResourcesListSqlContainerPartitionMergeResponse, SqlResourcesGetSqlContainerThroughputOptionalParams, SqlResourcesGetSqlContainerThroughputResponse, SqlResourcesUpdateSqlContainerThroughputOptionalParams, @@ -56,11 +64,16 @@ import { SqlResourcesMigrateSqlContainerToAutoscaleResponse, SqlResourcesMigrateSqlContainerToManualThroughputOptionalParams, SqlResourcesMigrateSqlContainerToManualThroughputResponse, - SqlResourcesGetClientEncryptionKeyOptionalParams, - SqlResourcesGetClientEncryptionKeyResponse, - ClientEncryptionKeyCreateUpdateParameters, - SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams, - SqlResourcesCreateUpdateClientEncryptionKeyResponse, + RetrieveThroughputParameters, + SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams, + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse, + RedistributeThroughputParameters, + SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams, + SqlResourcesSqlDatabaseRedistributeThroughputResponse, + SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams, + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse, + SqlResourcesSqlContainerRedistributeThroughputOptionalParams, + SqlResourcesSqlContainerRedistributeThroughputResponse, SqlResourcesGetSqlStoredProcedureOptionalParams, SqlResourcesGetSqlStoredProcedureResponse, SqlStoredProcedureCreateUpdateParameters, @@ -114,31 +127,31 @@ export interface SqlResources { options?: SqlResourcesListSqlDatabasesOptionalParams ): PagedAsyncIterableIterator; /** - * Lists the SQL container under an existing Azure Cosmos DB database account. + * Lists the ClientEncryptionKeys under an existing Azure Cosmos DB SQL database. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. * @param options The options parameters. */ - listSqlContainers( + listClientEncryptionKeys( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListSqlContainersOptionalParams - ): PagedAsyncIterableIterator; + options?: SqlResourcesListClientEncryptionKeysOptionalParams + ): PagedAsyncIterableIterator; /** - * Lists the ClientEncryptionKeys under an existing Azure Cosmos DB SQL database. + * Lists the SQL container under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. * @param options The options parameters. */ - listClientEncryptionKeys( + listSqlContainers( resourceGroupName: string, accountName: string, databaseName: string, - options?: SqlResourcesListClientEncryptionKeysOptionalParams - ): PagedAsyncIterableIterator; + options?: SqlResourcesListSqlContainersOptionalParams + ): PagedAsyncIterableIterator; /** * Lists the SQL storedProcedure under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -398,6 +411,64 @@ export interface SqlResources { databaseName: string, options?: SqlResourcesMigrateSqlDatabaseToManualThroughputOptionalParams ): Promise; + /** + * Gets the ClientEncryptionKey under an existing Azure Cosmos DB SQL database. + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param options The options parameters. + */ + getClientEncryptionKey( + resourceGroupName: string, + accountName: string, + databaseName: string, + clientEncryptionKeyName: string, + options?: SqlResourcesGetClientEncryptionKeyOptionalParams + ): Promise; + /** + * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure + * Powershell (instead of directly). + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption + * key. + * @param options The options parameters. + */ + beginCreateUpdateClientEncryptionKey( + resourceGroupName: string, + accountName: string, + databaseName: string, + clientEncryptionKeyName: string, + createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, + options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + SqlResourcesCreateUpdateClientEncryptionKeyResponse + > + >; + /** + * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure + * Powershell (instead of directly). + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption + * key. + * @param options The options parameters. + */ + beginCreateUpdateClientEncryptionKeyAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + clientEncryptionKeyName: string, + createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, + options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams + ): Promise; /** * Gets the SQL container under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -487,6 +558,45 @@ export interface SqlResources { containerName: string, options?: SqlResourcesDeleteSqlContainerOptionalParams ): Promise; + /** + * Merges the partitions of a SQL Container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param mergeParameters The parameters for the merge operation. + * @param options The options parameters. + */ + beginListSqlContainerPartitionMerge( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + mergeParameters: MergeParameters, + options?: SqlResourcesListSqlContainerPartitionMergeOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + SqlResourcesListSqlContainerPartitionMergeResponse + > + >; + /** + * Merges the partitions of a SQL Container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param mergeParameters The parameters for the merge operation. + * @param options The options parameters. + */ + beginListSqlContainerPartitionMergeAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + mergeParameters: MergeParameters, + options?: SqlResourcesListSqlContainerPartitionMergeOptionalParams + ): Promise; /** * Gets the RUs per second of the SQL container under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. @@ -614,63 +724,165 @@ export interface SqlResources { options?: SqlResourcesMigrateSqlContainerToManualThroughputOptionalParams ): Promise; /** - * Gets the ClientEncryptionKey under an existing Azure Cosmos DB SQL database. + * Retrieve throughput distribution for an Azure Cosmos DB SQL database * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. - * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL database. * @param options The options parameters. */ - getClientEncryptionKey( + beginSqlDatabaseRetrieveThroughputDistribution( resourceGroupName: string, accountName: string, databaseName: string, - clientEncryptionKeyName: string, - options?: SqlResourcesGetClientEncryptionKeyOptionalParams - ): Promise; + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse + >, + SqlResourcesSqlDatabaseRetrieveThroughputDistributionResponse + > + >; /** - * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure - * Powershell (instead of directly). + * Retrieve throughput distribution for an Azure Cosmos DB SQL database * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. - * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. - * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption - * key. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL database. * @param options The options parameters. */ - beginCreateUpdateClientEncryptionKey( + beginSqlDatabaseRetrieveThroughputDistributionAndWait( resourceGroupName: string, accountName: string, databaseName: string, - clientEncryptionKeyName: string, - createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, - options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlDatabaseRetrieveThroughputDistributionOptionalParams + ): Promise; + /** + * Redistribute throughput for an Azure Cosmos DB SQL database + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL database. + * @param options The options parameters. + */ + beginSqlDatabaseRedistributeThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams ): Promise< SimplePollerLike< - OperationState, - SqlResourcesCreateUpdateClientEncryptionKeyResponse + OperationState, + SqlResourcesSqlDatabaseRedistributeThroughputResponse > >; /** - * Create or update a ClientEncryptionKey. This API is meant to be invoked via tools such as the Azure - * Powershell (instead of directly). + * Redistribute throughput for an Azure Cosmos DB SQL database * @param resourceGroupName The name of the resource group. The name is case insensitive. * @param accountName Cosmos DB database account name. * @param databaseName Cosmos DB database name. - * @param clientEncryptionKeyName Cosmos DB ClientEncryptionKey name. - * @param createUpdateClientEncryptionKeyParameters The parameters to provide for the client encryption - * key. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL database. * @param options The options parameters. */ - beginCreateUpdateClientEncryptionKeyAndWait( + beginSqlDatabaseRedistributeThroughputAndWait( resourceGroupName: string, accountName: string, databaseName: string, - clientEncryptionKeyName: string, - createUpdateClientEncryptionKeyParameters: ClientEncryptionKeyCreateUpdateParameters, - options?: SqlResourcesCreateUpdateClientEncryptionKeyOptionalParams - ): Promise; + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlDatabaseRedistributeThroughputOptionalParams + ): Promise; + /** + * Retrieve throughput distribution for an Azure Cosmos DB SQL container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL container. + * @param options The options parameters. + */ + beginSqlContainerRetrieveThroughputDistribution( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams + ): Promise< + SimplePollerLike< + OperationState< + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse + >, + SqlResourcesSqlContainerRetrieveThroughputDistributionResponse + > + >; + /** + * Retrieve throughput distribution for an Azure Cosmos DB SQL container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param retrieveThroughputParameters The parameters to provide for retrieving throughput distribution + * for the current SQL container. + * @param options The options parameters. + */ + beginSqlContainerRetrieveThroughputDistributionAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + retrieveThroughputParameters: RetrieveThroughputParameters, + options?: SqlResourcesSqlContainerRetrieveThroughputDistributionOptionalParams + ): Promise; + /** + * Redistribute throughput for an Azure Cosmos DB SQL container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL container. + * @param options The options parameters. + */ + beginSqlContainerRedistributeThroughput( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlContainerRedistributeThroughputOptionalParams + ): Promise< + SimplePollerLike< + OperationState, + SqlResourcesSqlContainerRedistributeThroughputResponse + > + >; + /** + * Redistribute throughput for an Azure Cosmos DB SQL container + * @param resourceGroupName The name of the resource group. The name is case insensitive. + * @param accountName Cosmos DB database account name. + * @param databaseName Cosmos DB database name. + * @param containerName Cosmos DB container name. + * @param redistributeThroughputParameters The parameters to provide for redistributing throughput for + * the current SQL container. + * @param options The options parameters. + */ + beginSqlContainerRedistributeThroughputAndWait( + resourceGroupName: string, + accountName: string, + databaseName: string, + containerName: string, + redistributeThroughputParameters: RedistributeThroughputParameters, + options?: SqlResourcesSqlContainerRedistributeThroughputOptionalParams + ): Promise; /** * Gets the SQL storedProcedure under an existing Azure Cosmos DB database account. * @param resourceGroupName The name of the resource group. The name is case insensitive. diff --git a/sdk/cosmosdb/arm-cosmosdb/test/sampleTest.ts b/sdk/cosmosdb/arm-cosmosdb/test/sampleTest.ts new file mode 100644 index 0000000000000..25aeb3ebcc367 --- /dev/null +++ b/sdk/cosmosdb/arm-cosmosdb/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/cosmosdb/arm-cosmosdb/tsconfig.json b/sdk/cosmosdb/arm-cosmosdb/tsconfig.json index bbcdce662fee5..3e6ae96443f33 100644 --- a/sdk/cosmosdb/arm-cosmosdb/tsconfig.json +++ b/sdk/cosmosdb/arm-cosmosdb/tsconfig.json @@ -15,17 +15,11 @@ ], "declaration": true, "outDir": "./dist-esm", - "importHelpers": true, - "paths": { - "@azure/arm-cosmosdb": [ - "./src/index" - ] - } + "importHelpers": true }, "include": [ "./src/**/*.ts", - "./test/**/*.ts", - "samples-dev/**/*.ts" + "./test/**/*.ts" ], "exclude": [ "node_modules"