diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml index 15056ba03675..d92f34848a7a 100644 --- a/common/config/rush/pnpm-lock.yaml +++ b/common/config/rush/pnpm-lock.yaml @@ -60,6 +60,7 @@ dependencies: '@rush-temp/perf-storage-file-datalake': file:projects/perf-storage-file-datalake.tgz '@rush-temp/perf-storage-file-share': file:projects/perf-storage-file-share.tgz '@rush-temp/purview-catalog': file:projects/purview-catalog.tgz + '@rush-temp/purview-scanning': file:projects/purview-scanning.tgz '@rush-temp/quantum-jobs': file:projects/quantum-jobs.tgz '@rush-temp/schema-registry': file:projects/schema-registry.tgz '@rush-temp/schema-registry-avro': file:projects/schema-registry-avro.tgz @@ -10244,6 +10245,49 @@ packages: integrity: sha512-yBPbajTzczwOowo3dWhgRF4ndHwCFqKbKLEgcCYCMrXuD+PyqP+P3s4kV6wnlr6Ii7gS+r+JNCLHnEEhw3hzHw== tarball: file:projects/purview-catalog.tgz version: 0.0.0 + file:projects/purview-scanning.tgz: + dependencies: + '@azure/core-rest-pipeline': 1.0.3 + '@azure/identity': 1.3.0 + '@microsoft/api-extractor': 7.13.2 + '@types/chai': 4.2.16 + '@types/mocha': 7.0.2 + '@types/node': 8.10.66 + chai: 4.3.4 + cross-env: 7.0.3 + dotenv: 8.2.0 + eslint: 7.23.0 + karma: 6.3.2 + karma-chrome-launcher: 3.1.0 + karma-coverage: 2.0.3 + karma-edge-launcher: 0.4.2_karma@6.3.2 + karma-env-preprocessor: 0.1.1 + karma-firefox-launcher: 1.3.0 + karma-ie-launcher: 1.0.0_karma@6.3.2 + karma-json-preprocessor: 0.3.3_karma@6.3.2 + karma-json-to-file-reporter: 1.0.1 + karma-junit-reporter: 2.0.1_karma@6.3.2 + karma-mocha: 2.0.1 + karma-mocha-reporter: 2.2.5_karma@6.3.2 + karma-source-map-support: 1.4.0 + karma-sourcemap-loader: 0.3.8 + mkdirp: 1.0.4 + mocha: 7.2.0 + mocha-junit-reporter: 1.23.3_mocha@7.2.0 + nyc: 14.1.1 + prettier: 2.2.1 + rimraf: 3.0.2 + rollup: 1.32.1 + source-map-support: 0.5.19 + tslib: 2.2.0 + typedoc: 0.15.2 + typescript: 4.2.4 + dev: false + name: '@rush-temp/purview-scanning' + resolution: + integrity: sha512-JEBy9NjgTRXYyfkInijwhFw2aFRYRmvUA+NNDzyZaaphUN0RPfnKoXv6PmuLofbyyxHNgieCRkDuXq2kMbPOKQ== + tarball: file:projects/purview-scanning.tgz + version: 0.0.0 file:projects/quantum-jobs.tgz: dependencies: '@azure/core-tracing': 1.0.0-preview.11 @@ -11343,6 +11387,7 @@ specifiers: '@rush-temp/perf-storage-file-datalake': file:./projects/perf-storage-file-datalake.tgz '@rush-temp/perf-storage-file-share': file:./projects/perf-storage-file-share.tgz '@rush-temp/purview-catalog': file:./projects/purview-catalog.tgz + '@rush-temp/purview-scanning': file:./projects/purview-scanning.tgz '@rush-temp/quantum-jobs': file:./projects/quantum-jobs.tgz '@rush-temp/schema-registry': file:./projects/schema-registry.tgz '@rush-temp/schema-registry-avro': file:./projects/schema-registry-avro.tgz diff --git a/dataplane.code-workspace b/dataplane.code-workspace index 9382b34b7d54..aea7b53fde95 100644 --- a/dataplane.code-workspace +++ b/dataplane.code-workspace @@ -236,6 +236,10 @@ "name": "dev tool", "path": "common/tools/dev-tool" }, + { + "name": "purview-scanning", + "path": "sdk/purview/purview-scanning-rest" + }, { "name": "perfstress", "path": "sdk/test-utils/perfstress" diff --git a/rush.json b/rush.json index 038495392e2c..39d0c87b517d 100644 --- a/rush.json +++ b/rush.json @@ -334,7 +334,11 @@ }, { "packageName": "@azure-rest/purview-catalog", - "projectFolder": "sdk/purview/purview-catalog-rest", + "projectFolder": "sdk/purview/purview-catalog-rest" + }, + { + "packageName": "@azure-rest/purview-scanning", + "projectFolder": "sdk/purview/purview-scanning-rest", "versionPolicyName": "client" }, { diff --git a/sdk/purview/ci.yml b/sdk/purview/ci.yml index b4360c7597f2..c0ad965a9300 100644 --- a/sdk/purview/ci.yml +++ b/sdk/purview/ci.yml @@ -30,3 +30,5 @@ extends: Artifacts: - name: azure-rest-purview-catalog safeName: azurerestpurviewcatalog + - name: azure-rest-purview-scanning + safeName: azurerestpurviewscanning diff --git a/sdk/purview/purview-catalog-rest/package.json b/sdk/purview/purview-catalog-rest/package.json index d3d1e074c6b0..a1af00dd06f6 100644 --- a/sdk/purview/purview-catalog-rest/package.json +++ b/sdk/purview/purview-catalog-rest/package.json @@ -33,10 +33,6 @@ }, "//metadata": { "constantPaths": [ - { - "path": "src/constants.ts", - "prefix": "SDK_VERSION" - }, { "path": "swagger/README.md", "prefix": "package-version" diff --git a/sdk/purview/purview-scanning-rest/.eslintrc.json b/sdk/purview/purview-scanning-rest/.eslintrc.json new file mode 100644 index 000000000000..066f6bd416f1 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/.eslintrc.json @@ -0,0 +1,7 @@ +{ + "plugins": ["@azure/azure-sdk"], + "extends": ["plugin:@azure/azure-sdk/azure-sdk-base"], + "rules": { + "@azure/azure-sdk/ts-modules-only-named": "warn" + } +} diff --git a/sdk/purview/purview-scanning-rest/CHANGELOG.md b/sdk/purview/purview-scanning-rest/CHANGELOG.md new file mode 100644 index 000000000000..3743526dc977 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/CHANGELOG.md @@ -0,0 +1,5 @@ +# Release History + +## 1.0.0-beta.1 (Unreleased) + +- First release of package, see README.md for details. diff --git a/sdk/purview/purview-scanning-rest/LICENSE b/sdk/purview/purview-scanning-rest/LICENSE new file mode 100644 index 000000000000..ea8fb1516028 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2020 Microsoft + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/sdk/purview/purview-scanning-rest/README.md b/sdk/purview/purview-scanning-rest/README.md new file mode 100644 index 000000000000..0268f46d556c --- /dev/null +++ b/sdk/purview/purview-scanning-rest/README.md @@ -0,0 +1,138 @@ +# Azure Purview Scanning Rest-Level client library for JavaScript + +Azure Purview Scanning is a fully managed cloud service whose users can scan your data into your data estate (also known as your **catalog**). Scanning is a process by which the catalog connects directly to a data source on a user-specified schedule. + +- Scan your data into your catalog +- Examine your data +- Extract schemas from your data + +**Please rely heavily on the [service's documentation][scanning_product_documentation] and our [Rest client docs][rest_client] to use this library** + +[Source code][source_code] | [Package (NPM)][scanning_npm] | [API reference documentation][scanning_ref_docs]| [Product documentation][scanning_product_documentation] + +## Getting started + +### Currently supported environments + +- Node.js version 14.x.x or higher + +### Prerequisites + +- You must have an [Azure subscription][azure_subscription] and a [Purview][purview_resource] to use this package. + +#### Create a Purview Resource + +Follow [these][purview_resource] instructions to create your Purview resource + +### Install the `@azure-rest/purview-scanning` package + +Install the Azure Purview Scanning client library for JavaScript with `npm`: + +```bash +npm install @azure-rest/purview-scanning +``` + +### Create and authenticate a `PurviewScanning` + +To use an [Azure Active Directory (AAD) token credential][authenticate_with_token], +provide an instance of the desired credential type obtained from the +[@azure/identity][azure_identity_credentials] library. + +To authenticate with AAD, you must first `npm` install [`@azure/identity`][azure_identity_npm] and +[enable AAD authentication on your Purview resource][enable_aad] + +After setup, you can choose which type of [credential][azure_identity_credentials] from `@azure/identity` to use. +As an example, [DefaultAzureCredential][default_azure_credential] +can be used to authenticate the client: + +Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables: +AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET + +Use the returned token credential to authenticate the client: + +```typescript +import PurviewScanning from "@azure-rest/purview-scanning"; +import { DefaultAzureCredential } from "@azure/identity"; +const client = PurviewScanning( + "https://.scanning.purview.azure.com", + new DefaultAzureCredential() +); +``` + +## Key concepts + +### Rest Client + +This client is one of our Rest clients. We highly recommend you read how to use a Rest client [here][rest_client]. + +## Examples + +The following section shows you how to initialize and authenticate your client, then list all of your data sources. + +- [List All Data Sources](#list-all-data-sources "List All Data Sources") + +### List All Data Sources + +```typescript +import PurviewScanning from "@azure-rest/purview-scanning"; +import { DefaultAzureCredential } from "@azure/identity"; + +async function main() { + console.log("== List dataSources =="); + const client = PurviewScanning( + "https://.scanning.purview.azure.com", + new DefaultAzureCredential() + ); + + const dataSources = await client.path("/datasources").get(); + + if (dataSources.status !== "200") { + throw dataSources.body.error; + } + + console.log(dataSources.body.value?.map((ds) => ds.name).join("\n")); +} + +main().catch(console.error); +``` + +## Troubleshooting + +### Logging + +Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`: + +```javascript +import { setLogLevel } from "@azure/logger"; + +setLogLevel("info"); +``` + +For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/core/logger). + +## Next steps + +## Contributing + +If you'd like to contribute to this library, please read the [contributing guide](https://github.com/Azure/azure-sdk-for-js/blob/master/CONTRIBUTING.md) to learn more about how to build and test the code. + +## Related projects + +- [Microsoft Azure SDK for JavaScript](https://github.com/Azure/azure-sdk-for-js) + +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fpurview%2Fpurview-scanning-rest%2FREADME.png) + + + +[scanning_product_documentation]: https://azure.microsoft.com/services/purview/ +[rest_client]: https://github.com/Azure/azure-sdk-for-js/blob/master/documentation/rest-clients.md +[source_code]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest +[scanning_npm]: https://www.npmjs.com/package/@azure-rest/purview-scanning +[scanning_ref_docs]: https://azure.github.io/azure-sdk-for-js +[azure_subscription]: https://azure.microsoft.com/free/ +[purview_resource]: https://docs.microsoft.com/azure/purview/create-catalog-portal +[authenticate_with_token]: https://docs.microsoft.com/azure/cognitive-services/authentication?tabs=powershell#authenticate-with-an-authentication-token +[azure_identity_credentials]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#credentials +[azure_identity_npm]: https://www.npmjs.com/package/@azure/identity +[enable_aad]: https://docs.microsoft.com/azure/purview/create-catalog-portal#add-a-security-principal-to-a-data-plane-role +[default_azure_credential]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/identity/identity#defaultazurecredential diff --git a/sdk/purview/purview-scanning-rest/api-extractor.json b/sdk/purview/purview-scanning-rest/api-extractor.json new file mode 100644 index 000000000000..f043d870f029 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/api-extractor.json @@ -0,0 +1,31 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json", + "mainEntryPointFilePath": "types/src/index.d.ts", + "docModel": { + "enabled": true + }, + "apiReport": { + "enabled": true, + "reportFolder": "./review" + }, + "dtsRollup": { + "enabled": true, + "untrimmedFilePath": "", + "publicTrimmedFilePath": "./types/purview-scanning-rest.d.ts" + }, + "messages": { + "tsdocMessageReporting": { + "default": { + "logLevel": "none" + } + }, + "extractorMessageReporting": { + "ae-missing-release-tag": { + "logLevel": "none" + }, + "ae-unresolved-link": { + "logLevel": "none" + } + } + } +} diff --git a/sdk/purview/purview-scanning-rest/karma.conf.js b/sdk/purview/purview-scanning-rest/karma.conf.js new file mode 100644 index 000000000000..25316030d220 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/karma.conf.js @@ -0,0 +1,143 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +// https://github.com/karma-runner/karma-chrome-launcher +process.env.CHROME_BIN = require("puppeteer").executablePath(); +require("dotenv").config(); +const { + jsonRecordingFilterFunction, + isPlaybackMode, + isSoftRecordMode, + isRecordMode, +} = require("@azure/test-utils-recorder"); + +module.exports = function (config) { + config.set({ + // base path that will be used to resolve all patterns (eg. files, exclude) + basePath: "./", + + // frameworks to use + // available frameworks: https://npmjs.org/browse/keyword/karma-adapter + frameworks: ["source-map-support", "mocha"], + + plugins: [ + "karma-mocha", + "karma-mocha-reporter", + "karma-chrome-launcher", + "karma-edge-launcher", + "karma-firefox-launcher", + "karma-ie-launcher", + "karma-env-preprocessor", + "karma-coverage", + "karma-sourcemap-loader", + "karma-junit-reporter", + "karma-json-to-file-reporter", + "karma-source-map-support", + "karma-json-preprocessor", + ], + + // list of files / patterns to load in the browser + files: [ + "dist-test/index.browser.js", + { pattern: "dist-test/index.browser.js.map", type: "html", included: false, served: true }, + ].concat(isPlaybackMode() || isSoftRecordMode() ? ["recordings/browsers/**/*.json"] : []), + + // list of files / patterns to exclude + exclude: [], + + // preprocess matching files before serving them to the browser + // available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor + preprocessors: { + "**/*.js": ["sourcemap", "env"], + "recordings/browsers/**/*.json": ["json"], + // IMPORTANT: COMMENT following line if you want to debug in your browsers!! + // Preprocess source file to calculate code coverage, however this will make source file unreadable + // "dist-test/index.js": ["coverage"] + }, + + envPreprocessor: [ + "TEST_MODE", + "ENDPOINT", + "AZURE_CLIENT_SECRET", + "AZURE_CLIENT_ID", + "AZURE_TENANT_ID", + ], + + // test results reporter to use + // possible values: 'dots', 'progress' + // available reporters: https://npmjs.org/browse/keyword/karma-reporter + reporters: ["mocha", "coverage", "junit", "json-to-file"], + + coverageReporter: { + // specify a common output directory + dir: "coverage-browser/", + reporters: [ + { type: "json", subdir: ".", file: "coverage.json" }, + { type: "lcovonly", subdir: ".", file: "lcov.info" }, + { type: "html", subdir: "html" }, + { type: "cobertura", subdir: ".", file: "cobertura-coverage.xml" }, + ], + }, + + junitReporter: { + outputDir: "", // results will be saved as $outputDir/$browserName.xml + outputFile: "test-results.browser.xml", // if included, results will be saved as $outputDir/$browserName/$outputFile + suite: "", // suite will become the package name attribute in xml testsuite element + useBrowserName: false, // add browser name to report and classes names + nameFormatter: undefined, // function (browser, result) to customize the name attribute in xml testcase element + classNameFormatter: undefined, // function (browser, result) to customize the classname attribute in xml testcase element + properties: {}, // key value pair of properties to add to the section of the report + }, + + jsonToFileReporter: { + filter: jsonRecordingFilterFunction, + outputPath: ".", + }, + + // web server port + port: 9876, + + // enable / disable colors in the output (reporters and logs) + colors: true, + + // level of logging + // possible values: config.LOG_DISABLE || config.LOG_ERROR || config.LOG_WARN || config.LOG_INFO || config.LOG_DEBUG + logLevel: config.LOG_INFO, + + // enable / disable watching file and executing tests whenever any file changes + autoWatch: false, + + // --no-sandbox allows our tests to run in Linux without having to change the system. + // --disable-web-security allows us to authenticate from the browser without having to write tests using interactive auth, which would be far more complex. + browsers: ["ChromeHeadlessNoSandbox"], + customLaunchers: { + ChromeHeadlessNoSandbox: { + base: "ChromeHeadless", + flags: ["--no-sandbox", "--disable-web-security"], + }, + }, + + // Continuous Integration mode + // if true, Karma captures browsers, runs the tests and exits + singleRun: false, + + // Concurrency level + // how many browser should be started simultaneous + concurrency: 1, + + browserNoActivityTimeout: 60000000, + browserDisconnectTimeout: 10000, + browserDisconnectTolerance: 3, + browserConsoleLogOptions: { + terminal: !isRecordMode(), + }, + + client: { + mocha: { + // change Karma's debug.html to the mocha web reporter + reporter: "html", + timeout: "600000", + }, + }, + }); +}; diff --git a/sdk/purview/purview-scanning-rest/package.json b/sdk/purview/purview-scanning-rest/package.json new file mode 100644 index 000000000000..438dc1268a52 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/package.json @@ -0,0 +1,130 @@ +{ + "name": "@azure-rest/purview-scanning", + "sdk-type": "client", + "author": "Microsoft Corporation", + "description": "An isomorphic rest level client library for the Azure Purview Scanning service.", + "version": "1.0.0-beta.1", + "keywords": [ + "node", + "azure", + "cloud", + "typescript", + "browser", + "isomorphic" + ], + "license": "MIT", + "main": "./dist/index.js", + "module": "./dist-esm/src/index.js", + "types": "./types/purview-scanning-rest.d.ts", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest/README.md", + "repository": "github:Azure/azure-sdk-for-js", + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "files": [ + "dist/", + "dist-esm/src/", + "types/purview-scanning-rest.d.ts", + "README.md", + "LICENSE" + ], + "//metadata": { + "constantPaths": [ + { + "path": "swagger/README.md", + "prefix": "package-version" + } + ] + }, + "engines": { + "node": ">=8.0.0" + }, + "//sampleConfiguration": { + "productName": "Azure Purview Scanning rest", + "productSlugs": [ + "azure" + ], + "requiredResources": { + "Azure Cognitive Services instance": "https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account" + } + }, + "browser": { + "./dist-esm/test/public/utils/env.js": "./dist-esm/test/public/utils/env.browser.js" + }, + "scripts": { + "audit": "node ../../../common/scripts/rush-audit.js && rimraf node_modules package-lock.json && npm i --package-lock-only 2>&1 && npm audit", + "regenerate": "autorest --typescript swagger/README.md && npm run format", + "build:browser": "tsc -p . && cross-env ONLY_BROWSER=true rollup -c 2>&1", + "build:node": "tsc -p . && cross-env ONLY_NODE=true rollup -c 2>&1", + "build:samples": "echo Obsolete.", + "build:test": "tsc -p . && rollup -c 2>&1", + "build": "tsc -p . && rollup -c 2>&1 && api-extractor run --local", + "build:debug": "tsc -p . && rollup -c 2>&1 && api-extractor run --local", + "check-format": "prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"", + "clean": "rimraf dist dist-browser dist-esm test-dist temp types *.tgz *.log", + "execute:samples": "dev-tool samples run samples-dev", + "extract-api": "rimraf review && mkdirp ./review && api-extractor run --local", + "format": "prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"", + "integration-test:browser": "karma start --single-run", + "integration-test:node": "nyc mocha -r esm --require source-map-support/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 5000000 --full-trace \"dist-esm/test/{,!(browser)/**/}*.spec.js\"", + "integration-test": "npm run integration-test:node && npm run integration-test:browser", + "lint:fix": "eslint package.json api-extractor.json src test --ext .ts --fix --fix-type [problem,suggestion]", + "lint": "eslint package.json api-extractor.json src test --ext .ts", + "pack": "npm pack 2>&1", + "prebuild": "npm run clean", + "test:browser": "npm run clean && npm run build:test && npm run unit-test:browser", + "test:node": "npm run clean && npm run build:test && npm run unit-test:node", + "test": "npm run clean && npm run build:test && npm run unit-test", + "unit-test:browser": "karma start --single-run", + "unit-test:node": "mocha -r esm --require ts-node/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 1200000 --full-trace \"test/{,!(browser)/**/}*.spec.ts\"", + "unit-test": "npm run unit-test:node && npm run unit-test:browser", + "docs": "typedoc --excludePrivate --excludeExternals --out ./dist/docs ./src" + }, + "sideEffects": false, + "autoPublish": false, + "dependencies": { + "@azure/core-auth": "^1.3.0", + "@azure-rest/core-client": "1.0.0-beta.1", + "@azure/core-rest-pipeline": "^1.0.0", + "@azure/logger": "^1.0.0", + "tslib": "^2.0.0" + }, + "devDependencies": { + "@azure/dev-tool": "^1.0.0", + "@azure/eslint-plugin-azure-sdk": "^3.0.0", + "@azure/identity": "^1.1.0", + "@azure/test-utils-recorder": "^1.0.0", + "@microsoft/api-extractor": "7.13.2", + "@types/chai": "^4.1.6", + "@types/mocha": "^7.0.2", + "@types/node": "^8.0.0", + "chai": "^4.2.0", + "cross-env": "^7.0.2", + "dotenv": "^8.2.0", + "eslint": "^7.15.0", + "karma-chrome-launcher": "^3.0.0", + "karma-coverage": "^2.0.0", + "karma-edge-launcher": "^0.4.2", + "karma-env-preprocessor": "^0.1.1", + "karma-firefox-launcher": "^1.1.0", + "karma-ie-launcher": "^1.0.0", + "karma-json-preprocessor": "^0.3.3", + "karma-json-to-file-reporter": "^1.0.1", + "karma-junit-reporter": "^2.0.1", + "karma-mocha-reporter": "^2.2.5", + "karma-mocha": "^2.0.1", + "karma-source-map-support": "~1.4.0", + "karma-sourcemap-loader": "^0.3.8", + "karma": "^6.2.0", + "mkdirp": "^1.0.4", + "mocha-junit-reporter": "^1.18.0", + "mocha": "^7.1.1", + "nyc": "^14.0.0", + "prettier": "2.2.1", + "rimraf": "^3.0.0", + "rollup": "^1.16.3", + "source-map-support": "^0.5.9", + "typedoc": "0.15.2", + "typescript": "~4.2.0" + } +} diff --git a/sdk/purview/purview-scanning-rest/recordings/browsers/list_data_sources/recording_should_list_all_available_data_sources.json b/sdk/purview/purview-scanning-rest/recordings/browsers/list_data_sources/recording_should_list_all_available_data_sources.json new file mode 100644 index 000000000000..392be2c41cf9 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/recordings/browsers/list_data_sources/recording_should_list_all_available_data_sources.json @@ -0,0 +1,52 @@ +{ + "recordings": [ + { + "method": "POST", + "url": "https://login.microsoftonline.com/88888888-8888-8888-8888-888888888888/oauth2/v2.0/token", + "query": {}, + "requestBody": "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fpurview.azure.net%2F.default", + "status": 200, + "response": "{\"token_type\":\"Bearer\",\"expires_in\":86399,\"ext_expires_in\":86399,\"access_token\":\"access_token\"}", + "responseHeaders": { + "cache-control": "no-store, no-cache", + "content-length": "1318", + "content-type": "application/json; charset=utf-8", + "date": "Sat, 17 Apr 2021 03:02:04 GMT", + "expires": "-1", + "nel": "{\"report_to\":\"network-errors\",\"max_age\":86400,\"success_fraction\":0.001,\"failure_fraction\":1.0}", + "p3p": "CP=\"DSP CUR OTPi IND OTRi ONL FIN\"", + "pragma": "no-cache", + "referrer-policy": "strict-origin-when-cross-origin", + "report-to": "{\"group\":\"network-errors\",\"max_age\":86400,\"endpoints\":[{\"url\":\"https://identity.nel.measure.office.net/api/report?catId=GW+estsfd+san\"}]}", + "strict-transport-security": "max-age=31536000; includeSubDomains", + "x-content-type-options": "nosniff", + "x-ms-ests-server": "2.1.11654.16 - WUS2 ProdSlices", + "x-ms-request-id": "44f468db-faed-48d7-995e-05f817e02f00" + } + }, + { + "method": "GET", + "url": "https://endpoint/datasources", + "query": { + "api-version": "2018-12-01-preview" + }, + "requestBody": null, + "status": 200, + "response": "{\"value\":[{\"properties\":{\"createdAt\":\"2021-04-01T19:18:25.6411232Z\",\"lastModifiedAt\":\"2021-04-01T19:18:25.6411233Z\",\"parentCollection\":null},\"kind\":\"Collection\",\"id\":\"datasources/Collection-vaR\",\"name\":\"Collection-vaR\"},{\"properties\":{\"endpoint\":\"https://joherediteststorage.blob.core.windows.net/\",\"resourceGroup\":\"joheredi-test\",\"subscriptionId\":\"faa080af-c1d8-40ad-9cce-e1a450ca5b57\",\"location\":\"westus\",\"resourceName\":\"joherediteststorage\",\"createdAt\":\"2021-04-01T19:19:37.3396977Z\",\"lastModifiedAt\":\"2021-04-01T19:19:37.3396984Z\",\"parentCollection\":{\"type\":\"DataSourceReference\",\"referenceName\":\"Collection-vaR\"}},\"kind\":\"AzureStorage\",\"id\":\"datasources/AzureBlob-BzV\",\"name\":\"AzureBlob-BzV\"}],\"count\":2}", + "responseHeaders": { + "content-length": "709", + "content-type": "application/json; charset=utf-8", + "date": "Sat, 17 Apr 2021 03:02:05 GMT", + "server": "Kestrel", + "status": "200", + "strict-transport-security": "max-age=31536000; includeSubDomains", + "x-ms-correlation-request-id": "36683dfa-4a94-4628-b8d3-d34ade2fd6e4" + } + } + ], + "uniqueTestInfo": { + "uniqueName": {}, + "newDate": {} + }, + "hash": "5fee9200fb758f2d6abdead4d3526b3e" +} \ No newline at end of file diff --git a/sdk/purview/purview-scanning-rest/recordings/node/list_data_sources/recording_should_list_all_available_data_sources.js b/sdk/purview/purview-scanning-rest/recordings/node/list_data_sources/recording_should_list_all_available_data_sources.js new file mode 100644 index 000000000000..840f9bf5de6c --- /dev/null +++ b/sdk/purview/purview-scanning-rest/recordings/node/list_data_sources/recording_should_list_all_available_data_sources.js @@ -0,0 +1,56 @@ +let nock = require('nock'); + +module.exports.hash = "31a597a6bd805db1de58bb96c6462334"; + +module.exports.testInfo = {"uniqueName":{},"newDate":{}} + +nock('https://login.microsoftonline.com:443', {"encodedQueryParams":true}) + .post('/88888888-8888-8888-8888-888888888888/oauth2/v2.0/token', "response_type=token&grant_type=client_credentials&client_id=azure_client_id&client_secret=azure_client_secret&scope=https%3A%2F%2Fpurview.azure.net%2F.default") + .reply(200, {"token_type":"Bearer","expires_in":86399,"ext_expires_in":86399,"access_token":"access_token"}, [ + 'Cache-Control', + 'no-store, no-cache', + 'Pragma', + 'no-cache', + 'Content-Length', + '1318', + 'Content-Type', + 'application/json; charset=utf-8', + 'Expires', + '-1', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'X-Content-Type-Options', + 'nosniff', + 'P3P', + 'CP="DSP CUR OTPi IND OTRi ONL FIN"', + 'x-ms-request-id', + '3f6440c3-579d-41ac-b501-7bab53261900', + 'x-ms-ests-server', + '2.1.11654.13 - SCUS ProdSlices', + 'Set-Cookie', + 'fpc=AlLlW8l6GSxOvCTrFZhj29X__1r8AQAAAKlGDNgOAAAA; expires=Mon, 17-May-2021 03:02:02 GMT; path=/; secure; HttpOnly; SameSite=None', + 'Set-Cookie', + 'x-ms-gateway-slice=estsfd; path=/; secure; samesite=none; httponly', + 'Set-Cookie', + 'stsservicecookie=estsfd; path=/; secure; samesite=none; httponly', + 'Date', + 'Sat, 17 Apr 2021 03:02:02 GMT' +]); + +nock('https://endpoint', {"encodedQueryParams":true}) + .get('/datasources') + .query(true) + .reply(200, {"value":[{"properties":{"createdAt":"2021-04-01T19:18:25.6411232Z","lastModifiedAt":"2021-04-01T19:18:25.6411233Z","parentCollection":null},"kind":"Collection","id":"datasources/Collection-vaR","name":"Collection-vaR"},{"properties":{"endpoint":"https://joherediteststorage.blob.core.windows.net/","resourceGroup":"joheredi-test","subscriptionId":"faa080af-c1d8-40ad-9cce-e1a450ca5b57","location":"westus","resourceName":"joherediteststorage","createdAt":"2021-04-01T19:19:37.3396977Z","lastModifiedAt":"2021-04-01T19:19:37.3396984Z","parentCollection":{"type":"DataSourceReference","referenceName":"Collection-vaR"}},"kind":"AzureStorage","id":"datasources/AzureBlob-BzV","name":"AzureBlob-BzV"}],"count":2}, [ + 'Date', + 'Sat, 17 Apr 2021 03:02:02 GMT', + 'Content-Type', + 'application/json; charset=utf-8', + 'Server', + 'Kestrel', + 'Content-Length', + '709', + 'Strict-Transport-Security', + 'max-age=31536000; includeSubDomains', + 'x-ms-correlation-request-id', + '9e4bac9f-885b-43a0-9aeb-5fdd385646f9' +]); diff --git a/sdk/purview/purview-scanning-rest/review/purview-scanning.api.md b/sdk/purview/purview-scanning-rest/review/purview-scanning.api.md new file mode 100644 index 000000000000..801bcc00dfce --- /dev/null +++ b/sdk/purview/purview-scanning-rest/review/purview-scanning.api.md @@ -0,0 +1,4700 @@ +## API Report File for "@azure-rest/purview-scanning" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { Client } from '@azure-rest/core-client'; +import { ClientOptions } from '@azure-rest/core-client'; +import { HttpResponse } from '@azure-rest/core-client'; +import { RequestParameters } from '@azure-rest/core-client'; +import { TokenCredential } from '@azure/core-auth'; + +// @public (undocumented) +export type AdlsGen1CredentialScan = AdlsGen1CredentialScanBase & Scan; + +// @public (undocumented) +export interface AdlsGen1CredentialScanBase { + // (undocumented) + properties?: AdlsGen1CredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AdlsGen1CredentialScanProperties = AdlsGen1CredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AdlsGen1CredentialScanPropertiesAutoGenerated = AdlsGen1CredentialScanPropertiesAutoGeneratedBase & AdlsGen1CredentialScanProperties; + +// @public (undocumented) +export interface AdlsGen1CredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AdlsGen1CredentialScanPropertiesBase { + // (undocumented) + credential?: AdlsGen1CredentialScanPropertiesCredential; +} + +// @public (undocumented) +export type AdlsGen1CredentialScanPropertiesCredential = AdlsGen1CredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AdlsGen1CredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AdlsGen1DataSource = AdlsGen1DataSourceBase & DataSource; + +// @public (undocumented) +export interface AdlsGen1DataSourceBase { + // (undocumented) + properties?: AdlsGen1DataSourceProperties; +} + +// @public (undocumented) +export type AdlsGen1DataSourceProperties = AdlsGen1DataSourcePropertiesBase & AdlsGen1Properties; + +// @public (undocumented) +export interface AdlsGen1DataSourcePropertiesBase { +} + +// @public (undocumented) +export type AdlsGen1MsiScan = AdlsGen1MsiScanBase & Scan; + +// @public (undocumented) +export interface AdlsGen1MsiScanBase { + // (undocumented) + properties?: AdlsGen1MsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AdlsGen1MsiScanProperties = AdlsGen1MsiScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AdlsGen1MsiScanPropertiesAutoGenerated = AdlsGen1MsiScanPropertiesAutoGeneratedBase & AdlsGen1MsiScanProperties; + +// @public (undocumented) +export interface AdlsGen1MsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AdlsGen1MsiScanPropertiesBase { +} + +// @public (undocumented) +export type AdlsGen1Properties = AdlsGen1PropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AdlsGen1PropertiesBase { + // (undocumented) + endpoint?: string; +} + +// @public (undocumented) +export type AdlsGen1ScanRuleset = AdlsGen1ScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AdlsGen1ScanRulesetBase { + // (undocumented) + properties?: AdlsGen1ScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AdlsGen1ScanRulesetProperties = AdlsGen1ScanRulesetPropertiesBase & ScanningRuleScanRulesetProperties; + +// @public (undocumented) +export type AdlsGen1ScanRulesetPropertiesAutoGenerated = AdlsGen1ScanRulesetPropertiesAutoGeneratedBase & AdlsGen1ScanRulesetProperties; + +// @public (undocumented) +export interface AdlsGen1ScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AdlsGen1ScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AdlsGen1SystemScanRuleset = AdlsGen1SystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AdlsGen1SystemScanRulesetBase { + // (undocumented) + properties?: AdlsGen1SystemScanRulesetProperties; +} + +// @public (undocumented) +export type AdlsGen1SystemScanRulesetProperties = AdlsGen1SystemScanRulesetPropertiesBase & AdlsGen1ScanRulesetProperties; + +// @public (undocumented) +export interface AdlsGen1SystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AdlsGen2CredentialScan = AdlsGen2CredentialScanBase & Scan; + +// @public (undocumented) +export interface AdlsGen2CredentialScanBase { + // (undocumented) + properties?: AdlsGen2CredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AdlsGen2CredentialScanProperties = AdlsGen2CredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AdlsGen2CredentialScanPropertiesAutoGenerated = AdlsGen2CredentialScanPropertiesAutoGeneratedBase & AdlsGen2CredentialScanProperties; + +// @public (undocumented) +export interface AdlsGen2CredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AdlsGen2CredentialScanPropertiesBase { + // (undocumented) + credential?: AdlsGen2CredentialScanPropertiesCredential; +} + +// @public (undocumented) +export type AdlsGen2CredentialScanPropertiesCredential = AdlsGen2CredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AdlsGen2CredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AdlsGen2DataSource = AdlsGen2DataSourceBase & DataSource; + +// @public (undocumented) +export interface AdlsGen2DataSourceBase { + // (undocumented) + properties?: AdlsGen2DataSourceProperties; +} + +// @public (undocumented) +export type AdlsGen2DataSourceProperties = AdlsGen2DataSourcePropertiesBase & AdlsGen2Properties; + +// @public (undocumented) +export interface AdlsGen2DataSourcePropertiesBase { +} + +// @public (undocumented) +export type AdlsGen2MsiScan = AdlsGen2MsiScanBase & Scan; + +// @public (undocumented) +export interface AdlsGen2MsiScanBase { + // (undocumented) + properties?: AdlsGen2MsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AdlsGen2MsiScanProperties = AdlsGen2MsiScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AdlsGen2MsiScanPropertiesAutoGenerated = AdlsGen2MsiScanPropertiesAutoGeneratedBase & AdlsGen2MsiScanProperties; + +// @public (undocumented) +export interface AdlsGen2MsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AdlsGen2MsiScanPropertiesBase { +} + +// @public (undocumented) +export type AdlsGen2Properties = AdlsGen2PropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AdlsGen2PropertiesBase { + // (undocumented) + endpoint?: string; +} + +// @public (undocumented) +export type AdlsGen2ScanRuleset = AdlsGen2ScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AdlsGen2ScanRulesetBase { + // (undocumented) + properties?: AdlsGen2ScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AdlsGen2ScanRulesetProperties = AdlsGen2ScanRulesetPropertiesBase & ScanningRuleScanRulesetProperties; + +// @public (undocumented) +export type AdlsGen2ScanRulesetPropertiesAutoGenerated = AdlsGen2ScanRulesetPropertiesAutoGeneratedBase & AdlsGen2ScanRulesetProperties; + +// @public (undocumented) +export interface AdlsGen2ScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AdlsGen2ScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AdlsGen2SystemScanRuleset = AdlsGen2SystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AdlsGen2SystemScanRulesetBase { + // (undocumented) + properties?: AdlsGen2SystemScanRulesetProperties; +} + +// @public (undocumented) +export type AdlsGen2SystemScanRulesetProperties = AdlsGen2SystemScanRulesetPropertiesBase & AdlsGen2ScanRulesetProperties; + +// @public (undocumented) +export interface AdlsGen2SystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonAccountCredentialScan = AmazonAccountCredentialScanBase & Scan; + +// @public (undocumented) +export interface AmazonAccountCredentialScanBase { + // (undocumented) + properties?: AmazonAccountCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonAccountCredentialScanProperties = AmazonAccountCredentialScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AmazonAccountCredentialScanPropertiesAutoGenerated = AmazonAccountCredentialScanPropertiesAutoGeneratedBase & AmazonAccountCredentialScanProperties; + +// @public (undocumented) +export interface AmazonAccountCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonAccountCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AmazonAccountDataSource = AmazonAccountDataSourceBase & DataSource; + +// @public (undocumented) +export interface AmazonAccountDataSourceBase { + // (undocumented) + properties?: AmazonAccountDataSourceProperties; +} + +// @public (undocumented) +export type AmazonAccountDataSourceProperties = AmazonAccountDataSourcePropertiesBase & AmazonAccountProperties; + +// @public (undocumented) +export interface AmazonAccountDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AmazonAccountProperties = AmazonAccountPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface AmazonAccountPropertiesBase { + // (undocumented) + awsAccountId?: string; + // (undocumented) + roleARN?: string; +} + +// @public (undocumented) +export type AmazonAccountScanRuleset = AmazonAccountScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AmazonAccountScanRulesetBase { + // (undocumented) + properties?: AmazonAccountScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonAccountScanRulesetProperties = AmazonAccountScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AmazonAccountScanRulesetPropertiesAutoGenerated = AmazonAccountScanRulesetPropertiesAutoGeneratedBase & AmazonAccountScanRulesetProperties; + +// @public (undocumented) +export interface AmazonAccountScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonAccountScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonAccountSystemScanRuleset = AmazonAccountSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AmazonAccountSystemScanRulesetBase { + // (undocumented) + properties?: AmazonAccountSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AmazonAccountSystemScanRulesetProperties = AmazonAccountSystemScanRulesetPropertiesBase & AmazonAccountScanRulesetProperties; + +// @public (undocumented) +export interface AmazonAccountSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonPostgreSqlCredentialScan = AmazonPostgreSqlCredentialScanBase & Scan; + +// @public (undocumented) +export interface AmazonPostgreSqlCredentialScanBase { + // (undocumented) + properties?: AmazonPostgreSqlCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonPostgreSqlCredentialScanProperties = AmazonPostgreSqlCredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AmazonPostgreSqlCredentialScanPropertiesAutoGenerated = AmazonPostgreSqlCredentialScanPropertiesAutoGeneratedBase & AmazonPostgreSqlCredentialScanProperties; + +// @public (undocumented) +export interface AmazonPostgreSqlCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonPostgreSqlCredentialScanPropertiesBase { + // (undocumented) + credential?: AmazonPostgreSqlCredentialScanPropertiesCredential; + // (undocumented) + databaseName?: string; + // (undocumented) + port?: string; + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AmazonPostgreSqlCredentialScanPropertiesCredential = AmazonPostgreSqlCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AmazonPostgreSqlCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AmazonPostgreSqlDataSource = AmazonPostgreSqlDataSourceBase & DataSource; + +// @public (undocumented) +export interface AmazonPostgreSqlDataSourceBase { + // (undocumented) + properties?: AmazonPostgreSqlDataSourceProperties; +} + +// @public (undocumented) +export type AmazonPostgreSqlDataSourceProperties = AmazonPostgreSqlDataSourcePropertiesBase & AmazonPostgreSqlProperties; + +// @public (undocumented) +export interface AmazonPostgreSqlDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AmazonPostgreSqlProperties = AmazonPostgreSqlPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface AmazonPostgreSqlPropertiesBase { + // (undocumented) + port?: string; + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AmazonPostgreSqlScanRuleset = AmazonPostgreSqlScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AmazonPostgreSqlScanRulesetBase { + // (undocumented) + properties?: AmazonPostgreSqlScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonPostgreSqlScanRulesetProperties = AmazonPostgreSqlScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AmazonPostgreSqlScanRulesetPropertiesAutoGenerated = AmazonPostgreSqlScanRulesetPropertiesAutoGeneratedBase & AmazonPostgreSqlScanRulesetProperties; + +// @public (undocumented) +export interface AmazonPostgreSqlScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonPostgreSqlScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonPostgreSqlSystemScanRuleset = AmazonPostgreSqlSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AmazonPostgreSqlSystemScanRulesetBase { + // (undocumented) + properties?: AmazonPostgreSqlSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AmazonPostgreSqlSystemScanRulesetProperties = AmazonPostgreSqlSystemScanRulesetPropertiesBase & AmazonPostgreSqlScanRulesetProperties; + +// @public (undocumented) +export interface AmazonPostgreSqlSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonS3CredentialScan = AmazonS3CredentialScanBase & Scan; + +// @public (undocumented) +export interface AmazonS3CredentialScanBase { + // (undocumented) + properties?: AmazonS3CredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonS3CredentialScanProperties = AmazonS3CredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AmazonS3CredentialScanPropertiesAutoGenerated = AmazonS3CredentialScanPropertiesAutoGeneratedBase & AmazonS3CredentialScanProperties; + +// @public (undocumented) +export interface AmazonS3CredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonS3CredentialScanPropertiesBase { + // (undocumented) + credential?: AmazonS3CredentialScanPropertiesCredential; + // (undocumented) + roleARN?: string; +} + +// @public (undocumented) +export type AmazonS3CredentialScanPropertiesCredential = AmazonS3CredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AmazonS3CredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AmazonS3DataSource = AmazonS3DataSourceBase & DataSource; + +// @public (undocumented) +export interface AmazonS3DataSourceBase { + // (undocumented) + properties?: AmazonS3DataSourceProperties; +} + +// @public (undocumented) +export type AmazonS3DataSourceProperties = AmazonS3DataSourcePropertiesBase & AmazonS3Properties; + +// @public (undocumented) +export interface AmazonS3DataSourcePropertiesBase { +} + +// @public (undocumented) +export type AmazonS3Properties = AmazonS3PropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface AmazonS3PropertiesBase { + // (undocumented) + roleARN?: string; + // (undocumented) + serviceUrl?: string; +} + +// @public (undocumented) +export type AmazonS3RoleARNScan = AmazonS3RoleARNScanBase & Scan; + +// @public (undocumented) +export interface AmazonS3RoleARNScanBase { + // (undocumented) + properties?: AmazonS3RoleARNScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonS3RoleARNScanProperties = AmazonS3RoleARNScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AmazonS3RoleARNScanPropertiesAutoGenerated = AmazonS3RoleARNScanPropertiesAutoGeneratedBase & AmazonS3RoleARNScanProperties; + +// @public (undocumented) +export interface AmazonS3RoleARNScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonS3RoleARNScanPropertiesBase { + // (undocumented) + roleARN?: string; +} + +// @public (undocumented) +export type AmazonS3ScanRuleset = AmazonS3ScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AmazonS3ScanRulesetBase { + // (undocumented) + properties?: AmazonS3ScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonS3ScanRulesetProperties = AmazonS3ScanRulesetPropertiesBase & ScanningRuleScanRulesetProperties; + +// @public (undocumented) +export type AmazonS3ScanRulesetPropertiesAutoGenerated = AmazonS3ScanRulesetPropertiesAutoGeneratedBase & AmazonS3ScanRulesetProperties; + +// @public (undocumented) +export interface AmazonS3ScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonS3ScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonS3SystemScanRuleset = AmazonS3SystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AmazonS3SystemScanRulesetBase { + // (undocumented) + properties?: AmazonS3SystemScanRulesetProperties; +} + +// @public (undocumented) +export type AmazonS3SystemScanRulesetProperties = AmazonS3SystemScanRulesetPropertiesBase & AmazonS3ScanRulesetProperties; + +// @public (undocumented) +export interface AmazonS3SystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonSqlCredentialScan = AmazonSqlCredentialScanBase & Scan; + +// @public (undocumented) +export interface AmazonSqlCredentialScanBase { + // (undocumented) + properties?: AmazonSqlCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonSqlCredentialScanProperties = AmazonSqlCredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AmazonSqlCredentialScanPropertiesAutoGenerated = AmazonSqlCredentialScanPropertiesAutoGeneratedBase & AmazonSqlCredentialScanProperties; + +// @public (undocumented) +export interface AmazonSqlCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonSqlCredentialScanPropertiesBase { + // (undocumented) + credential?: AmazonSqlCredentialScanPropertiesCredential; + // (undocumented) + databaseName?: string; + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AmazonSqlCredentialScanPropertiesCredential = AmazonSqlCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AmazonSqlCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AmazonSqlDataSource = AmazonSqlDataSourceBase & DataSource; + +// @public (undocumented) +export interface AmazonSqlDataSourceBase { + // (undocumented) + properties?: AmazonSqlDataSourceProperties; +} + +// @public (undocumented) +export type AmazonSqlDataSourceProperties = AmazonSqlDataSourcePropertiesBase & AmazonSqlProperties; + +// @public (undocumented) +export interface AmazonSqlDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AmazonSqlProperties = AmazonSqlPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface AmazonSqlPropertiesBase { + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AmazonSqlScanRuleset = AmazonSqlScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AmazonSqlScanRulesetBase { + // (undocumented) + properties?: AmazonSqlScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AmazonSqlScanRulesetProperties = AmazonSqlScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AmazonSqlScanRulesetPropertiesAutoGenerated = AmazonSqlScanRulesetPropertiesAutoGeneratedBase & AmazonSqlScanRulesetProperties; + +// @public (undocumented) +export interface AmazonSqlScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AmazonSqlScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AmazonSqlSystemScanRuleset = AmazonSqlSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AmazonSqlSystemScanRulesetBase { + // (undocumented) + properties?: AmazonSqlSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AmazonSqlSystemScanRulesetProperties = AmazonSqlSystemScanRulesetPropertiesBase & AmazonSqlScanRulesetProperties; + +// @public (undocumented) +export interface AmazonSqlSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureCosmosDbCredentialScan = AzureCosmosDbCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureCosmosDbCredentialScanBase { + // (undocumented) + properties?: AzureCosmosDbCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureCosmosDbCredentialScanProperties = AzureCosmosDbCredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AzureCosmosDbCredentialScanPropertiesAutoGenerated = AzureCosmosDbCredentialScanPropertiesAutoGeneratedBase & AzureCosmosDbCredentialScanProperties; + +// @public (undocumented) +export interface AzureCosmosDbCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureCosmosDbCredentialScanPropertiesBase { + // (undocumented) + credential?: AzureCosmosDbCredentialScanPropertiesCredential; + // (undocumented) + databaseName?: string; +} + +// @public (undocumented) +export type AzureCosmosDbCredentialScanPropertiesCredential = AzureCosmosDbCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AzureCosmosDbCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AzureCosmosDbDataSource = AzureCosmosDbDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureCosmosDbDataSourceBase { + // (undocumented) + properties?: AzureCosmosDbDataSourceProperties; +} + +// @public (undocumented) +export type AzureCosmosDbDataSourceProperties = AzureCosmosDbDataSourcePropertiesBase & AzureCosmosDbProperties; + +// @public (undocumented) +export interface AzureCosmosDbDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureCosmosDbProperties = AzureCosmosDbPropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureCosmosDbPropertiesBase { + // (undocumented) + accountUri?: string; +} + +// @public (undocumented) +export type AzureCosmosDbScanRuleset = AzureCosmosDbScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureCosmosDbScanRulesetBase { + // (undocumented) + properties?: AzureCosmosDbScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureCosmosDbScanRulesetProperties = AzureCosmosDbScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureCosmosDbScanRulesetPropertiesAutoGenerated = AzureCosmosDbScanRulesetPropertiesAutoGeneratedBase & AzureCosmosDbScanRulesetProperties; + +// @public (undocumented) +export interface AzureCosmosDbScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureCosmosDbScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureCosmosDbSystemScanRuleset = AzureCosmosDbSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureCosmosDbSystemScanRulesetBase { + // (undocumented) + properties?: AzureCosmosDbSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureCosmosDbSystemScanRulesetProperties = AzureCosmosDbSystemScanRulesetPropertiesBase & AzureCosmosDbScanRulesetProperties; + +// @public (undocumented) +export interface AzureCosmosDbSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureDataExplorerCredentialScan = AzureDataExplorerCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureDataExplorerCredentialScanBase { + // (undocumented) + properties?: AzureDataExplorerCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureDataExplorerCredentialScanProperties = AzureDataExplorerCredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AzureDataExplorerCredentialScanPropertiesAutoGenerated = AzureDataExplorerCredentialScanPropertiesAutoGeneratedBase & AzureDataExplorerCredentialScanProperties; + +// @public (undocumented) +export interface AzureDataExplorerCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureDataExplorerCredentialScanPropertiesBase { + // (undocumented) + credential?: AzureDataExplorerCredentialScanPropertiesCredential; + // (undocumented) + database?: string; +} + +// @public (undocumented) +export type AzureDataExplorerCredentialScanPropertiesCredential = AzureDataExplorerCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AzureDataExplorerCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AzureDataExplorerDataSource = AzureDataExplorerDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureDataExplorerDataSourceBase { + // (undocumented) + properties?: AzureDataExplorerDataSourceProperties; +} + +// @public (undocumented) +export type AzureDataExplorerDataSourceProperties = AzureDataExplorerDataSourcePropertiesBase & AzureDataExplorerProperties; + +// @public (undocumented) +export interface AzureDataExplorerDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureDataExplorerMsiScan = AzureDataExplorerMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureDataExplorerMsiScanBase { + // (undocumented) + properties?: AzureDataExplorerMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureDataExplorerMsiScanProperties = AzureDataExplorerMsiScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AzureDataExplorerMsiScanPropertiesAutoGenerated = AzureDataExplorerMsiScanPropertiesAutoGeneratedBase & AzureDataExplorerMsiScanProperties; + +// @public (undocumented) +export interface AzureDataExplorerMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureDataExplorerMsiScanPropertiesBase { + // (undocumented) + database?: string; +} + +// @public (undocumented) +export type AzureDataExplorerProperties = AzureDataExplorerPropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureDataExplorerPropertiesBase { + // (undocumented) + endpoint?: string; +} + +// @public (undocumented) +export type AzureDataExplorerScanRuleset = AzureDataExplorerScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureDataExplorerScanRulesetBase { + // (undocumented) + properties?: AzureDataExplorerScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureDataExplorerScanRulesetProperties = AzureDataExplorerScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureDataExplorerScanRulesetPropertiesAutoGenerated = AzureDataExplorerScanRulesetPropertiesAutoGeneratedBase & AzureDataExplorerScanRulesetProperties; + +// @public (undocumented) +export interface AzureDataExplorerScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureDataExplorerScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureDataExplorerSystemScanRuleset = AzureDataExplorerSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureDataExplorerSystemScanRulesetBase { + // (undocumented) + properties?: AzureDataExplorerSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureDataExplorerSystemScanRulesetProperties = AzureDataExplorerSystemScanRulesetPropertiesBase & AzureDataExplorerScanRulesetProperties; + +// @public (undocumented) +export interface AzureDataExplorerSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureDataSourceProperties = AzureDataSourcePropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface AzureDataSourcePropertiesBase { + // (undocumented) + location?: string; + // (undocumented) + resourceGroup?: string; + // (undocumented) + resourceName?: string; + // (undocumented) + subscriptionId?: string; +} + +// @public (undocumented) +export type AzureFileServiceCredentialScan = AzureFileServiceCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureFileServiceCredentialScanBase { + // (undocumented) + properties?: AzureFileServiceCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureFileServiceCredentialScanProperties = AzureFileServiceCredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AzureFileServiceCredentialScanPropertiesAutoGenerated = AzureFileServiceCredentialScanPropertiesAutoGeneratedBase & AzureFileServiceCredentialScanProperties; + +// @public (undocumented) +export interface AzureFileServiceCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureFileServiceCredentialScanPropertiesBase { + // (undocumented) + credential?: AzureFileServiceCredentialScanPropertiesCredential; + // (undocumented) + shareName?: string; +} + +// @public (undocumented) +export type AzureFileServiceCredentialScanPropertiesCredential = AzureFileServiceCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AzureFileServiceCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AzureFileServiceDataSource = AzureFileServiceDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureFileServiceDataSourceBase { + // (undocumented) + properties?: AzureFileServiceDataSourceProperties; +} + +// @public (undocumented) +export type AzureFileServiceDataSourceProperties = AzureFileServiceDataSourcePropertiesBase & AzureFileServiceProperties; + +// @public (undocumented) +export interface AzureFileServiceDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureFileServiceProperties = AzureFileServicePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureFileServicePropertiesBase { + // (undocumented) + endpoint?: string; +} + +// @public (undocumented) +export type AzureFileServiceScanRuleset = AzureFileServiceScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureFileServiceScanRulesetBase { + // (undocumented) + properties?: AzureFileServiceScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureFileServiceScanRulesetProperties = AzureFileServiceScanRulesetPropertiesBase & ScanningRuleScanRulesetProperties; + +// @public (undocumented) +export type AzureFileServiceScanRulesetPropertiesAutoGenerated = AzureFileServiceScanRulesetPropertiesAutoGeneratedBase & AzureFileServiceScanRulesetProperties; + +// @public (undocumented) +export interface AzureFileServiceScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureFileServiceScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureFileServiceSystemScanRuleset = AzureFileServiceSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureFileServiceSystemScanRulesetBase { + // (undocumented) + properties?: AzureFileServiceSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureFileServiceSystemScanRulesetProperties = AzureFileServiceSystemScanRulesetPropertiesBase & AzureFileServiceScanRulesetProperties; + +// @public (undocumented) +export interface AzureFileServiceSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureKeyVault = AzureKeyVaultBase & ProxyResource; + +// @public (undocumented) +export interface AzureKeyVaultBase { + // (undocumented) + properties?: AzureKeyVaultProperties; +} + +// @public (undocumented) +export interface AzureKeyVaultList { + // (undocumented) + count?: number; + // (undocumented) + nextLink?: string; + // (undocumented) + value?: AzureKeyVault[]; +} + +// @public (undocumented) +export type AzureKeyVaultProperties = AzureKeyVaultPropertiesBase & AzureKeyVaultPropertiesAutoGenerated; + +// @public (undocumented) +export interface AzureKeyVaultPropertiesAutoGenerated { + // (undocumented) + baseUrl?: string; + // (undocumented) + description?: string; +} + +// @public (undocumented) +export interface AzureKeyVaultPropertiesBase { +} + +// @public (undocumented) +export type AzureMySqlCredentialScan = AzureMySqlCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureMySqlCredentialScanBase { + // (undocumented) + properties?: AzureMySqlCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureMySqlCredentialScanProperties = AzureMySqlCredentialScanPropertiesBase & AzureMySqlScanProperties; + +// @public (undocumented) +export type AzureMySqlCredentialScanPropertiesAutoGenerated = AzureMySqlCredentialScanPropertiesAutoGeneratedBase & AzureMySqlCredentialScanProperties; + +// @public (undocumented) +export interface AzureMySqlCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureMySqlCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureMySqlDataSource = AzureMySqlDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureMySqlDataSourceBase { + // (undocumented) + properties?: AzureMySqlDataSourceProperties; +} + +// @public (undocumented) +export type AzureMySqlDataSourceProperties = AzureMySqlDataSourcePropertiesBase & AzureMySqlProperties; + +// @public (undocumented) +export interface AzureMySqlDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureMySqlProperties = AzureMySqlPropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureMySqlPropertiesBase { + // (undocumented) + port?: number; + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AzureMySqlScanProperties = AzureMySqlScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export interface AzureMySqlScanPropertiesBase { + // (undocumented) + credential?: AzureMySqlScanPropertiesCredential; + // (undocumented) + databaseName?: string; + // (undocumented) + port?: number; + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AzureMySqlScanPropertiesCredential = AzureMySqlScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AzureMySqlScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AzureMySqlScanRuleset = AzureMySqlScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureMySqlScanRulesetBase { + // (undocumented) + properties?: AzureMySqlScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureMySqlScanRulesetProperties = AzureMySqlScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureMySqlScanRulesetPropertiesAutoGenerated = AzureMySqlScanRulesetPropertiesAutoGeneratedBase & AzureMySqlScanRulesetProperties; + +// @public (undocumented) +export interface AzureMySqlScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureMySqlScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureMySqlSystemScanRuleset = AzureMySqlSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureMySqlSystemScanRulesetBase { + // (undocumented) + properties?: AzureMySqlSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureMySqlSystemScanRulesetProperties = AzureMySqlSystemScanRulesetPropertiesBase & AzureMySqlScanRulesetProperties; + +// @public (undocumented) +export interface AzureMySqlSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzurePostgreSqlCredentialScan = AzurePostgreSqlCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzurePostgreSqlCredentialScanBase { + // (undocumented) + properties?: AzurePostgreSqlCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzurePostgreSqlCredentialScanProperties = AzurePostgreSqlCredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AzurePostgreSqlCredentialScanPropertiesAutoGenerated = AzurePostgreSqlCredentialScanPropertiesAutoGeneratedBase & AzurePostgreSqlCredentialScanProperties; + +// @public (undocumented) +export interface AzurePostgreSqlCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzurePostgreSqlCredentialScanPropertiesBase { + // (undocumented) + credential?: AzurePostgreSqlCredentialScanPropertiesCredential; + // (undocumented) + databaseName?: string; + // (undocumented) + port?: number; + // (undocumented) + serverEndpoint?: string; + // (undocumented) + sslMode?: number; +} + +// @public (undocumented) +export type AzurePostgreSqlCredentialScanPropertiesCredential = AzurePostgreSqlCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AzurePostgreSqlCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AzurePostgreSqlDataSource = AzurePostgreSqlDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzurePostgreSqlDataSourceBase { + // (undocumented) + properties?: AzurePostgreSqlDataSourceProperties; +} + +// @public (undocumented) +export type AzurePostgreSqlDataSourceProperties = AzurePostgreSqlDataSourcePropertiesBase & AzurePostgreSqlProperties; + +// @public (undocumented) +export interface AzurePostgreSqlDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzurePostgreSqlProperties = AzurePostgreSqlPropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzurePostgreSqlPropertiesBase { + // (undocumented) + port?: number; + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AzurePostgreSqlScanRuleset = AzurePostgreSqlScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzurePostgreSqlScanRulesetBase { + // (undocumented) + properties?: AzurePostgreSqlScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzurePostgreSqlScanRulesetProperties = AzurePostgreSqlScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzurePostgreSqlScanRulesetPropertiesAutoGenerated = AzurePostgreSqlScanRulesetPropertiesAutoGeneratedBase & AzurePostgreSqlScanRulesetProperties; + +// @public (undocumented) +export interface AzurePostgreSqlScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzurePostgreSqlScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzurePostgreSqlSystemScanRuleset = AzurePostgreSqlSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzurePostgreSqlSystemScanRulesetBase { + // (undocumented) + properties?: AzurePostgreSqlSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzurePostgreSqlSystemScanRulesetProperties = AzurePostgreSqlSystemScanRulesetPropertiesBase & AzurePostgreSqlScanRulesetProperties; + +// @public (undocumented) +export interface AzurePostgreSqlSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureResourceGroupCredentialScan = AzureResourceGroupCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureResourceGroupCredentialScanBase { + // (undocumented) + properties?: AzureResourceGroupCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureResourceGroupCredentialScanProperties = AzureResourceGroupCredentialScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureResourceGroupCredentialScanPropertiesAutoGenerated = AzureResourceGroupCredentialScanPropertiesAutoGeneratedBase & AzureResourceGroupCredentialScanProperties; + +// @public (undocumented) +export interface AzureResourceGroupCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureResourceGroupCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureResourceGroupDataSource = AzureResourceGroupDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureResourceGroupDataSourceBase { + // (undocumented) + properties?: AzureResourceGroupDataSourceProperties; +} + +// @public (undocumented) +export type AzureResourceGroupDataSourceProperties = AzureResourceGroupDataSourcePropertiesBase & AzureResourceGroupProperties; + +// @public (undocumented) +export interface AzureResourceGroupDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureResourceGroupMsiScan = AzureResourceGroupMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureResourceGroupMsiScanBase { + // (undocumented) + properties?: AzureResourceGroupMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureResourceGroupMsiScanProperties = AzureResourceGroupMsiScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureResourceGroupMsiScanPropertiesAutoGenerated = AzureResourceGroupMsiScanPropertiesAutoGeneratedBase & AzureResourceGroupMsiScanProperties; + +// @public (undocumented) +export interface AzureResourceGroupMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureResourceGroupMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureResourceGroupProperties = AzureResourceGroupPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface AzureResourceGroupPropertiesBase { + // (undocumented) + resourceGroup?: string; + // (undocumented) + subscriptionId?: string; +} + +// @public (undocumented) +export type AzureResourceGroupScanRuleset = AzureResourceGroupScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureResourceGroupScanRulesetBase { + // (undocumented) + properties?: AzureResourceGroupScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureResourceGroupScanRulesetProperties = AzureResourceGroupScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureResourceGroupScanRulesetPropertiesAutoGenerated = AzureResourceGroupScanRulesetPropertiesAutoGeneratedBase & AzureResourceGroupScanRulesetProperties; + +// @public (undocumented) +export interface AzureResourceGroupScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureResourceGroupScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureResourceGroupSystemScanRuleset = AzureResourceGroupSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureResourceGroupSystemScanRulesetBase { + // (undocumented) + properties?: AzureResourceGroupSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureResourceGroupSystemScanRulesetProperties = AzureResourceGroupSystemScanRulesetPropertiesBase & AzureResourceGroupScanRulesetProperties; + +// @public (undocumented) +export interface AzureResourceGroupSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlCredentialScanProperties = AzureSqlCredentialScanPropertiesBase & AzureSqlScanProperties; + +// @public (undocumented) +export interface AzureSqlCredentialScanPropertiesBase { + // (undocumented) + credential?: AzureSqlCredentialScanPropertiesCredential; +} + +// @public (undocumented) +export type AzureSqlCredentialScanPropertiesCredential = AzureSqlCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AzureSqlCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseCredentialScan = AzureSqlDatabaseCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureSqlDatabaseCredentialScanBase { + // (undocumented) + properties?: AzureSqlDatabaseCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDatabaseCredentialScanProperties = AzureSqlDatabaseCredentialScanPropertiesBase & AzureSqlCredentialScanProperties; + +// @public (undocumented) +export type AzureSqlDatabaseCredentialScanPropertiesAutoGenerated = AzureSqlDatabaseCredentialScanPropertiesAutoGeneratedBase & AzureSqlDatabaseCredentialScanProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDatabaseCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseDataSource = AzureSqlDatabaseDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureSqlDatabaseDataSourceBase { + // (undocumented) + properties?: AzureSqlDatabaseDataSourceProperties; +} + +// @public (undocumented) +export type AzureSqlDatabaseDataSourceProperties = AzureSqlDatabaseDataSourcePropertiesBase & AzureSqlDatabaseProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceCredentialScan = AzureSqlDatabaseManagedInstanceCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceCredentialScanBase { + // (undocumented) + properties?: AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceCredentialScanProperties = AzureSqlDatabaseManagedInstanceCredentialScanPropertiesBase & AzureSqlCredentialScanProperties; + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGenerated = AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGeneratedBase & AzureSqlDatabaseManagedInstanceCredentialScanProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceDataSource = AzureSqlDatabaseManagedInstanceDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceDataSourceBase { + // (undocumented) + properties?: AzureSqlDatabaseManagedInstanceDataSourceProperties; +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceDataSourceProperties = AzureSqlDatabaseManagedInstanceDataSourcePropertiesBase & AzureSqlDatabaseManagedInstanceProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceMsiScan = AzureSqlDatabaseManagedInstanceMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceMsiScanBase { + // (undocumented) + properties?: AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceMsiScanProperties = AzureSqlDatabaseManagedInstanceMsiScanPropertiesBase & AzureSqlScanProperties; + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGenerated = AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGeneratedBase & AzureSqlDatabaseManagedInstanceMsiScanProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceProperties = AzureSqlDatabaseManagedInstancePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstancePropertiesBase { + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceScanRuleset = AzureSqlDatabaseManagedInstanceScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceScanRulesetBase { + // (undocumented) + properties?: AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceScanRulesetProperties = AzureSqlDatabaseManagedInstanceScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGenerated = AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGeneratedBase & AzureSqlDatabaseManagedInstanceScanRulesetProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceSystemScanRuleset = AzureSqlDatabaseManagedInstanceSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceSystemScanRulesetBase { + // (undocumented) + properties?: AzureSqlDatabaseManagedInstanceSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureSqlDatabaseManagedInstanceSystemScanRulesetProperties = AzureSqlDatabaseManagedInstanceSystemScanRulesetPropertiesBase & AzureSqlDatabaseManagedInstanceScanRulesetProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseManagedInstanceSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseMsiScan = AzureSqlDatabaseMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureSqlDatabaseMsiScanBase { + // (undocumented) + properties?: AzureSqlDatabaseMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDatabaseMsiScanProperties = AzureSqlDatabaseMsiScanPropertiesBase & AzureSqlScanProperties; + +// @public (undocumented) +export type AzureSqlDatabaseMsiScanPropertiesAutoGenerated = AzureSqlDatabaseMsiScanPropertiesAutoGeneratedBase & AzureSqlDatabaseMsiScanProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDatabaseMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseProperties = AzureSqlDatabasePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureSqlDatabasePropertiesBase { + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AzureSqlDatabaseScanRuleset = AzureSqlDatabaseScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureSqlDatabaseScanRulesetBase { + // (undocumented) + properties?: AzureSqlDatabaseScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDatabaseScanRulesetProperties = AzureSqlDatabaseScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureSqlDatabaseScanRulesetPropertiesAutoGenerated = AzureSqlDatabaseScanRulesetPropertiesAutoGeneratedBase & AzureSqlDatabaseScanRulesetProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDatabaseScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDatabaseSystemScanRuleset = AzureSqlDatabaseSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureSqlDatabaseSystemScanRulesetBase { + // (undocumented) + properties?: AzureSqlDatabaseSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureSqlDatabaseSystemScanRulesetProperties = AzureSqlDatabaseSystemScanRulesetPropertiesBase & AzureSqlDatabaseScanRulesetProperties; + +// @public (undocumented) +export interface AzureSqlDatabaseSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDataWarehouseCredentialScan = AzureSqlDataWarehouseCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureSqlDataWarehouseCredentialScanBase { + // (undocumented) + properties?: AzureSqlDataWarehouseCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDataWarehouseCredentialScanProperties = AzureSqlDataWarehouseCredentialScanPropertiesBase & AzureSqlCredentialScanProperties; + +// @public (undocumented) +export type AzureSqlDataWarehouseCredentialScanPropertiesAutoGenerated = AzureSqlDataWarehouseCredentialScanPropertiesAutoGeneratedBase & AzureSqlDataWarehouseCredentialScanProperties; + +// @public (undocumented) +export interface AzureSqlDataWarehouseCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDataWarehouseCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDataWarehouseDataSource = AzureSqlDataWarehouseDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureSqlDataWarehouseDataSourceBase { + // (undocumented) + properties?: AzureSqlDataWarehouseDataSourceProperties; +} + +// @public (undocumented) +export type AzureSqlDataWarehouseDataSourceProperties = AzureSqlDataWarehouseDataSourcePropertiesBase & AzureSqlDataWarehouseProperties; + +// @public (undocumented) +export interface AzureSqlDataWarehouseDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDataWarehouseMsiScan = AzureSqlDataWarehouseMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureSqlDataWarehouseMsiScanBase { + // (undocumented) + properties?: AzureSqlDataWarehouseMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDataWarehouseMsiScanProperties = AzureSqlDataWarehouseMsiScanPropertiesBase & AzureSqlScanProperties; + +// @public (undocumented) +export type AzureSqlDataWarehouseMsiScanPropertiesAutoGenerated = AzureSqlDataWarehouseMsiScanPropertiesAutoGeneratedBase & AzureSqlDataWarehouseMsiScanProperties; + +// @public (undocumented) +export interface AzureSqlDataWarehouseMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDataWarehouseMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDataWarehouseProperties = AzureSqlDataWarehousePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureSqlDataWarehousePropertiesBase { + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AzureSqlDataWarehouseScanRuleset = AzureSqlDataWarehouseScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureSqlDataWarehouseScanRulesetBase { + // (undocumented) + properties?: AzureSqlDataWarehouseScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSqlDataWarehouseScanRulesetProperties = AzureSqlDataWarehouseScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureSqlDataWarehouseScanRulesetPropertiesAutoGenerated = AzureSqlDataWarehouseScanRulesetPropertiesAutoGeneratedBase & AzureSqlDataWarehouseScanRulesetProperties; + +// @public (undocumented) +export interface AzureSqlDataWarehouseScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSqlDataWarehouseScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlDataWarehouseSystemScanRuleset = AzureSqlDataWarehouseSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureSqlDataWarehouseSystemScanRulesetBase { + // (undocumented) + properties?: AzureSqlDataWarehouseSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureSqlDataWarehouseSystemScanRulesetProperties = AzureSqlDataWarehouseSystemScanRulesetPropertiesBase & AzureSqlDataWarehouseScanRulesetProperties; + +// @public (undocumented) +export interface AzureSqlDataWarehouseSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSqlScanProperties = AzureSqlScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export interface AzureSqlScanPropertiesBase { + // (undocumented) + databaseName?: string; + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type AzureStorageCredentialScan = AzureStorageCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureStorageCredentialScanBase { + // (undocumented) + properties?: AzureStorageCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureStorageCredentialScanProperties = AzureStorageCredentialScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AzureStorageCredentialScanPropertiesAutoGenerated = AzureStorageCredentialScanPropertiesAutoGeneratedBase & AzureStorageCredentialScanProperties; + +// @public (undocumented) +export interface AzureStorageCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureStorageCredentialScanPropertiesBase { + // (undocumented) + credential?: AzureStorageCredentialScanPropertiesCredential; +} + +// @public (undocumented) +export type AzureStorageCredentialScanPropertiesCredential = AzureStorageCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface AzureStorageCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type AzureStorageDataSource = AzureStorageDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureStorageDataSourceBase { + // (undocumented) + properties?: AzureStorageDataSourceProperties; +} + +// @public (undocumented) +export type AzureStorageDataSourceProperties = AzureStorageDataSourcePropertiesBase & AzureStorageProperties; + +// @public (undocumented) +export interface AzureStorageDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureStorageMsiScan = AzureStorageMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureStorageMsiScanBase { + // (undocumented) + properties?: AzureStorageMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureStorageMsiScanProperties = AzureStorageMsiScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type AzureStorageMsiScanPropertiesAutoGenerated = AzureStorageMsiScanPropertiesAutoGeneratedBase & AzureStorageMsiScanProperties; + +// @public (undocumented) +export interface AzureStorageMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureStorageMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureStorageProperties = AzureStoragePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureStoragePropertiesBase { + // (undocumented) + endpoint?: string; +} + +// @public (undocumented) +export type AzureStorageScanRuleset = AzureStorageScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureStorageScanRulesetBase { + // (undocumented) + properties?: AzureStorageScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureStorageScanRulesetProperties = AzureStorageScanRulesetPropertiesBase & ScanningRuleScanRulesetProperties; + +// @public (undocumented) +export type AzureStorageScanRulesetPropertiesAutoGenerated = AzureStorageScanRulesetPropertiesAutoGeneratedBase & AzureStorageScanRulesetProperties; + +// @public (undocumented) +export interface AzureStorageScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureStorageScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureStorageSystemScanRuleset = AzureStorageSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureStorageSystemScanRulesetBase { + // (undocumented) + properties?: AzureStorageSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureStorageSystemScanRulesetProperties = AzureStorageSystemScanRulesetPropertiesBase & AzureStorageScanRulesetProperties; + +// @public (undocumented) +export interface AzureStorageSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSubscriptionCredentialScan = AzureSubscriptionCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureSubscriptionCredentialScanBase { + // (undocumented) + properties?: AzureSubscriptionCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSubscriptionCredentialScanProperties = AzureSubscriptionCredentialScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureSubscriptionCredentialScanPropertiesAutoGenerated = AzureSubscriptionCredentialScanPropertiesAutoGeneratedBase & AzureSubscriptionCredentialScanProperties; + +// @public (undocumented) +export interface AzureSubscriptionCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSubscriptionCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSubscriptionDataSource = AzureSubscriptionDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureSubscriptionDataSourceBase { + // (undocumented) + properties?: AzureSubscriptionDataSourceProperties; +} + +// @public (undocumented) +export type AzureSubscriptionDataSourceProperties = AzureSubscriptionDataSourcePropertiesBase & AzureSubscriptionProperties; + +// @public (undocumented) +export interface AzureSubscriptionDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureSubscriptionMsiScan = AzureSubscriptionMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureSubscriptionMsiScanBase { + // (undocumented) + properties?: AzureSubscriptionMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSubscriptionMsiScanProperties = AzureSubscriptionMsiScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureSubscriptionMsiScanPropertiesAutoGenerated = AzureSubscriptionMsiScanPropertiesAutoGeneratedBase & AzureSubscriptionMsiScanProperties; + +// @public (undocumented) +export interface AzureSubscriptionMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSubscriptionMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSubscriptionProperties = AzureSubscriptionPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface AzureSubscriptionPropertiesBase { + // (undocumented) + subscriptionId?: string; +} + +// @public (undocumented) +export type AzureSubscriptionScanRuleset = AzureSubscriptionScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureSubscriptionScanRulesetBase { + // (undocumented) + properties?: AzureSubscriptionScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSubscriptionScanRulesetProperties = AzureSubscriptionScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureSubscriptionScanRulesetPropertiesAutoGenerated = AzureSubscriptionScanRulesetPropertiesAutoGeneratedBase & AzureSubscriptionScanRulesetProperties; + +// @public (undocumented) +export interface AzureSubscriptionScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSubscriptionScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSubscriptionSystemScanRuleset = AzureSubscriptionSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureSubscriptionSystemScanRulesetBase { + // (undocumented) + properties?: AzureSubscriptionSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureSubscriptionSystemScanRulesetProperties = AzureSubscriptionSystemScanRulesetPropertiesBase & AzureSubscriptionScanRulesetProperties; + +// @public (undocumented) +export interface AzureSubscriptionSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseCredentialScan = AzureSynapseCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureSynapseCredentialScanBase { + // (undocumented) + properties?: AzureSynapseCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSynapseCredentialScanProperties = AzureSynapseCredentialScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureSynapseCredentialScanPropertiesAutoGenerated = AzureSynapseCredentialScanPropertiesAutoGeneratedBase & AzureSynapseCredentialScanProperties; + +// @public (undocumented) +export interface AzureSynapseCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSynapseCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseDataSource = AzureSynapseDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureSynapseDataSourceBase { + // (undocumented) + properties?: AzureSynapseDataSourceProperties; +} + +// @public (undocumented) +export type AzureSynapseDataSourceProperties = AzureSynapseDataSourcePropertiesBase & AzureSynapseProperties; + +// @public (undocumented) +export interface AzureSynapseDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseMsiScan = AzureSynapseMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureSynapseMsiScanBase { + // (undocumented) + properties?: AzureSynapseMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSynapseMsiScanProperties = AzureSynapseMsiScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureSynapseMsiScanPropertiesAutoGenerated = AzureSynapseMsiScanPropertiesAutoGeneratedBase & AzureSynapseMsiScanProperties; + +// @public (undocumented) +export interface AzureSynapseMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSynapseMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseProperties = AzureSynapsePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureSynapsePropertiesBase { + // (undocumented) + sqlEndpoint?: string; + // (undocumented) + sqlOnDemandEndpoint?: string; +} + +// @public (undocumented) +export type AzureSynapseScanRuleset = AzureSynapseScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureSynapseScanRulesetBase { + // (undocumented) + properties?: AzureSynapseScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSynapseScanRulesetProperties = AzureSynapseScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureSynapseScanRulesetPropertiesAutoGenerated = AzureSynapseScanRulesetPropertiesAutoGeneratedBase & AzureSynapseScanRulesetProperties; + +// @public (undocumented) +export interface AzureSynapseScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSynapseScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseSystemScanRuleset = AzureSynapseSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureSynapseSystemScanRulesetBase { + // (undocumented) + properties?: AzureSynapseSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureSynapseSystemScanRulesetProperties = AzureSynapseSystemScanRulesetPropertiesBase & AzureSynapseScanRulesetProperties; + +// @public (undocumented) +export interface AzureSynapseSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseWorkspaceCredentialScan = AzureSynapseWorkspaceCredentialScanBase & Scan; + +// @public (undocumented) +export interface AzureSynapseWorkspaceCredentialScanBase { + // (undocumented) + properties?: AzureSynapseWorkspaceCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSynapseWorkspaceCredentialScanProperties = AzureSynapseWorkspaceCredentialScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureSynapseWorkspaceCredentialScanPropertiesAutoGenerated = AzureSynapseWorkspaceCredentialScanPropertiesAutoGeneratedBase & AzureSynapseWorkspaceCredentialScanProperties; + +// @public (undocumented) +export interface AzureSynapseWorkspaceCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSynapseWorkspaceCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseWorkspaceDataSource = AzureSynapseWorkspaceDataSourceBase & DataSource; + +// @public (undocumented) +export interface AzureSynapseWorkspaceDataSourceBase { + // (undocumented) + properties?: AzureSynapseWorkspaceDataSourceProperties; +} + +// @public (undocumented) +export type AzureSynapseWorkspaceDataSourceProperties = AzureSynapseWorkspaceDataSourcePropertiesBase & AzureSynapseWorkspaceProperties; + +// @public (undocumented) +export interface AzureSynapseWorkspaceDataSourcePropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseWorkspaceMsiScan = AzureSynapseWorkspaceMsiScanBase & Scan; + +// @public (undocumented) +export interface AzureSynapseWorkspaceMsiScanBase { + // (undocumented) + properties?: AzureSynapseWorkspaceMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSynapseWorkspaceMsiScanProperties = AzureSynapseWorkspaceMsiScanPropertiesBase & ExpandingResourceScanProperties; + +// @public (undocumented) +export type AzureSynapseWorkspaceMsiScanPropertiesAutoGenerated = AzureSynapseWorkspaceMsiScanPropertiesAutoGeneratedBase & AzureSynapseWorkspaceMsiScanProperties; + +// @public (undocumented) +export interface AzureSynapseWorkspaceMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSynapseWorkspaceMsiScanPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseWorkspaceProperties = AzureSynapseWorkspacePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface AzureSynapseWorkspacePropertiesBase { + // (undocumented) + dedicatedSqlEndpoint?: string; + // (undocumented) + serverlessSqlEndpoint?: string; +} + +// @public (undocumented) +export type AzureSynapseWorkspaceScanRuleset = AzureSynapseWorkspaceScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface AzureSynapseWorkspaceScanRulesetBase { + // (undocumented) + properties?: AzureSynapseWorkspaceScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type AzureSynapseWorkspaceScanRulesetProperties = AzureSynapseWorkspaceScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type AzureSynapseWorkspaceScanRulesetPropertiesAutoGenerated = AzureSynapseWorkspaceScanRulesetPropertiesAutoGeneratedBase & AzureSynapseWorkspaceScanRulesetProperties; + +// @public (undocumented) +export interface AzureSynapseWorkspaceScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface AzureSynapseWorkspaceScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type AzureSynapseWorkspaceSystemScanRuleset = AzureSynapseWorkspaceSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface AzureSynapseWorkspaceSystemScanRulesetBase { + // (undocumented) + properties?: AzureSynapseWorkspaceSystemScanRulesetProperties; +} + +// @public (undocumented) +export type AzureSynapseWorkspaceSystemScanRulesetProperties = AzureSynapseWorkspaceSystemScanRulesetPropertiesBase & AzureSynapseWorkspaceScanRulesetProperties; + +// @public (undocumented) +export interface AzureSynapseWorkspaceSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type ClassificationAction = "Keep" | "Delete"; + +// @public (undocumented) +export type ClassificationRule = ClassificationRuleBase & ProxyResource; + +// @public (undocumented) +export interface ClassificationRuleBase { + // (undocumented) + kind: ClassificationRuleType; +} + +// @public (undocumented) +export interface ClassificationRuleList { + // (undocumented) + count?: number; + // (undocumented) + nextLink?: string; + // (undocumented) + value?: ClassificationRule[]; +} + +// @public (undocumented) +export interface ClassificationRulePattern { + // (undocumented) + kind: ClassificationRulePatternType; +} + +// @public (undocumented) +export type ClassificationRulePatternType = "Regex"; + +// @public +export interface ClassificationRulesCreateOrUpdate200Response extends HttpResponse { + // (undocumented) + body: ClassificationRule; + // (undocumented) + status: "200"; +} + +// @public +export interface ClassificationRulesCreateOrUpdate201Response extends HttpResponse { + // (undocumented) + body: ClassificationRule; + // (undocumented) + status: "201"; +} + +// @public (undocumented) +export interface ClassificationRulesCreateOrUpdateBodyParam { + // (undocumented) + body?: ClassificationRule; +} + +// @public +export interface ClassificationRulesCreateOrUpdatedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ClassificationRulesCreateOrUpdateParameters = RequestParameters & ClassificationRulesCreateOrUpdateBodyParam; + +// @public (undocumented) +export interface ClassificationRulesDelete { + delete(options?: ClassificationRulesDeleteParameters): Promise; + get(options?: ClassificationRulesGetParameters): Promise; + put(options?: ClassificationRulesCreateOrUpdateParameters): Promise; +} + +// @public +export interface ClassificationRulesDelete200Response extends HttpResponse { + // (undocumented) + body: ClassificationRule; + // (undocumented) + status: "200"; +} + +// @public +export interface ClassificationRulesDelete204Response extends HttpResponse { + // (undocumented) + status: "204"; +} + +// @public +export interface ClassificationRulesDeletedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ClassificationRulesDeleteParameters = RequestParameters; + +// @public +export interface ClassificationRulesGet200Response extends HttpResponse { + // (undocumented) + body: ClassificationRule; + // (undocumented) + status: "200"; +} + +// @public +export interface ClassificationRulesGetdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ClassificationRulesGetParameters = RequestParameters; + +// @public (undocumented) +export interface ClassificationRulesListAll { + get(options?: ClassificationRulesListAllParameters): Promise; +} + +// @public +export interface ClassificationRulesListAll200Response extends HttpResponse { + // (undocumented) + body: ClassificationRuleList; + // (undocumented) + status: "200"; +} + +// @public +export interface ClassificationRulesListAlldefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ClassificationRulesListAllParameters = RequestParameters; + +// @public (undocumented) +export interface ClassificationRulesListVersionsByClassificationRuleName { + get(options?: ClassificationRulesListVersionsByClassificationRuleNameParameters): Promise; +} + +// @public +export interface ClassificationRulesListVersionsByClassificationRuleName200Response extends HttpResponse { + // (undocumented) + body: ClassificationRuleList; + // (undocumented) + status: "200"; +} + +// @public +export interface ClassificationRulesListVersionsByClassificationRuleNamedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ClassificationRulesListVersionsByClassificationRuleNameParameters = RequestParameters; + +// @public (undocumented) +export interface ClassificationRulesTagClassificationVersion { + post(options?: ClassificationRulesTagClassificationVersionParameters): Promise; +} + +// @public +export interface ClassificationRulesTagClassificationVersion202Response extends HttpResponse { + // (undocumented) + body: OperationResponse; + // (undocumented) + status: "202"; +} + +// @public +export interface ClassificationRulesTagClassificationVersiondefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ClassificationRulesTagClassificationVersionParameters = RequestParameters & ClassificationRulesTagClassificationVersionQueryParam; + +// @public (undocumented) +export interface ClassificationRulesTagClassificationVersionQueryParam { + // (undocumented) + queryParameters: ClassificationRulesTagClassificationVersionQueryParamProperties; +} + +// @public (undocumented) +export interface ClassificationRulesTagClassificationVersionQueryParamProperties { + // (undocumented) + action: ClassificationAction; +} + +// @public (undocumented) +export type ClassificationRuleStatus = "Enabled" | "Disabled"; + +// @public (undocumented) +export type ClassificationRuleType = "System" | "Custom"; + +// @public (undocumented) +export interface ConnectedVia { + // (undocumented) + referenceName?: string; +} + +// @public (undocumented) +export interface CredentialReference { + // (undocumented) + credentialType?: CredentialType; + // (undocumented) + referenceName?: string; +} + +// @public (undocumented) +export type CredentialType = "AccountKey" | "ServicePrincipal" | "BasicAuth" | "SqlAuth" | "AmazonARN"; + +// @public (undocumented) +export type CustomClassificationRule = CustomClassificationRuleBase & ClassificationRule; + +// @public (undocumented) +export interface CustomClassificationRuleBase { + // (undocumented) + properties?: CustomClassificationRulePropertiesAutoGenerated; +} + +// @public (undocumented) +export interface CustomClassificationRuleProperties { + // (undocumented) + classificationAction?: ClassificationAction; + // (undocumented) + classificationName?: string; + // (undocumented) + columnPatterns?: ClassificationRulePattern[]; + // (undocumented) + createdAt?: Date; + // (undocumented) + dataPatterns?: ClassificationRulePattern[]; + // (undocumented) + description?: string; + // (undocumented) + lastModifiedAt?: Date; + // (undocumented) + minimumPercentageMatch?: number; + // (undocumented) + ruleStatus?: ClassificationRuleStatus; + // (undocumented) + version?: number; +} + +// @public (undocumented) +export type CustomClassificationRulePropertiesAutoGenerated = CustomClassificationRulePropertiesAutoGeneratedBase & CustomClassificationRuleProperties; + +// @public (undocumented) +export interface CustomClassificationRulePropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface CustomFileExtension { + // (undocumented) + customFileType?: CustomFileExtensionCustomFileType; + // (undocumented) + description?: string; + // (undocumented) + enabled?: boolean; + // (undocumented) + fileExtension?: string; +} + +// @public (undocumented) +export type CustomFileExtensionCustomFileType = CustomFileExtensionCustomFileTypeBase & CustomFileType; + +// @public (undocumented) +export interface CustomFileExtensionCustomFileTypeBase { +} + +// @public (undocumented) +export interface CustomFileType { + // (undocumented) + builtInType?: FileExtensionsType; + // (undocumented) + customDelimiter?: string; +} + +// @public (undocumented) +export type DataSource = DataSourceBase & ProxyResource; + +// @public (undocumented) +export interface DataSourceBase { + // (undocumented) + kind: DataSourceType; + // (undocumented) + scans?: Scan[]; +} + +// @public (undocumented) +export interface DataSourceList { + // (undocumented) + count?: number; + // (undocumented) + nextLink?: string; + // (undocumented) + value?: DataSource[]; +} + +// @public (undocumented) +export interface DataSourceProperties { + // (undocumented) + createdAt?: Date; + // (undocumented) + lastModifiedAt?: Date; +} + +// @public +export interface DataSourcesCreateOrUpdate200Response extends HttpResponse { + // (undocumented) + body: DataSource; + // (undocumented) + status: "200"; +} + +// @public +export interface DataSourcesCreateOrUpdate201Response extends HttpResponse { + // (undocumented) + body: DataSource; + // (undocumented) + status: "201"; +} + +// @public (undocumented) +export interface DataSourcesCreateOrUpdateBodyParam { + // (undocumented) + body?: DataSource; +} + +// @public +export interface DataSourcesCreateOrUpdatedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type DataSourcesCreateOrUpdateParameters = RequestParameters & DataSourcesCreateOrUpdateBodyParam; + +// @public (undocumented) +export interface DataSourcesDelete { + delete(options?: DataSourcesDeleteParameters): Promise; + get(options?: DataSourcesGetParameters): Promise; + put(options?: DataSourcesCreateOrUpdateParameters): Promise; +} + +// @public +export interface DataSourcesDelete200Response extends HttpResponse { + // (undocumented) + body: DataSource; + // (undocumented) + status: "200"; +} + +// @public +export interface DataSourcesDelete204Response extends HttpResponse { + // (undocumented) + status: "204"; +} + +// @public +export interface DataSourcesDeletedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type DataSourcesDeleteParameters = RequestParameters; + +// @public +export interface DataSourcesGet200Response extends HttpResponse { + // (undocumented) + body: DataSource; + // (undocumented) + status: "200"; +} + +// @public +export interface DataSourcesGetdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type DataSourcesGetParameters = RequestParameters; + +// @public (undocumented) +export interface DataSourcesListAll { + get(options?: DataSourcesListAllParameters): Promise; +} + +// @public +export interface DataSourcesListAll200Response extends HttpResponse { + // (undocumented) + body: DataSourceList; + // (undocumented) + status: "200"; +} + +// @public +export interface DataSourcesListAlldefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type DataSourcesListAllParameters = RequestParameters; + +// @public (undocumented) +export type DataSourceType = "None" | "AzureSubscription" | "AzureResourceGroup" | "AzureSynapseWorkspace" | "AzureSynapse" | "AdlsGen1" | "AdlsGen2" | "AmazonAccount" | "AmazonS3" | "AmazonSql" | "AzureCosmosDb" | "AzureDataExplorer" | "AzureFileService" | "AzureSqlDatabase" | "AmazonPostgreSql" | "AzurePostgreSql" | "SqlServerDatabase" | "AzureSqlDatabaseManagedInstance" | "AzureSqlDataWarehouse" | "AzureMySql" | "AzureStorage" | "Teradata" | "Oracle" | "SapS4Hana" | "SapEcc" | "PowerBI"; + +// @public (undocumented) +export type DayOfWeek = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"; + +// @public (undocumented) +export type DaysOfWeek = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"; + +// @public (undocumented) +export interface ErrorInfo { + // (undocumented) + code?: string; + // (undocumented) + details?: ErrorInfo[]; + // (undocumented) + message?: string; + // (undocumented) + target?: string; +} + +// @public (undocumented) +export interface ErrorModel { + // (undocumented) + code?: string; + // (undocumented) + details?: ErrorModel[]; + // (undocumented) + message?: string; + // (undocumented) + target?: string; +} + +// @public (undocumented) +export interface ErrorResponseModel { + // (undocumented) + error?: ErrorResponseModelError; +} + +// @public (undocumented) +export type ErrorResponseModelError = ErrorResponseModelErrorBase & ErrorModel; + +// @public (undocumented) +export interface ErrorResponseModelErrorBase { +} + +// @public (undocumented) +export type ExpandingResourceScanProperties = ExpandingResourceScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export interface ExpandingResourceScanPropertiesBase { + // (undocumented) + credential?: ExpandingResourceScanPropertiesCredential; + // (undocumented) + resourceTypes?: ExpandingResourceScanPropertiesResourceTypes; +} + +// @public (undocumented) +export type ExpandingResourceScanPropertiesCredential = ExpandingResourceScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface ExpandingResourceScanPropertiesCredentialBase { +} + +// @public (undocumented) +export interface ExpandingResourceScanPropertiesResourceTypes { + // (undocumented) + adlsGen1?: ResourceTypeFilter; + // (undocumented) + adlsGen2?: ResourceTypeFilter; + // (undocumented) + amazonAccount?: ResourceTypeFilter; + // (undocumented) + amazonPostgreSql?: ResourceTypeFilter; + // (undocumented) + amazonS3?: ResourceTypeFilter; + // (undocumented) + amazonSql?: ResourceTypeFilter; + // (undocumented) + azureCosmosDb?: ResourceTypeFilter; + // (undocumented) + azureDataExplorer?: ResourceTypeFilter; + // (undocumented) + azureFileService?: ResourceTypeFilter; + // (undocumented) + azureMySql?: ResourceTypeFilter; + // (undocumented) + azurePostgreSql?: ResourceTypeFilter; + // (undocumented) + azureResourceGroup?: ResourceTypeFilter; + // (undocumented) + azureSqlDatabase?: ResourceTypeFilter; + // (undocumented) + azureSqlDatabaseManagedInstance?: ResourceTypeFilter; + // (undocumented) + azureSqlDataWarehouse?: ResourceTypeFilter; + // (undocumented) + azureStorage?: ResourceTypeFilter; + // (undocumented) + azureSubscription?: ResourceTypeFilter; + // (undocumented) + azureSynapse?: ResourceTypeFilter; + // (undocumented) + azureSynapseWorkspace?: ResourceTypeFilter; + // (undocumented) + none?: ResourceTypeFilter; + // (undocumented) + oracle?: ResourceTypeFilter; + // (undocumented) + powerBI?: ResourceTypeFilter; + // (undocumented) + sapEcc?: ResourceTypeFilter; + // (undocumented) + sapS4Hana?: ResourceTypeFilter; + // (undocumented) + sqlServerDatabase?: ResourceTypeFilter; + // (undocumented) + teradata?: ResourceTypeFilter; +} + +// @public (undocumented) +export type FileExtensionsType = "AVRO" | "ORC" | "PARQUET" | "JSON" | "TXT" | "XML" | "Documents" | "CSV" | "PSV" | "SSV" | "TSV" | "GZ" | "DOC" | "DOCM" | "DOCX" | "DOT" | "ODP" | "ODS" | "ODT" | "PDF" | "POT" | "PPS" | "PPSX" | "PPT" | "PPTM" | "PPTX" | "XLC" | "XLS" | "XLSB" | "XLSM" | "XLSX" | "XLT"; + +// @public (undocumented) +export type Filter = FilterBase & ProxyResource; + +// @public (undocumented) +export interface FilterBase { + // (undocumented) + properties?: FilterProperties; +} + +// @public (undocumented) +export type FilterProperties = FilterPropertiesBase & FilterPropertiesAutoGenerated; + +// @public (undocumented) +export interface FilterPropertiesAutoGenerated { + // (undocumented) + excludeUriPrefixes?: string[]; + // (undocumented) + includeUriPrefixes?: string[]; +} + +// @public (undocumented) +export interface FilterPropertiesBase { +} + +// @public (undocumented) +export interface FiltersCreateOrUpdate { + get(options?: FiltersGetParameters): Promise; + put(options?: FiltersCreateOrUpdateParameters): Promise; +} + +// @public +export interface FiltersCreateOrUpdate200Response extends HttpResponse { + // (undocumented) + body: Filter; + // (undocumented) + status: "200"; +} + +// @public +export interface FiltersCreateOrUpdate201Response extends HttpResponse { + // (undocumented) + body: Filter; + // (undocumented) + status: "201"; +} + +// @public (undocumented) +export interface FiltersCreateOrUpdateBodyParam { + // (undocumented) + body?: Filter; +} + +// @public +export interface FiltersCreateOrUpdatedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type FiltersCreateOrUpdateParameters = RequestParameters & FiltersCreateOrUpdateBodyParam; + +// @public +export interface FiltersGet200Response extends HttpResponse { + // (undocumented) + body: Filter; + // (undocumented) + status: "200"; +} + +// @public +export interface FiltersGetdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type FiltersGetParameters = RequestParameters; + +// @public +export interface KeyVaultConnectionsCreate200Response extends HttpResponse { + // (undocumented) + body: AzureKeyVault; + // (undocumented) + status: "200"; +} + +// @public (undocumented) +export interface KeyVaultConnectionsCreateBodyParam { + // (undocumented) + body: AzureKeyVault; +} + +// @public +export interface KeyVaultConnectionsCreatedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type KeyVaultConnectionsCreateParameters = RequestParameters & KeyVaultConnectionsCreateBodyParam; + +// @public (undocumented) +export interface KeyVaultConnectionsDelete { + delete(options?: KeyVaultConnectionsDeleteParameters): Promise; + get(options?: KeyVaultConnectionsGetParameters): Promise; + put(options: KeyVaultConnectionsCreateParameters): Promise; +} + +// @public +export interface KeyVaultConnectionsDelete200Response extends HttpResponse { + // (undocumented) + body: AzureKeyVault; + // (undocumented) + status: "200"; +} + +// @public +export interface KeyVaultConnectionsDelete204Response extends HttpResponse { + // (undocumented) + status: "204"; +} + +// @public +export interface KeyVaultConnectionsDeletedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type KeyVaultConnectionsDeleteParameters = RequestParameters; + +// @public +export interface KeyVaultConnectionsGet200Response extends HttpResponse { + // (undocumented) + body: AzureKeyVault; + // (undocumented) + status: "200"; +} + +// @public +export interface KeyVaultConnectionsGetdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type KeyVaultConnectionsGetParameters = RequestParameters; + +// @public (undocumented) +export interface KeyVaultConnectionsListAll { + get(options?: KeyVaultConnectionsListAllParameters): Promise; +} + +// @public +export interface KeyVaultConnectionsListAll200Response extends HttpResponse { + // (undocumented) + body: AzureKeyVaultList; + // (undocumented) + status: "200"; +} + +// @public +export interface KeyVaultConnectionsListAlldefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type KeyVaultConnectionsListAllParameters = RequestParameters; + +// @public (undocumented) +export type MitiScanProperties = MitiScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export interface MitiScanPropertiesBase { + // (undocumented) + maximumMemoryAllowedInGb?: string; + // (undocumented) + mitiCache?: string; +} + +// @public (undocumented) +export interface Notification { + // (undocumented) + code?: number; + // (undocumented) + message?: string; +} + +// @public (undocumented) +export interface OperationResponse { + // (undocumented) + endTime?: Date; + // (undocumented) + error?: OperationResponseError; + // (undocumented) + scanResultId?: string; + // (undocumented) + startTime?: Date; + // (undocumented) + status?: OperationStatus; +} + +// @public (undocumented) +export type OperationResponseError = OperationResponseErrorBase & ErrorInfo; + +// @public (undocumented) +export interface OperationResponseErrorBase { +} + +// @public (undocumented) +export type OperationStatus = "Accepted" | "InProgress" | "TransientFailure" | "Succeeded" | "Failed" | "Canceled"; + +// @public (undocumented) +export type OracleCredentialScan = OracleCredentialScanBase & Scan; + +// @public (undocumented) +export interface OracleCredentialScanBase { + // (undocumented) + properties?: OracleCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type OracleCredentialScanProperties = OracleCredentialScanPropertiesBase & MitiScanProperties; + +// @public (undocumented) +export type OracleCredentialScanPropertiesAutoGenerated = OracleCredentialScanPropertiesAutoGeneratedBase & OracleCredentialScanProperties; + +// @public (undocumented) +export interface OracleCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface OracleCredentialScanPropertiesBase { + // (undocumented) + credential?: OracleCredentialScanPropertiesCredential; + // (undocumented) + driverLocation?: string; + // (undocumented) + schema?: string; +} + +// @public (undocumented) +export type OracleCredentialScanPropertiesCredential = OracleCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface OracleCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type OracleDataSource = OracleDataSourceBase & DataSource; + +// @public (undocumented) +export interface OracleDataSourceBase { + // (undocumented) + properties?: OracleDataSourceProperties; +} + +// @public (undocumented) +export type OracleDataSourceProperties = OracleDataSourcePropertiesBase & OracleProperties; + +// @public (undocumented) +export interface OracleDataSourcePropertiesBase { +} + +// @public (undocumented) +export type OracleProperties = OraclePropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface OraclePropertiesBase { + // (undocumented) + host?: string; + // (undocumented) + port?: string; + // (undocumented) + service?: string; +} + +// @public (undocumented) +export type OracleScanRuleset = OracleScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface OracleScanRulesetBase { + // (undocumented) + properties?: OracleScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type OracleScanRulesetProperties = OracleScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type OracleScanRulesetPropertiesAutoGenerated = OracleScanRulesetPropertiesAutoGeneratedBase & OracleScanRulesetProperties; + +// @public (undocumented) +export interface OracleScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface OracleScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type OracleSystemScanRuleset = OracleSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface OracleSystemScanRulesetBase { + // (undocumented) + properties?: OracleSystemScanRulesetProperties; +} + +// @public (undocumented) +export type OracleSystemScanRulesetProperties = OracleSystemScanRulesetPropertiesBase & OracleScanRulesetProperties; + +// @public (undocumented) +export interface OracleSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type OracleUserPassScan = OracleUserPassScanBase & Scan; + +// @public (undocumented) +export interface OracleUserPassScanBase { + // (undocumented) + properties?: OracleUserPassScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type OracleUserPassScanProperties = OracleUserPassScanPropertiesBase & MitiScanProperties; + +// @public (undocumented) +export type OracleUserPassScanPropertiesAutoGenerated = OracleUserPassScanPropertiesAutoGeneratedBase & OracleUserPassScanProperties; + +// @public (undocumented) +export interface OracleUserPassScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface OracleUserPassScanPropertiesBase { + // (undocumented) + driverLocation?: string; + // (undocumented) + password?: string; + // (undocumented) + schema?: string; + // (undocumented) + username?: string; +} + +// @public (undocumented) +export type PowerBIDataSource = PowerBIDataSourceBase & DataSource; + +// @public (undocumented) +export interface PowerBIDataSourceBase { + // (undocumented) + properties?: PowerBIDataSourceProperties; +} + +// @public (undocumented) +export type PowerBIDataSourceProperties = PowerBIDataSourcePropertiesBase & PowerBIProperties; + +// @public (undocumented) +export interface PowerBIDataSourcePropertiesBase { +} + +// @public (undocumented) +export type PowerBIDelegatedScan = PowerBIDelegatedScanBase & Scan; + +// @public (undocumented) +export interface PowerBIDelegatedScanBase { + // (undocumented) + properties?: PowerBIDelegatedScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type PowerBIDelegatedScanProperties = PowerBIDelegatedScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type PowerBIDelegatedScanPropertiesAutoGenerated = PowerBIDelegatedScanPropertiesAutoGeneratedBase & PowerBIDelegatedScanProperties; + +// @public (undocumented) +export interface PowerBIDelegatedScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface PowerBIDelegatedScanPropertiesBase { + // (undocumented) + authenticationType?: string; + // (undocumented) + clientId?: string; + // (undocumented) + includePersonalWorkspaces?: boolean; + // (undocumented) + password?: string; + // (undocumented) + tenant?: string; + // (undocumented) + userName?: string; +} + +// @public (undocumented) +export type PowerBIMsiScan = PowerBIMsiScanBase & Scan; + +// @public (undocumented) +export interface PowerBIMsiScanBase { + // (undocumented) + properties?: PowerBIMsiScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type PowerBIMsiScanProperties = PowerBIMsiScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type PowerBIMsiScanPropertiesAutoGenerated = PowerBIMsiScanPropertiesAutoGeneratedBase & PowerBIMsiScanProperties; + +// @public (undocumented) +export interface PowerBIMsiScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface PowerBIMsiScanPropertiesBase { + // (undocumented) + includePersonalWorkspaces?: boolean; +} + +// @public (undocumented) +export type PowerBIProperties = PowerBIPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface PowerBIPropertiesBase { + // (undocumented) + tenant?: string; +} + +// @public (undocumented) +export type PowerBIScanRuleset = PowerBIScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface PowerBIScanRulesetBase { + // (undocumented) + properties?: PowerBIScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type PowerBIScanRulesetProperties = PowerBIScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type PowerBIScanRulesetPropertiesAutoGenerated = PowerBIScanRulesetPropertiesAutoGeneratedBase & PowerBIScanRulesetProperties; + +// @public (undocumented) +export interface PowerBIScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface PowerBIScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type PowerBISystemScanRuleset = PowerBISystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface PowerBISystemScanRulesetBase { + // (undocumented) + properties?: PowerBISystemScanRulesetProperties; +} + +// @public (undocumented) +export type PowerBISystemScanRulesetProperties = PowerBISystemScanRulesetPropertiesBase & PowerBIScanRulesetProperties; + +// @public (undocumented) +export interface PowerBISystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export interface ProxyResource { + // (undocumented) + id?: string; + // (undocumented) + name?: string; +} + +// @public (undocumented) +function PurviewScanning(Endpoint: string, credentials: TokenCredential, options?: ClientOptions): PurviewScanningRestClient; + +export default PurviewScanning; + +// @public (undocumented) +export type PurviewScanningRestClient = Client & { + path: Routes; +}; + +// @public (undocumented) +export interface RecurrenceSchedule { + additionalProperties?: RecurrenceScheduleAdditionalPropertiesDictionary; + // (undocumented) + hours?: number[]; + // (undocumented) + minutes?: number[]; + // (undocumented) + monthDays?: number[]; + // (undocumented) + monthlyOccurrences?: RecurrenceScheduleOccurrence[]; + // (undocumented) + weekDays?: "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"[]; +} + +// @public (undocumented) +export type RecurrenceScheduleAdditionalPropertiesDictionary = Record; + +// @public (undocumented) +export interface RecurrenceScheduleOccurrence { + additionalProperties?: RecurrenceScheduleOccurrenceAdditionalPropertiesDictionary; + // (undocumented) + day?: DayOfWeek; + // (undocumented) + occurrence?: number; +} + +// @public (undocumented) +export type RecurrenceScheduleOccurrenceAdditionalPropertiesDictionary = Record; + +// @public (undocumented) +export type RegexClassificationRulePattern = RegexClassificationRulePatternBase & ClassificationRulePattern; + +// @public (undocumented) +export interface RegexClassificationRulePatternBase { + // (undocumented) + pattern?: string; +} + +// @public (undocumented) +export interface ResourceNameFilter { + // (undocumented) + excludePrefixes?: string[]; + // (undocumented) + includePrefixes?: string[]; + // (undocumented) + resources?: string[]; +} + +// @public (undocumented) +export interface ResourceTypeFilter { + // (undocumented) + credential?: ResourceTypeFilterCredential; + // (undocumented) + resourceNameFilter?: ResourceTypeFilterResourceNameFilter; + // (undocumented) + scanRulesetName?: string; + // (undocumented) + scanRulesetType?: ScanRulesetType; +} + +// @public (undocumented) +export type ResourceTypeFilterCredential = ResourceTypeFilterCredentialBase & CredentialReference; + +// @public (undocumented) +export interface ResourceTypeFilterCredentialBase { +} + +// @public (undocumented) +export type ResourceTypeFilterResourceNameFilter = ResourceTypeFilterResourceNameFilterBase & ResourceNameFilter; + +// @public (undocumented) +export interface ResourceTypeFilterResourceNameFilterBase { +} + +// @public (undocumented) +export interface Routes { + (path: "/azureKeyVaults/{keyVaultName}", keyVaultName: string): KeyVaultConnectionsDelete; + (path: "/azureKeyVaults"): KeyVaultConnectionsListAll; + (path: "/classificationrules/{classificationRuleName}", classificationRuleName: string): ClassificationRulesDelete; + (path: "/classificationrules"): ClassificationRulesListAll; + (path: "/classificationrules/{classificationRuleName}/versions", classificationRuleName: string): ClassificationRulesListVersionsByClassificationRuleName; + (path: "/classificationrules/{classificationRuleName}/versions/{classificationRuleVersion}/:tag", classificationRuleName: string, classificationRuleVersion: string): ClassificationRulesTagClassificationVersion; + (path: "/datasources/{dataSourceName}", dataSourceName: string): DataSourcesDelete; + (path: "/datasources"): DataSourcesListAll; + (path: "/datasources/{dataSourceName}/scans/{scanName}/filters/custom", dataSourceName: string, scanName: string): FiltersCreateOrUpdate; + (path: "/datasources/{dataSourceName}/scans/{scanName}", dataSourceName: string, scanName: string): ScansDelete; + (path: "/datasources/{dataSourceName}/scans", dataSourceName: string): ScansListByDataSource; + (path: "/datasources/{dataSourceName}/scans/{scanName}/runs/{runId}", dataSourceName: string, scanName: string, runId: string): ScanResultRunScan; + (path: "/datasources/{dataSourceName}/scans/{scanName}/runs/{runId}/:cancel", dataSourceName: string, scanName: string, runId: string): ScanResultCancelScan; + (path: "/datasources/{dataSourceName}/scans/{scanName}/runs", dataSourceName: string, scanName: string): ScanResultListScanHistory; + (path: "/scanrulesets/{scanRulesetName}", scanRulesetName: string): ScanRulesetsDelete; + (path: "/scanrulesets"): ScanRulesetsListAll; + (path: "/systemScanRulesets"): SystemScanRulesetsListAll; + (path: "/systemScanRulesets/datasources/{dataSourceType}", dataSourceType: string): SystemScanRulesetsGet; + (path: "/systemScanRulesets/versions/{version}", version: string): SystemScanRulesetsGetByVersion; + (path: "/systemScanRulesets/versions/latest"): SystemScanRulesetsGetLatest; + (path: "/systemScanRulesets/versions"): SystemScanRulesetsListVersionsByDataSource; + (path: "/datasources/{dataSourceName}/scans/{scanName}/triggers/default", dataSourceName: string, scanName: string): TriggersDeleteTrigger; +} + +// @public (undocumented) +export type SapEccCredentialScan = SapEccCredentialScanBase & Scan; + +// @public (undocumented) +export interface SapEccCredentialScanBase { + // (undocumented) + properties?: SapEccCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SapEccCredentialScanProperties = SapEccCredentialScanPropertiesBase & MitiScanProperties; + +// @public (undocumented) +export type SapEccCredentialScanPropertiesAutoGenerated = SapEccCredentialScanPropertiesAutoGeneratedBase & SapEccCredentialScanProperties; + +// @public (undocumented) +export interface SapEccCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SapEccCredentialScanPropertiesBase { + // (undocumented) + clientId?: string; + // (undocumented) + credential?: SapEccCredentialScanPropertiesCredential; + // (undocumented) + jCoLibraryPath?: string; +} + +// @public (undocumented) +export type SapEccCredentialScanPropertiesCredential = SapEccCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface SapEccCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type SapEccDataSource = SapEccDataSourceBase & DataSource; + +// @public (undocumented) +export interface SapEccDataSourceBase { + // (undocumented) + properties?: SapEccDataSourceProperties; +} + +// @public (undocumented) +export type SapEccDataSourceProperties = SapEccDataSourcePropertiesBase & SapEccProperties; + +// @public (undocumented) +export interface SapEccDataSourcePropertiesBase { +} + +// @public (undocumented) +export type SapEccProperties = SapEccPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface SapEccPropertiesBase { + // (undocumented) + applicationServer?: string; + // (undocumented) + systemNumber?: string; +} + +// @public (undocumented) +export type SapEccScanRuleset = SapEccScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface SapEccScanRulesetBase { + // (undocumented) + properties?: SapEccScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SapEccScanRulesetProperties = SapEccScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type SapEccScanRulesetPropertiesAutoGenerated = SapEccScanRulesetPropertiesAutoGeneratedBase & SapEccScanRulesetProperties; + +// @public (undocumented) +export interface SapEccScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SapEccScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type SapEccSystemScanRuleset = SapEccSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface SapEccSystemScanRulesetBase { + // (undocumented) + properties?: SapEccSystemScanRulesetProperties; +} + +// @public (undocumented) +export type SapEccSystemScanRulesetProperties = SapEccSystemScanRulesetPropertiesBase & SapEccScanRulesetProperties; + +// @public (undocumented) +export interface SapEccSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type SapEccUserPassScan = SapEccUserPassScanBase & Scan; + +// @public (undocumented) +export interface SapEccUserPassScanBase { + // (undocumented) + properties?: SapEccUserPassScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SapEccUserPassScanProperties = SapEccUserPassScanPropertiesBase & MitiScanProperties; + +// @public (undocumented) +export type SapEccUserPassScanPropertiesAutoGenerated = SapEccUserPassScanPropertiesAutoGeneratedBase & SapEccUserPassScanProperties; + +// @public (undocumented) +export interface SapEccUserPassScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SapEccUserPassScanPropertiesBase { + // (undocumented) + clientId?: string; + // (undocumented) + jCoLibraryPath?: string; + // (undocumented) + password?: string; + // (undocumented) + username?: string; +} + +// @public (undocumented) +export type SapS4HanaDataSource = SapS4HanaDataSourceBase & DataSource; + +// @public (undocumented) +export interface SapS4HanaDataSourceBase { + // (undocumented) + properties?: SapS4HanaDataSourceProperties; +} + +// @public (undocumented) +export type SapS4HanaDataSourceProperties = SapS4HanaDataSourcePropertiesBase & SapS4HanaProperties; + +// @public (undocumented) +export interface SapS4HanaDataSourcePropertiesBase { +} + +// @public (undocumented) +export type SapS4HanaProperties = SapS4HanaPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface SapS4HanaPropertiesBase { + // (undocumented) + applicationServer?: string; + // (undocumented) + systemNumber?: string; +} + +// @public (undocumented) +export type SapS4HanaSapS4HanaCredentialScan = SapS4HanaSapS4HanaCredentialScanBase & Scan; + +// @public (undocumented) +export interface SapS4HanaSapS4HanaCredentialScanBase { + // (undocumented) + properties?: SapS4HanaSapS4HanaCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SapS4HanaSapS4HanaCredentialScanProperties = SapS4HanaSapS4HanaCredentialScanPropertiesBase & MitiScanProperties; + +// @public (undocumented) +export type SapS4HanaSapS4HanaCredentialScanPropertiesAutoGenerated = SapS4HanaSapS4HanaCredentialScanPropertiesAutoGeneratedBase & SapS4HanaSapS4HanaCredentialScanProperties; + +// @public (undocumented) +export interface SapS4HanaSapS4HanaCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SapS4HanaSapS4HanaCredentialScanPropertiesBase { + // (undocumented) + clientId?: string; + // (undocumented) + credential?: SapS4HanaSapS4HanaCredentialScanPropertiesCredential; + // (undocumented) + jCoLibraryPath?: string; +} + +// @public (undocumented) +export type SapS4HanaSapS4HanaCredentialScanPropertiesCredential = SapS4HanaSapS4HanaCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface SapS4HanaSapS4HanaCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type SapS4HanaSapS4HanaUserPassScan = SapS4HanaSapS4HanaUserPassScanBase & Scan; + +// @public (undocumented) +export interface SapS4HanaSapS4HanaUserPassScanBase { + // (undocumented) + properties?: SapS4HanaSapS4HanaUserPassScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SapS4HanaSapS4HanaUserPassScanProperties = SapS4HanaSapS4HanaUserPassScanPropertiesBase & MitiScanProperties; + +// @public (undocumented) +export type SapS4HanaSapS4HanaUserPassScanPropertiesAutoGenerated = SapS4HanaSapS4HanaUserPassScanPropertiesAutoGeneratedBase & SapS4HanaSapS4HanaUserPassScanProperties; + +// @public (undocumented) +export interface SapS4HanaSapS4HanaUserPassScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SapS4HanaSapS4HanaUserPassScanPropertiesBase { + // (undocumented) + clientId?: string; + // (undocumented) + jCoLibraryPath?: string; + // (undocumented) + password?: string; + // (undocumented) + username?: string; +} + +// @public (undocumented) +export type SapS4HanaScanRuleset = SapS4HanaScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface SapS4HanaScanRulesetBase { + // (undocumented) + properties?: SapS4HanaScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SapS4HanaScanRulesetProperties = SapS4HanaScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type SapS4HanaScanRulesetPropertiesAutoGenerated = SapS4HanaScanRulesetPropertiesAutoGeneratedBase & SapS4HanaScanRulesetProperties; + +// @public (undocumented) +export interface SapS4HanaScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SapS4HanaScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type SapS4HanaSystemScanRuleset = SapS4HanaSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface SapS4HanaSystemScanRulesetBase { + // (undocumented) + properties?: SapS4HanaSystemScanRulesetProperties; +} + +// @public (undocumented) +export type SapS4HanaSystemScanRulesetProperties = SapS4HanaSystemScanRulesetPropertiesBase & SapS4HanaScanRulesetProperties; + +// @public (undocumented) +export interface SapS4HanaSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type Scan = ScanBase & ProxyResource; + +// @public (undocumented) +export type ScanAuthorizationType = "AzureSubscriptionCredential" | "AzureSubscriptionMsi" | "AzureResourceGroupCredential" | "AzureResourceGroupMsi" | "AzureSynapseWorkspaceCredential" | "AzureSynapseWorkspaceMsi" | "AzureSynapseCredential" | "AzureSynapseMsi" | "AdlsGen1Credential" | "AdlsGen1Msi" | "AdlsGen2Credential" | "AdlsGen2Msi" | "AmazonAccountCredential" | "AmazonS3Credential" | "AmazonS3RoleARN" | "AmazonSqlCredential" | "AzureCosmosDbCredential" | "AzureDataExplorerCredential" | "AzureDataExplorerMsi" | "AzureFileServiceCredential" | "AzureSqlDatabaseCredential" | "AzureSqlDatabaseMsi" | "AmazonPostgreSqlCredential" | "AzurePostgreSqlCredential" | "SqlServerDatabaseCredential" | "AzureSqlDatabaseManagedInstanceCredential" | "AzureSqlDatabaseManagedInstanceMsi" | "AzureSqlDataWarehouseCredential" | "AzureSqlDataWarehouseMsi" | "AzureMySqlCredential" | "AzureStorageCredential" | "AzureStorageMsi" | "TeradataTeradataCredential" | "TeradataTeradataUserPass" | "TeradataUserPass" | "OracleOracleCredential" | "OracleOracleUserPass" | "SapS4HanaSapS4HanaCredential" | "SapS4HanaSapS4HanaUserPass" | "SapEccSapEccCredential" | "SapEccSapEccUserPass" | "PowerBIDelegated" | "PowerBIMsi"; + +// @public (undocumented) +export interface ScanBase { + // (undocumented) + kind: ScanAuthorizationType; + // (undocumented) + scanResults?: ScanResult[]; +} + +// @public (undocumented) +export interface ScanDiagnostics { + exceptionCountMap?: ScanDiagnosticsExceptionCountMapDictionary; + // (undocumented) + notifications?: Notification[]; +} + +// @public (undocumented) +export type ScanDiagnosticsExceptionCountMapDictionary = Record; + +// @public (undocumented) +export interface ScanHistoryList { + // (undocumented) + count?: number; + // (undocumented) + nextLink?: string; + // (undocumented) + value?: ScanResult[]; +} + +// @public (undocumented) +export type ScanLevelType = "Full" | "Incremental"; + +// @public (undocumented) +export interface ScanList { + // (undocumented) + count?: number; + // (undocumented) + nextLink?: string; + // (undocumented) + value?: Scan[]; +} + +// @public (undocumented) +export interface ScanningRule { + // (undocumented) + customFileExtensions?: CustomFileExtension[]; + // (undocumented) + fileExtensions?: "AVRO" | "ORC" | "PARQUET" | "JSON" | "TXT" | "XML" | "Documents" | "CSV" | "PSV" | "SSV" | "TSV" | "GZ" | "DOC" | "DOCM" | "DOCX" | "DOT" | "ODP" | "ODS" | "ODT" | "PDF" | "POT" | "PPS" | "PPSX" | "PPT" | "PPTM" | "PPTX" | "XLC" | "XLS" | "XLSB" | "XLSM" | "XLSX" | "XLT"[]; +} + +// @public (undocumented) +export type ScanningRuleScanRulesetProperties = ScanningRuleScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export interface ScanningRuleScanRulesetPropertiesBase { + // (undocumented) + scanningRule?: ScanningRuleScanRulesetPropertiesScanningRule; +} + +// @public (undocumented) +export type ScanningRuleScanRulesetPropertiesScanningRule = ScanningRuleScanRulesetPropertiesScanningRuleBase & ScanningRule; + +// @public (undocumented) +export interface ScanningRuleScanRulesetPropertiesScanningRuleBase { +} + +// @public (undocumented) +export interface ScanProperties { + // (undocumented) + connectedVia?: ScanPropertiesConnectedVia; + // (undocumented) + createdAt?: Date; + // (undocumented) + lastModifiedAt?: Date; + // (undocumented) + scanRulesetName?: string; + // (undocumented) + scanRulesetType?: ScanRulesetType; + // (undocumented) + workers?: number; +} + +// @public (undocumented) +export type ScanPropertiesConnectedVia = ScanPropertiesConnectedViaBase & ConnectedVia; + +// @public (undocumented) +export interface ScanPropertiesConnectedViaBase { +} + +// @public (undocumented) +export interface ScanResult { + // (undocumented) + assetsClassified?: number; + // (undocumented) + assetsDiscovered?: number; + // (undocumented) + dataSourceType?: DataSourceType; + // (undocumented) + diagnostics?: ScanResultDiagnostics; + // (undocumented) + endTime?: Date; + // (undocumented) + error?: ScanResultError; + // (undocumented) + errorMessage?: string; + // (undocumented) + id?: string; + // (undocumented) + parentId?: string; + // (undocumented) + pipelineStartTime?: Date; + // (undocumented) + queuedTime?: Date; + // (undocumented) + resourceId?: string; + // (undocumented) + runType?: string; + // (undocumented) + scanLevelType?: ScanLevelType; + // (undocumented) + scanRulesetType?: ScanRulesetType; + // (undocumented) + scanRulesetVersion?: number; + // (undocumented) + startTime?: Date; + // (undocumented) + status?: string; +} + +// @public (undocumented) +export interface ScanResultCancelScan { + post(options?: ScanResultCancelScanParameters): Promise; +} + +// @public +export interface ScanResultCancelScan202Response extends HttpResponse { + // (undocumented) + body: OperationResponse; + // (undocumented) + status: "202"; +} + +// @public +export interface ScanResultCancelScandefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScanResultCancelScanParameters = RequestParameters; + +// @public (undocumented) +export type ScanResultDiagnostics = ScanResultDiagnosticsBase & ScanDiagnostics; + +// @public (undocumented) +export interface ScanResultDiagnosticsBase { +} + +// @public (undocumented) +export type ScanResultError = ScanResultErrorBase & ErrorModel; + +// @public (undocumented) +export interface ScanResultErrorBase { +} + +// @public (undocumented) +export interface ScanResultListScanHistory { + get(options?: ScanResultListScanHistoryParameters): Promise; +} + +// @public +export interface ScanResultListScanHistory200Response extends HttpResponse { + // (undocumented) + body: ScanHistoryList; + // (undocumented) + status: "200"; +} + +// @public +export interface ScanResultListScanHistorydefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScanResultListScanHistoryParameters = RequestParameters; + +// @public (undocumented) +export interface ScanResultRunScan { + put(options?: ScanResultRunScanParameters): Promise; +} + +// @public +export interface ScanResultRunScan202Response extends HttpResponse { + // (undocumented) + body: OperationResponse; + // (undocumented) + status: "202"; +} + +// @public +export interface ScanResultRunScandefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScanResultRunScanParameters = RequestParameters & ScanResultRunScanQueryParam; + +// @public (undocumented) +export interface ScanResultRunScanQueryParam { + // (undocumented) + queryParameters?: ScanResultRunScanQueryParamProperties; +} + +// @public (undocumented) +export interface ScanResultRunScanQueryParamProperties { + // (undocumented) + scanLevel?: ScanLevelType; +} + +// @public (undocumented) +export type ScanRuleset = ScanRulesetBase & VersionedScanRuleset; + +// @public (undocumented) +export interface ScanRulesetBase { + // (undocumented) + kind: DataSourceType; +} + +// @public (undocumented) +export interface ScanRulesetList { + // (undocumented) + count?: number; + // (undocumented) + nextLink?: string; + // (undocumented) + value?: ScanRuleset[]; +} + +// @public (undocumented) +export interface ScanRulesetProperties { + // (undocumented) + createdAt?: Date; + // (undocumented) + description?: string; + // (undocumented) + excludedSystemClassifications?: string[]; + // (undocumented) + includedCustomClassificationRuleNames?: string[]; + // (undocumented) + lastModifiedAt?: Date; +} + +// @public +export interface ScanRulesetsCreateOrUpdate200Response extends HttpResponse { + // (undocumented) + body: ScanRuleset; + // (undocumented) + status: "200"; +} + +// @public +export interface ScanRulesetsCreateOrUpdate201Response extends HttpResponse { + // (undocumented) + body: ScanRuleset; + // (undocumented) + status: "201"; +} + +// @public (undocumented) +export interface ScanRulesetsCreateOrUpdateBodyParam { + // (undocumented) + body?: ScanRuleset; +} + +// @public +export interface ScanRulesetsCreateOrUpdatedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScanRulesetsCreateOrUpdateParameters = RequestParameters & ScanRulesetsCreateOrUpdateBodyParam; + +// @public (undocumented) +export interface ScanRulesetsDelete { + delete(options?: ScanRulesetsDeleteParameters): Promise; + get(options?: ScanRulesetsGetParameters): Promise; + put(options?: ScanRulesetsCreateOrUpdateParameters): Promise; +} + +// @public +export interface ScanRulesetsDelete200Response extends HttpResponse { + // (undocumented) + body: ScanRuleset; + // (undocumented) + status: "200"; +} + +// @public +export interface ScanRulesetsDelete204Response extends HttpResponse { + // (undocumented) + status: "204"; +} + +// @public +export interface ScanRulesetsDeletedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScanRulesetsDeleteParameters = RequestParameters; + +// @public +export interface ScanRulesetsGet200Response extends HttpResponse { + // (undocumented) + body: ScanRuleset; + // (undocumented) + status: "200"; +} + +// @public +export interface ScanRulesetsGetdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScanRulesetsGetParameters = RequestParameters; + +// @public (undocumented) +export interface ScanRulesetsListAll { + get(options?: ScanRulesetsListAllParameters): Promise; +} + +// @public +export interface ScanRulesetsListAll200Response extends HttpResponse { + // (undocumented) + body: ScanRulesetList; + // (undocumented) + status: "200"; +} + +// @public +export interface ScanRulesetsListAlldefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScanRulesetsListAllParameters = RequestParameters; + +// @public (undocumented) +export type ScanRulesetStatus = "Enabled" | "Disabled"; + +// @public (undocumented) +export type ScanRulesetType = "Custom" | "System"; + +// @public +export interface ScansCreateOrUpdate200Response extends HttpResponse { + // (undocumented) + body: Scan; + // (undocumented) + status: "200"; +} + +// @public +export interface ScansCreateOrUpdate201Response extends HttpResponse { + // (undocumented) + body: Scan; + // (undocumented) + status: "201"; +} + +// @public (undocumented) +export interface ScansCreateOrUpdateBodyParam { + // (undocumented) + body: Scan; +} + +// @public +export interface ScansCreateOrUpdatedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScansCreateOrUpdateParameters = RequestParameters & ScansCreateOrUpdateBodyParam; + +// @public (undocumented) +export interface ScansDelete { + delete(options?: ScansDeleteParameters): Promise; + get(options?: ScansGetParameters): Promise; + put(options: ScansCreateOrUpdateParameters): Promise; +} + +// @public +export interface ScansDelete200Response extends HttpResponse { + // (undocumented) + body: Scan; + // (undocumented) + status: "200"; +} + +// @public +export interface ScansDelete204Response extends HttpResponse { + // (undocumented) + status: "204"; +} + +// @public +export interface ScansDeletedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScansDeleteParameters = RequestParameters; + +// @public +export interface ScansGet200Response extends HttpResponse { + // (undocumented) + body: Scan; + // (undocumented) + status: "200"; +} + +// @public +export interface ScansGetdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScansGetParameters = RequestParameters; + +// @public (undocumented) +export interface ScansListByDataSource { + get(options?: ScansListByDataSourceParameters): Promise; +} + +// @public +export interface ScansListByDataSource200Response extends HttpResponse { + // (undocumented) + body: ScanList; + // (undocumented) + status: "200"; +} + +// @public +export interface ScansListByDataSourcedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type ScansListByDataSourceParameters = RequestParameters; + +// @public (undocumented) +export type SqlServerDatabaseCredentialScan = SqlServerDatabaseCredentialScanBase & Scan; + +// @public (undocumented) +export interface SqlServerDatabaseCredentialScanBase { + // (undocumented) + properties?: SqlServerDatabaseCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SqlServerDatabaseCredentialScanProperties = SqlServerDatabaseCredentialScanPropertiesBase & AzureSqlCredentialScanProperties; + +// @public (undocumented) +export type SqlServerDatabaseCredentialScanPropertiesAutoGenerated = SqlServerDatabaseCredentialScanPropertiesAutoGeneratedBase & SqlServerDatabaseCredentialScanProperties; + +// @public (undocumented) +export interface SqlServerDatabaseCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SqlServerDatabaseCredentialScanPropertiesBase { +} + +// @public (undocumented) +export type SqlServerDatabaseDataSource = SqlServerDatabaseDataSourceBase & DataSource; + +// @public (undocumented) +export interface SqlServerDatabaseDataSourceBase { + // (undocumented) + properties?: SqlServerDatabaseDataSourceProperties; +} + +// @public (undocumented) +export type SqlServerDatabaseDataSourceProperties = SqlServerDatabaseDataSourcePropertiesBase & SqlServerDatabaseProperties; + +// @public (undocumented) +export interface SqlServerDatabaseDataSourcePropertiesBase { +} + +// @public (undocumented) +export type SqlServerDatabaseProperties = SqlServerDatabasePropertiesBase & AzureDataSourceProperties; + +// @public (undocumented) +export interface SqlServerDatabasePropertiesBase { + // (undocumented) + serverEndpoint?: string; +} + +// @public (undocumented) +export type SqlServerDatabaseScanRuleset = SqlServerDatabaseScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface SqlServerDatabaseScanRulesetBase { + // (undocumented) + properties?: SqlServerDatabaseScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type SqlServerDatabaseScanRulesetProperties = SqlServerDatabaseScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type SqlServerDatabaseScanRulesetPropertiesAutoGenerated = SqlServerDatabaseScanRulesetPropertiesAutoGeneratedBase & SqlServerDatabaseScanRulesetProperties; + +// @public (undocumented) +export interface SqlServerDatabaseScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface SqlServerDatabaseScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type SqlServerDatabaseSystemScanRuleset = SqlServerDatabaseSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface SqlServerDatabaseSystemScanRulesetBase { + // (undocumented) + properties?: SqlServerDatabaseSystemScanRulesetProperties; +} + +// @public (undocumented) +export type SqlServerDatabaseSystemScanRulesetProperties = SqlServerDatabaseSystemScanRulesetPropertiesBase & SqlServerDatabaseScanRulesetProperties; + +// @public (undocumented) +export interface SqlServerDatabaseSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type SystemClassificationRule = SystemClassificationRuleBase & ClassificationRule; + +// @public (undocumented) +export interface SystemClassificationRuleBase { + // (undocumented) + properties?: SystemClassificationRulePropertiesAutoGenerated; +} + +// @public (undocumented) +export interface SystemClassificationRuleProperties { + // (undocumented) + classificationName?: string; + // (undocumented) + createdAt?: Date; + // (undocumented) + description?: string; + // (undocumented) + lastModifiedAt?: Date; + // (undocumented) + ruleStatus?: ClassificationRuleStatus; + // (undocumented) + version?: number; +} + +// @public (undocumented) +export type SystemClassificationRulePropertiesAutoGenerated = SystemClassificationRulePropertiesAutoGeneratedBase & SystemClassificationRuleProperties; + +// @public (undocumented) +export interface SystemClassificationRulePropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export type SystemScanRuleset = SystemScanRulesetBase & VersionedScanRuleset; + +// @public (undocumented) +export interface SystemScanRulesetBase { + // (undocumented) + kind: DataSourceType; +} + +// @public (undocumented) +export interface SystemScanRulesetList { + // (undocumented) + count?: number; + // (undocumented) + nextLink?: string; + // (undocumented) + value?: SystemScanRuleset[]; +} + +// @public (undocumented) +export interface SystemScanRulesetsGet { + get(options?: SystemScanRulesetsGetParameters): Promise; +} + +// @public +export interface SystemScanRulesetsGet200Response extends HttpResponse { + // (undocumented) + body: SystemScanRuleset; + // (undocumented) + status: "200"; +} + +// @public (undocumented) +export interface SystemScanRulesetsGetByVersion { + get(options?: SystemScanRulesetsGetByVersionParameters): Promise; +} + +// @public +export interface SystemScanRulesetsGetByVersion200Response extends HttpResponse { + // (undocumented) + body: SystemScanRuleset; + // (undocumented) + status: "200"; +} + +// @public +export interface SystemScanRulesetsGetByVersiondefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type SystemScanRulesetsGetByVersionParameters = RequestParameters & SystemScanRulesetsGetByVersionQueryParam; + +// @public (undocumented) +export interface SystemScanRulesetsGetByVersionQueryParam { + // (undocumented) + queryParameters?: SystemScanRulesetsGetByVersionQueryParamProperties; +} + +// @public (undocumented) +export interface SystemScanRulesetsGetByVersionQueryParamProperties { + // (undocumented) + dataSourceType?: DataSourceType; +} + +// @public +export interface SystemScanRulesetsGetdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export interface SystemScanRulesetsGetLatest { + get(options?: SystemScanRulesetsGetLatestParameters): Promise; +} + +// @public +export interface SystemScanRulesetsGetLatest200Response extends HttpResponse { + // (undocumented) + body: SystemScanRuleset; + // (undocumented) + status: "200"; +} + +// @public +export interface SystemScanRulesetsGetLatestdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type SystemScanRulesetsGetLatestParameters = RequestParameters & SystemScanRulesetsGetLatestQueryParam; + +// @public (undocumented) +export interface SystemScanRulesetsGetLatestQueryParam { + // (undocumented) + queryParameters?: SystemScanRulesetsGetLatestQueryParamProperties; +} + +// @public (undocumented) +export interface SystemScanRulesetsGetLatestQueryParamProperties { + // (undocumented) + dataSourceType?: DataSourceType; +} + +// @public (undocumented) +export type SystemScanRulesetsGetParameters = RequestParameters; + +// @public (undocumented) +export interface SystemScanRulesetsListAll { + get(options?: SystemScanRulesetsListAllParameters): Promise; +} + +// @public +export interface SystemScanRulesetsListAll200Response extends HttpResponse { + // (undocumented) + body: SystemScanRulesetList; + // (undocumented) + status: "200"; +} + +// @public +export interface SystemScanRulesetsListAlldefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type SystemScanRulesetsListAllParameters = RequestParameters; + +// @public (undocumented) +export interface SystemScanRulesetsListVersionsByDataSource { + get(options?: SystemScanRulesetsListVersionsByDataSourceParameters): Promise; +} + +// @public +export interface SystemScanRulesetsListVersionsByDataSource200Response extends HttpResponse { + // (undocumented) + body: SystemScanRulesetList; + // (undocumented) + status: "200"; +} + +// @public +export interface SystemScanRulesetsListVersionsByDataSourcedefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type SystemScanRulesetsListVersionsByDataSourceParameters = RequestParameters & SystemScanRulesetsListVersionsByDataSourceQueryParam; + +// @public (undocumented) +export interface SystemScanRulesetsListVersionsByDataSourceQueryParam { + // (undocumented) + queryParameters?: SystemScanRulesetsListVersionsByDataSourceQueryParamProperties; +} + +// @public (undocumented) +export interface SystemScanRulesetsListVersionsByDataSourceQueryParamProperties { + // (undocumented) + dataSourceType?: DataSourceType; +} + +// @public (undocumented) +export type TeradataCredentialScan = TeradataCredentialScanBase & Scan; + +// @public (undocumented) +export interface TeradataCredentialScanBase { + // (undocumented) + properties?: TeradataCredentialScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type TeradataCredentialScanProperties = TeradataCredentialScanPropertiesBase & MitiScanProperties; + +// @public (undocumented) +export type TeradataCredentialScanPropertiesAutoGenerated = TeradataCredentialScanPropertiesAutoGeneratedBase & TeradataCredentialScanProperties; + +// @public (undocumented) +export interface TeradataCredentialScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface TeradataCredentialScanPropertiesBase { + // (undocumented) + credential?: TeradataCredentialScanPropertiesCredential; + // (undocumented) + driverLocation?: string; + // (undocumented) + schema?: string; +} + +// @public (undocumented) +export type TeradataCredentialScanPropertiesCredential = TeradataCredentialScanPropertiesCredentialBase & CredentialReference; + +// @public (undocumented) +export interface TeradataCredentialScanPropertiesCredentialBase { +} + +// @public (undocumented) +export type TeradataDataSource = TeradataDataSourceBase & DataSource; + +// @public (undocumented) +export interface TeradataDataSourceBase { + // (undocumented) + properties?: TeradataDataSourceProperties; +} + +// @public (undocumented) +export type TeradataDataSourceProperties = TeradataDataSourcePropertiesBase & TeradataProperties; + +// @public (undocumented) +export interface TeradataDataSourcePropertiesBase { +} + +// @public (undocumented) +export type TeradataProperties = TeradataPropertiesBase & DataSourceProperties; + +// @public (undocumented) +export interface TeradataPropertiesBase { + // (undocumented) + host?: string; +} + +// @public (undocumented) +export type TeradataScanRuleset = TeradataScanRulesetBase & ScanRuleset; + +// @public (undocumented) +export interface TeradataScanRulesetBase { + // (undocumented) + properties?: TeradataScanRulesetPropertiesAutoGenerated; +} + +// @public (undocumented) +export type TeradataScanRulesetProperties = TeradataScanRulesetPropertiesBase & ScanRulesetProperties; + +// @public (undocumented) +export type TeradataScanRulesetPropertiesAutoGenerated = TeradataScanRulesetPropertiesAutoGeneratedBase & TeradataScanRulesetProperties; + +// @public (undocumented) +export interface TeradataScanRulesetPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface TeradataScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type TeradataSystemScanRuleset = TeradataSystemScanRulesetBase & SystemScanRuleset; + +// @public (undocumented) +export interface TeradataSystemScanRulesetBase { + // (undocumented) + properties?: TeradataSystemScanRulesetProperties; +} + +// @public (undocumented) +export type TeradataSystemScanRulesetProperties = TeradataSystemScanRulesetPropertiesBase & TeradataScanRulesetProperties; + +// @public (undocumented) +export interface TeradataSystemScanRulesetPropertiesBase { +} + +// @public (undocumented) +export type TeradataUserPassScan = TeradataUserPassScanBase & Scan; + +// @public (undocumented) +export type TeradataUserPassScanAutoGenerated = TeradataUserPassScanAutoGeneratedBase & Scan; + +// @public (undocumented) +export interface TeradataUserPassScanAutoGeneratedBase { + // (undocumented) + properties?: TeradataUserPassScanPropertiesAutoGenerated3; +} + +// @public (undocumented) +export interface TeradataUserPassScanBase { + // (undocumented) + properties?: TeradataUserPassScanPropertiesAutoGenerated; +} + +// @public (undocumented) +export type TeradataUserPassScanProperties = TeradataUserPassScanPropertiesBase & ScanProperties; + +// @public (undocumented) +export type TeradataUserPassScanPropertiesAutoGenerated = TeradataUserPassScanPropertiesAutoGeneratedBase & TeradataUserPassScanProperties; + +// @public (undocumented) +export type TeradataUserPassScanPropertiesAutoGenerated2 = TeradataUserPassScanPropertiesAutoGenerated2Base & MitiScanProperties; + +// @public (undocumented) +export interface TeradataUserPassScanPropertiesAutoGenerated2Base { + // (undocumented) + driverLocation?: string; + // (undocumented) + password?: string; + // (undocumented) + schema?: string; + // (undocumented) + username?: string; +} + +// @public (undocumented) +export type TeradataUserPassScanPropertiesAutoGenerated3 = TeradataUserPassScanPropertiesAutoGenerated3Base & TeradataUserPassScanPropertiesAutoGenerated2; + +// @public (undocumented) +export interface TeradataUserPassScanPropertiesAutoGenerated3Base { +} + +// @public (undocumented) +export interface TeradataUserPassScanPropertiesAutoGeneratedBase { +} + +// @public (undocumented) +export interface TeradataUserPassScanPropertiesBase { + // (undocumented) + password?: string; + // (undocumented) + username?: string; +} + +// @public (undocumented) +export type Trigger = TriggerBase & ProxyResource; + +// @public (undocumented) +export interface TriggerBase { + // (undocumented) + properties?: TriggerProperties; +} + +// @public (undocumented) +export type TriggerFrequency = "Week" | "Month"; + +// @public (undocumented) +export type TriggerProperties = TriggerPropertiesBase & TriggerPropertiesAutoGenerated; + +// @public (undocumented) +export interface TriggerPropertiesAutoGenerated { + // (undocumented) + createdAt?: Date; + // (undocumented) + incrementalScanStartTime?: Date; + // (undocumented) + lastModifiedAt?: Date; + // (undocumented) + lastScheduled?: Date; + // (undocumented) + recurrence?: TriggerPropertiesRecurrence; + // (undocumented) + recurrenceInterval?: string; + // (undocumented) + scanLevel?: ScanLevelType; +} + +// @public (undocumented) +export interface TriggerPropertiesBase { +} + +// @public (undocumented) +export type TriggerPropertiesRecurrence = TriggerPropertiesRecurrenceBase & TriggerRecurrence; + +// @public (undocumented) +export interface TriggerPropertiesRecurrenceBase { +} + +// @public (undocumented) +export interface TriggerRecurrence { + // (undocumented) + endTime?: Date; + // (undocumented) + frequency?: TriggerFrequency; + // (undocumented) + interval?: number; + // (undocumented) + schedule?: TriggerRecurrenceSchedule; + // (undocumented) + startTime?: Date; + // (undocumented) + timeZone?: string; +} + +// @public (undocumented) +export type TriggerRecurrenceSchedule = TriggerRecurrenceScheduleBase & RecurrenceSchedule; + +// @public (undocumented) +export interface TriggerRecurrenceScheduleBase { +} + +// @public +export interface TriggersCreateTrigger200Response extends HttpResponse { + // (undocumented) + body: Trigger; + // (undocumented) + status: "200"; +} + +// @public +export interface TriggersCreateTrigger201Response extends HttpResponse { + // (undocumented) + body: Trigger; + // (undocumented) + status: "201"; +} + +// @public (undocumented) +export interface TriggersCreateTriggerBodyParam { + // (undocumented) + body: Trigger; +} + +// @public +export interface TriggersCreateTriggerdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type TriggersCreateTriggerParameters = RequestParameters & TriggersCreateTriggerBodyParam; + +// @public (undocumented) +export interface TriggersDeleteTrigger { + delete(options?: TriggersDeleteTriggerParameters): Promise; + get(options?: TriggersGetTriggerParameters): Promise; + put(options: TriggersCreateTriggerParameters): Promise; +} + +// @public +export interface TriggersDeleteTrigger200Response extends HttpResponse { + // (undocumented) + body: Trigger; + // (undocumented) + status: "200"; +} + +// @public +export interface TriggersDeleteTrigger204Response extends HttpResponse { + // (undocumented) + status: "204"; +} + +// @public +export interface TriggersDeleteTriggerdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type TriggersDeleteTriggerParameters = RequestParameters; + +// @public +export interface TriggersGetTrigger200Response extends HttpResponse { + // (undocumented) + body: Trigger; + // (undocumented) + status: "200"; +} + +// @public +export interface TriggersGetTriggerdefaultResponse extends HttpResponse { + // (undocumented) + body: ErrorResponseModel; + // (undocumented) + status: "500"; +} + +// @public (undocumented) +export type TriggersGetTriggerParameters = RequestParameters; + +// @public (undocumented) +export type VersionedScanRuleset = VersionedScanRulesetBase & ProxyResource; + +// @public (undocumented) +export interface VersionedScanRulesetBase { + // (undocumented) + scanRulesetType?: ScanRulesetType; + // (undocumented) + status?: ScanRulesetStatus; + // (undocumented) + version?: number; +} + + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/purview/purview-scanning-rest/rollup.config.js b/sdk/purview/purview-scanning-rest/rollup.config.js new file mode 100644 index 000000000000..5d7deee44c14 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/rollup.config.js @@ -0,0 +1,3 @@ +import { makeConfig } from "@azure/dev-tool/shared-config/rollup"; + +export default makeConfig(require("./package.json")); diff --git a/sdk/purview/purview-scanning-rest/sample.env b/sdk/purview/purview-scanning-rest/sample.env new file mode 100644 index 000000000000..268081afed92 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/sample.env @@ -0,0 +1,7 @@ +# Purview Scanning resource endpoint +ENDPOINT= + +# App registration secret for AAD authentication +AZURE_CLIENT_SECRET= +AZURE_CLIENT_ID= +AZURE_TENANT_ID= \ No newline at end of file diff --git a/sdk/purview/purview-scanning-rest/samples-dev/listDatasources.ts b/sdk/purview/purview-scanning-rest/samples-dev/listDatasources.ts new file mode 100644 index 000000000000..c585a0d0bfbf --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples-dev/listDatasources.ts @@ -0,0 +1,32 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +/** + * This sample demonstrates how get a list of datasources + * + * @summary gets a list of datasources + * @azsdk-weight 40 + */ + +import PurviewScanning from "@azure-rest/purview-scanning"; +import { DefaultAzureCredential } from "@azure/identity"; +import dotenv from "dotenv"; + +dotenv.config(); + +const endpoint = process.env["ENDPOINT"] || ""; + +async function main() { + console.log("== List dataSources sample =="); + const client = PurviewScanning(endpoint, new DefaultAzureCredential()); + + const dataSources = await client.path("/datasources").get(); + + if (dataSources.status !== "200") { + throw dataSources.body.error; + } + + console.log(dataSources.body.value?.map((ds) => ds.name).join("\n")); +} + +main().catch(console.error); diff --git a/sdk/purview/purview-scanning-rest/samples/v1/javascript/README.md b/sdk/purview/purview-scanning-rest/samples/v1/javascript/README.md new file mode 100644 index 000000000000..83364ce82287 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/javascript/README.md @@ -0,0 +1,63 @@ +--- +page_type: sample +languages: + - javascript +products: + - azure +urlFragment: purview-scanning-javascript +disableDocsMs: true +--- + +# Azure Purview Scanning rest client library samples for JavaScript + +These sample programs show how to use the JavaScript client libraries for Azure Purview Scanning rest in some common scenarios. + +| **File Name** | **Description** | +| ------------------------------------- | -------------------------- | +| [listDatasources.js][listdatasources] | gets a list of datasources | + +## Prerequisites + +The sample programs are compatible with Node.js >=12.0.0. + +You need [an Azure subscription][freesub] and the following Azure resources to run these sample programs: + +- [Azure Cognitive Services instance][createinstance_azurecognitiveservicesinstance] + +Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. + +Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. + +## Setup + +To run the samples using the published version of the package: + +1. Install the dependencies using `npm`: + +```bash +npm install +``` + +2. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. + +3. Run whichever samples you like (note that some samples may require additional setup, see the table above): + +```bash +node listDatasources.js +``` + +Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): + +```bash +npx cross-env ENDPOINT="" node listDatasources.js +``` + +## Next Steps + +Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. + +[listdatasources]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/purview/purview-scanning-rest/samples/v1/javascript/listDatasources.js +[apiref]: https://docs.microsoft.com/azure/purview/tutorial-scan-data +[freesub]: https://azure.microsoft.com/free/ +[createinstance_azurecognitiveservicesinstance]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account +[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest/README.md diff --git a/sdk/purview/purview-scanning-rest/samples/v1/javascript/listDatasources.js b/sdk/purview/purview-scanning-rest/samples/v1/javascript/listDatasources.js new file mode 100644 index 000000000000..ed6398f73b57 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/javascript/listDatasources.js @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +/** + * This sample demonstrates how get a list of datasources + * + * @summary gets a list of datasources + */ + +const PurviewScanning = require("@azure-rest/purview-scanning"); +const { DefaultAzureCredential } = require("@azure/identity"); +const dotenv = require("dotenv"); + +dotenv.config(); + +const endpoint = process.env["ENDPOINT"] || ""; + +async function main() { + console.log("== List dataSources sample =="); + const client = PurviewScanning(endpoint, new DefaultAzureCredential()); + + const dataSources = await client.path("/datasources").get(); + + if (dataSources.status !== "200") { + throw dataSources.body.error; + } + + console.log(dataSources.body.value?.map((ds) => ds.name).join("\n")); +} + +main().catch(console.error); diff --git a/sdk/purview/purview-scanning-rest/samples/v1/javascript/package.json b/sdk/purview/purview-scanning-rest/samples/v1/javascript/package.json new file mode 100644 index 000000000000..94c57837c700 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/javascript/package.json @@ -0,0 +1,33 @@ +{ + "name": "azure-purview-scanning-samples-js", + "private": true, + "version": "1.0.0", + "description": "Azure Purview Scanning rest client library samples for JavaScript", + "engine": { + "node": ">=12.0.0" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Azure/azure-sdk-for-js.git", + "directory": "sdk/purview/purview-scanning-rest" + }, + "keywords": [ + "node", + "azure", + "cloud", + "typescript", + "browser", + "isomorphic" + ], + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest", + "dependencies": { + "@azure-rest/purview-scanning": "next", + "dotenv": "latest", + "@azure/identity": "^1.1.0" + } +} diff --git a/sdk/purview/purview-scanning-rest/samples/v1/javascript/sample.env b/sdk/purview/purview-scanning-rest/samples/v1/javascript/sample.env new file mode 100644 index 000000000000..268081afed92 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/javascript/sample.env @@ -0,0 +1,7 @@ +# Purview Scanning resource endpoint +ENDPOINT= + +# App registration secret for AAD authentication +AZURE_CLIENT_SECRET= +AZURE_CLIENT_ID= +AZURE_TENANT_ID= \ No newline at end of file diff --git a/sdk/purview/purview-scanning-rest/samples/v1/typescript/README.md b/sdk/purview/purview-scanning-rest/samples/v1/typescript/README.md new file mode 100644 index 000000000000..fed907050b7b --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/typescript/README.md @@ -0,0 +1,76 @@ +--- +page_type: sample +languages: + - typescript +products: + - azure +urlFragment: purview-scanning-typescript +disableDocsMs: true +--- + +# Azure Purview Scanning rest client library samples for TypeScript + +These sample programs show how to use the TypeScript client libraries for Azure Purview Scanning rest in some common scenarios. + +| **File Name** | **Description** | +| ------------------------------------- | -------------------------- | +| [listDatasources.ts][listdatasources] | gets a list of datasources | + +## Prerequisites + +The sample programs are compatible with Node.js >=12.0.0. + +Before running the samples in Node, they must be compiled to JavaScript using the TypeScript compiler. For more information on TypeScript, see the [TypeScript documentation][typescript]. Install the TypeScript compiler using: + +```bash +npm install -g typescript +``` + +You need [an Azure subscription][freesub] and the following Azure resources to run these sample programs: + +- [Azure Cognitive Services instance][createinstance_azurecognitiveservicesinstance] + +Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. + +Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. + +## Setup + +To run the samples using the published version of the package: + +1. Install the dependencies using `npm`: + +```bash +npm install +``` + +2. Compile the samples: + +```bash +npm run build +``` + +3. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. + +4. Run whichever samples you like (note that some samples may require additional setup, see the table above): + +```bash +node dist/listDatasources.ts +``` + +Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): + +```bash +npx cross-env ENDPOINT="" node dist/listDatasources.js +``` + +## Next Steps + +Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. + +[listdatasources]: https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/purview/purview-scanning-rest/samples/v1/typescript/src/listDatasources.ts +[apiref]: https://docs.microsoft.com/azure/purview/tutorial-scan-data +[freesub]: https://azure.microsoft.com/free/ +[createinstance_azurecognitiveservicesinstance]: https://docs.microsoft.com/azure/cognitive-services/cognitive-services-apis-create-account +[package]: https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest/README.md +[typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/purview/purview-scanning-rest/samples/v1/typescript/package.json b/sdk/purview/purview-scanning-rest/samples/v1/typescript/package.json new file mode 100644 index 000000000000..d7269dba567f --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/typescript/package.json @@ -0,0 +1,41 @@ +{ + "name": "azure-purview-scanning-samples-ts", + "private": true, + "version": "1.0.0", + "description": "Azure Purview Scanning rest client library samples for TypeScript", + "engine": { + "node": ">=12.0.0" + }, + "scripts": { + "build": "tsc", + "prebuild": "rimraf dist/" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/Azure/azure-sdk-for-js.git", + "directory": "sdk/purview/purview-scanning-rest" + }, + "keywords": [ + "node", + "azure", + "cloud", + "typescript", + "browser", + "isomorphic" + ], + "author": "Microsoft Corporation", + "license": "MIT", + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/purview/purview-scanning-rest", + "dependencies": { + "@azure-rest/purview-scanning": "next", + "dotenv": "latest", + "@azure/identity": "^1.1.0" + }, + "devDependencies": { + "typescript": "~4.2.0", + "rimraf": "latest" + } +} diff --git a/sdk/purview/purview-scanning-rest/samples/v1/typescript/sample.env b/sdk/purview/purview-scanning-rest/samples/v1/typescript/sample.env new file mode 100644 index 000000000000..268081afed92 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/typescript/sample.env @@ -0,0 +1,7 @@ +# Purview Scanning resource endpoint +ENDPOINT= + +# App registration secret for AAD authentication +AZURE_CLIENT_SECRET= +AZURE_CLIENT_ID= +AZURE_TENANT_ID= \ No newline at end of file diff --git a/sdk/purview/purview-scanning-rest/samples/v1/typescript/src/listDatasources.ts b/sdk/purview/purview-scanning-rest/samples/v1/typescript/src/listDatasources.ts new file mode 100644 index 000000000000..af2dd9e58893 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/typescript/src/listDatasources.ts @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +/** + * This sample demonstrates how get a list of datasources + * + * @summary gets a list of datasources + */ + +import PurviewScanning from "@azure-rest/purview-scanning"; +import { DefaultAzureCredential } from "@azure/identity"; +import dotenv from "dotenv"; + +dotenv.config(); + +const endpoint = process.env["ENDPOINT"] || ""; + +async function main() { + console.log("== List dataSources sample =="); + const client = PurviewScanning(endpoint, new DefaultAzureCredential()); + + const dataSources = await client.path("/datasources").get(); + + if (dataSources.status !== "200") { + throw dataSources.body.error; + } + + console.log(dataSources.body.value?.map((ds) => ds.name).join("\n")); +} + +main().catch(console.error); diff --git a/sdk/purview/purview-scanning-rest/samples/v1/typescript/tsconfig.json b/sdk/purview/purview-scanning-rest/samples/v1/typescript/tsconfig.json new file mode 100644 index 000000000000..416c2dd82e00 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/samples/v1/typescript/tsconfig.json @@ -0,0 +1,17 @@ +{ + "compilerOptions": { + "target": "ES2018", + "module": "commonjs", + "moduleResolution": "node", + "resolveJsonModule": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "strict": true, + "alwaysStrict": true, + "outDir": "dist", + "rootDir": "src" + }, + "include": [ + "src/**.ts" + ] +} diff --git a/sdk/purview/purview-scanning-rest/src/index.ts b/sdk/purview/purview-scanning-rest/src/index.ts new file mode 100644 index 000000000000..7063c9006065 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/src/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import PurviewScanning from "./purviewScanning"; + +export * from "./purviewScanning"; +export * from "./models"; +export * from "./parameters"; +export * from "./responses"; + +export default PurviewScanning; diff --git a/sdk/purview/purview-scanning-rest/src/models.ts b/sdk/purview/purview-scanning-rest/src/models.ts new file mode 100644 index 000000000000..a61763b32a9b --- /dev/null +++ b/sdk/purview/purview-scanning-rest/src/models.ts @@ -0,0 +1,2615 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +export type AzureKeyVault = AzureKeyVaultBase & ProxyResource; + +export interface AzureKeyVaultBase { + properties?: AzureKeyVaultProperties; +} + +export type AzureKeyVaultProperties = AzureKeyVaultPropertiesBase & + AzureKeyVaultPropertiesAutoGenerated; + +export interface AzureKeyVaultPropertiesBase {} + +export interface AzureKeyVaultPropertiesAutoGenerated { + baseUrl?: string; + description?: string; +} + +export interface ProxyResource { + id?: string; + name?: string; +} + +export interface ErrorResponseModel { + error?: ErrorResponseModelError; +} + +export type ErrorResponseModelError = ErrorResponseModelErrorBase & ErrorModel; + +export interface ErrorResponseModelErrorBase {} + +export interface ErrorModel { + code?: string; + message?: string; + target?: string; + details?: ErrorModel[]; +} + +export interface AzureKeyVaultList { + value?: AzureKeyVault[]; + nextLink?: string; + count?: number; +} + +export type ClassificationRule = ClassificationRuleBase & ProxyResource; + +export interface ClassificationRuleBase { + kind: ClassificationRuleType; +} + +export interface ClassificationRuleList { + value?: ClassificationRule[]; + nextLink?: string; + count?: number; +} + +export interface OperationResponse { + scanResultId?: string; + startTime?: Date; + endTime?: Date; + status?: OperationStatus; + error?: OperationResponseError; +} + +export type OperationResponseError = OperationResponseErrorBase & ErrorInfo; + +export interface OperationResponseErrorBase {} + +export interface ErrorInfo { + code?: string; + message?: string; + target?: string; + details?: ErrorInfo[]; +} + +export type DataSource = DataSourceBase & ProxyResource; + +export interface DataSourceBase { + kind: DataSourceType; + scans?: Scan[]; +} + +export type Scan = ScanBase & ProxyResource; + +export interface ScanBase { + kind: ScanAuthorizationType; + scanResults?: ScanResult[]; +} + +export interface ScanResult { + parentId?: string; + id?: string; + resourceId?: string; + status?: string; + assetsDiscovered?: number; + assetsClassified?: number; + diagnostics?: ScanResultDiagnostics; + startTime?: Date; + queuedTime?: Date; + pipelineStartTime?: Date; + endTime?: Date; + scanRulesetVersion?: number; + scanRulesetType?: ScanRulesetType; + scanLevelType?: ScanLevelType; + errorMessage?: string; + error?: ScanResultError; + runType?: string; + dataSourceType?: DataSourceType; +} + +export type ScanResultDiagnostics = ScanResultDiagnosticsBase & ScanDiagnostics; + +export interface ScanResultDiagnosticsBase {} + +export interface ScanDiagnostics { + notifications?: Notification[]; + /** Dictionary of */ + exceptionCountMap?: ScanDiagnosticsExceptionCountMapDictionary; +} + +export interface Notification { + message?: string; + code?: number; +} + +export type ScanResultError = ScanResultErrorBase & ErrorModel; + +export interface ScanResultErrorBase {} + +export interface DataSourceList { + value?: DataSource[]; + nextLink?: string; + count?: number; +} + +export type Filter = FilterBase & ProxyResource; + +export interface FilterBase { + properties?: FilterProperties; +} + +export type FilterProperties = FilterPropertiesBase & FilterPropertiesAutoGenerated; + +export interface FilterPropertiesBase {} + +export interface FilterPropertiesAutoGenerated { + excludeUriPrefixes?: string[]; + includeUriPrefixes?: string[]; +} + +export interface ScanList { + value?: Scan[]; + nextLink?: string; + count?: number; +} + +export interface ScanHistoryList { + value?: ScanResult[]; + nextLink?: string; + count?: number; +} + +export type ScanRuleset = ScanRulesetBase & VersionedScanRuleset; + +export interface ScanRulesetBase { + kind: DataSourceType; +} + +export type VersionedScanRuleset = VersionedScanRulesetBase & ProxyResource; + +export interface VersionedScanRulesetBase { + scanRulesetType?: ScanRulesetType; + status?: ScanRulesetStatus; + version?: number; +} + +export interface ScanRulesetList { + value?: ScanRuleset[]; + nextLink?: string; + count?: number; +} + +export interface SystemScanRulesetList { + value?: SystemScanRuleset[]; + nextLink?: string; + count?: number; +} + +export type SystemScanRuleset = SystemScanRulesetBase & VersionedScanRuleset; + +export interface SystemScanRulesetBase { + kind: DataSourceType; +} + +export type Trigger = TriggerBase & ProxyResource; + +export interface TriggerBase { + properties?: TriggerProperties; +} + +export type TriggerProperties = TriggerPropertiesBase & TriggerPropertiesAutoGenerated; + +export interface TriggerPropertiesBase {} + +export interface TriggerPropertiesAutoGenerated { + recurrence?: TriggerPropertiesRecurrence; + recurrenceInterval?: string; + createdAt?: Date; + lastModifiedAt?: Date; + lastScheduled?: Date; + scanLevel?: ScanLevelType; + incrementalScanStartTime?: Date; +} + +export type TriggerPropertiesRecurrence = TriggerPropertiesRecurrenceBase & TriggerRecurrence; + +export interface TriggerPropertiesRecurrenceBase {} + +export interface TriggerRecurrence { + frequency?: TriggerFrequency; + interval?: number; + startTime?: Date; + endTime?: Date; + schedule?: TriggerRecurrenceSchedule; + timeZone?: string; +} + +export type TriggerRecurrenceSchedule = TriggerRecurrenceScheduleBase & RecurrenceSchedule; + +export interface TriggerRecurrenceScheduleBase {} + +export interface RecurrenceSchedule { + /** Dictionary of */ + additionalProperties?: RecurrenceScheduleAdditionalPropertiesDictionary; + minutes?: number[]; + hours?: number[]; + weekDays?: "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday"[]; + monthDays?: number[]; + monthlyOccurrences?: RecurrenceScheduleOccurrence[]; +} + +export interface RecurrenceScheduleOccurrence { + /** Dictionary of */ + additionalProperties?: RecurrenceScheduleOccurrenceAdditionalPropertiesDictionary; + day?: DayOfWeek; + occurrence?: number; +} + +export interface SystemClassificationRuleProperties { + description?: string; + version?: number; + classificationName?: string; + ruleStatus?: ClassificationRuleStatus; + createdAt?: Date; + lastModifiedAt?: Date; +} + +export type SystemClassificationRule = SystemClassificationRuleBase & ClassificationRule; + +export interface SystemClassificationRuleBase { + properties?: SystemClassificationRulePropertiesAutoGenerated; +} + +export type SystemClassificationRulePropertiesAutoGenerated = SystemClassificationRulePropertiesAutoGeneratedBase & + SystemClassificationRuleProperties; + +export interface SystemClassificationRulePropertiesAutoGeneratedBase {} + +export interface ClassificationRulePattern { + kind: ClassificationRulePatternType; +} + +export interface CustomClassificationRuleProperties { + minimumPercentageMatch?: number; + classificationAction?: ClassificationAction; + dataPatterns?: ClassificationRulePattern[]; + columnPatterns?: ClassificationRulePattern[]; + description?: string; + version?: number; + classificationName?: string; + ruleStatus?: ClassificationRuleStatus; + createdAt?: Date; + lastModifiedAt?: Date; +} + +export type CustomClassificationRule = CustomClassificationRuleBase & ClassificationRule; + +export interface CustomClassificationRuleBase { + properties?: CustomClassificationRulePropertiesAutoGenerated; +} + +export type CustomClassificationRulePropertiesAutoGenerated = CustomClassificationRulePropertiesAutoGeneratedBase & + CustomClassificationRuleProperties; + +export interface CustomClassificationRulePropertiesAutoGeneratedBase {} + +export type RegexClassificationRulePattern = RegexClassificationRulePatternBase & + ClassificationRulePattern; + +export interface RegexClassificationRulePatternBase { + pattern?: string; +} + +export interface DataSourceProperties { + createdAt?: Date; + lastModifiedAt?: Date; +} + +export type AzureSubscriptionProperties = AzureSubscriptionPropertiesBase & DataSourceProperties; + +export interface AzureSubscriptionPropertiesBase { + subscriptionId?: string; +} + +export type AzureSubscriptionDataSource = AzureSubscriptionDataSourceBase & DataSource; + +export interface AzureSubscriptionDataSourceBase { + properties?: AzureSubscriptionDataSourceProperties; +} + +export type AzureSubscriptionDataSourceProperties = AzureSubscriptionDataSourcePropertiesBase & + AzureSubscriptionProperties; + +export interface AzureSubscriptionDataSourcePropertiesBase {} + +export type AzureResourceGroupProperties = AzureResourceGroupPropertiesBase & DataSourceProperties; + +export interface AzureResourceGroupPropertiesBase { + subscriptionId?: string; + resourceGroup?: string; +} + +export type AzureResourceGroupDataSource = AzureResourceGroupDataSourceBase & DataSource; + +export interface AzureResourceGroupDataSourceBase { + properties?: AzureResourceGroupDataSourceProperties; +} + +export type AzureResourceGroupDataSourceProperties = AzureResourceGroupDataSourcePropertiesBase & + AzureResourceGroupProperties; + +export interface AzureResourceGroupDataSourcePropertiesBase {} + +export type AzureDataSourceProperties = AzureDataSourcePropertiesBase & DataSourceProperties; + +export interface AzureDataSourcePropertiesBase { + resourceGroup?: string; + subscriptionId?: string; + location?: string; + resourceName?: string; +} + +export type AzureSynapseWorkspaceProperties = AzureSynapseWorkspacePropertiesBase & + AzureDataSourceProperties; + +export interface AzureSynapseWorkspacePropertiesBase { + dedicatedSqlEndpoint?: string; + serverlessSqlEndpoint?: string; +} + +export type AzureSynapseWorkspaceDataSource = AzureSynapseWorkspaceDataSourceBase & DataSource; + +export interface AzureSynapseWorkspaceDataSourceBase { + properties?: AzureSynapseWorkspaceDataSourceProperties; +} + +export type AzureSynapseWorkspaceDataSourceProperties = AzureSynapseWorkspaceDataSourcePropertiesBase & + AzureSynapseWorkspaceProperties; + +export interface AzureSynapseWorkspaceDataSourcePropertiesBase {} + +export type AzureSynapseProperties = AzureSynapsePropertiesBase & AzureDataSourceProperties; + +export interface AzureSynapsePropertiesBase { + sqlEndpoint?: string; + sqlOnDemandEndpoint?: string; +} + +export type AzureSynapseDataSource = AzureSynapseDataSourceBase & DataSource; + +export interface AzureSynapseDataSourceBase { + properties?: AzureSynapseDataSourceProperties; +} + +export type AzureSynapseDataSourceProperties = AzureSynapseDataSourcePropertiesBase & + AzureSynapseProperties; + +export interface AzureSynapseDataSourcePropertiesBase {} + +export type AdlsGen1Properties = AdlsGen1PropertiesBase & AzureDataSourceProperties; + +export interface AdlsGen1PropertiesBase { + endpoint?: string; +} + +export type AdlsGen1DataSource = AdlsGen1DataSourceBase & DataSource; + +export interface AdlsGen1DataSourceBase { + properties?: AdlsGen1DataSourceProperties; +} + +export type AdlsGen1DataSourceProperties = AdlsGen1DataSourcePropertiesBase & AdlsGen1Properties; + +export interface AdlsGen1DataSourcePropertiesBase {} + +export type AdlsGen2Properties = AdlsGen2PropertiesBase & AzureDataSourceProperties; + +export interface AdlsGen2PropertiesBase { + endpoint?: string; +} + +export type AdlsGen2DataSource = AdlsGen2DataSourceBase & DataSource; + +export interface AdlsGen2DataSourceBase { + properties?: AdlsGen2DataSourceProperties; +} + +export type AdlsGen2DataSourceProperties = AdlsGen2DataSourcePropertiesBase & AdlsGen2Properties; + +export interface AdlsGen2DataSourcePropertiesBase {} + +export type AmazonAccountProperties = AmazonAccountPropertiesBase & DataSourceProperties; + +export interface AmazonAccountPropertiesBase { + awsAccountId?: string; + roleARN?: string; +} + +export type AmazonAccountDataSource = AmazonAccountDataSourceBase & DataSource; + +export interface AmazonAccountDataSourceBase { + properties?: AmazonAccountDataSourceProperties; +} + +export type AmazonAccountDataSourceProperties = AmazonAccountDataSourcePropertiesBase & + AmazonAccountProperties; + +export interface AmazonAccountDataSourcePropertiesBase {} + +export type AmazonS3Properties = AmazonS3PropertiesBase & DataSourceProperties; + +export interface AmazonS3PropertiesBase { + serviceUrl?: string; + roleARN?: string; +} + +export type AmazonS3DataSource = AmazonS3DataSourceBase & DataSource; + +export interface AmazonS3DataSourceBase { + properties?: AmazonS3DataSourceProperties; +} + +export type AmazonS3DataSourceProperties = AmazonS3DataSourcePropertiesBase & AmazonS3Properties; + +export interface AmazonS3DataSourcePropertiesBase {} + +export type AmazonSqlProperties = AmazonSqlPropertiesBase & DataSourceProperties; + +export interface AmazonSqlPropertiesBase { + serverEndpoint?: string; +} + +export type AmazonSqlDataSource = AmazonSqlDataSourceBase & DataSource; + +export interface AmazonSqlDataSourceBase { + properties?: AmazonSqlDataSourceProperties; +} + +export type AmazonSqlDataSourceProperties = AmazonSqlDataSourcePropertiesBase & AmazonSqlProperties; + +export interface AmazonSqlDataSourcePropertiesBase {} + +export type AzureCosmosDbProperties = AzureCosmosDbPropertiesBase & AzureDataSourceProperties; + +export interface AzureCosmosDbPropertiesBase { + accountUri?: string; +} + +export type AzureCosmosDbDataSource = AzureCosmosDbDataSourceBase & DataSource; + +export interface AzureCosmosDbDataSourceBase { + properties?: AzureCosmosDbDataSourceProperties; +} + +export type AzureCosmosDbDataSourceProperties = AzureCosmosDbDataSourcePropertiesBase & + AzureCosmosDbProperties; + +export interface AzureCosmosDbDataSourcePropertiesBase {} + +export type AzureDataExplorerProperties = AzureDataExplorerPropertiesBase & + AzureDataSourceProperties; + +export interface AzureDataExplorerPropertiesBase { + endpoint?: string; +} + +export type AzureDataExplorerDataSource = AzureDataExplorerDataSourceBase & DataSource; + +export interface AzureDataExplorerDataSourceBase { + properties?: AzureDataExplorerDataSourceProperties; +} + +export type AzureDataExplorerDataSourceProperties = AzureDataExplorerDataSourcePropertiesBase & + AzureDataExplorerProperties; + +export interface AzureDataExplorerDataSourcePropertiesBase {} + +export type AzureFileServiceProperties = AzureFileServicePropertiesBase & AzureDataSourceProperties; + +export interface AzureFileServicePropertiesBase { + endpoint?: string; +} + +export type AzureFileServiceDataSource = AzureFileServiceDataSourceBase & DataSource; + +export interface AzureFileServiceDataSourceBase { + properties?: AzureFileServiceDataSourceProperties; +} + +export type AzureFileServiceDataSourceProperties = AzureFileServiceDataSourcePropertiesBase & + AzureFileServiceProperties; + +export interface AzureFileServiceDataSourcePropertiesBase {} + +export type AzureSqlDatabaseProperties = AzureSqlDatabasePropertiesBase & AzureDataSourceProperties; + +export interface AzureSqlDatabasePropertiesBase { + serverEndpoint?: string; +} + +export type AzureSqlDatabaseDataSource = AzureSqlDatabaseDataSourceBase & DataSource; + +export interface AzureSqlDatabaseDataSourceBase { + properties?: AzureSqlDatabaseDataSourceProperties; +} + +export type AzureSqlDatabaseDataSourceProperties = AzureSqlDatabaseDataSourcePropertiesBase & + AzureSqlDatabaseProperties; + +export interface AzureSqlDatabaseDataSourcePropertiesBase {} + +export type AmazonPostgreSqlProperties = AmazonPostgreSqlPropertiesBase & DataSourceProperties; + +export interface AmazonPostgreSqlPropertiesBase { + serverEndpoint?: string; + port?: string; +} + +export type AmazonPostgreSqlDataSource = AmazonPostgreSqlDataSourceBase & DataSource; + +export interface AmazonPostgreSqlDataSourceBase { + properties?: AmazonPostgreSqlDataSourceProperties; +} + +export type AmazonPostgreSqlDataSourceProperties = AmazonPostgreSqlDataSourcePropertiesBase & + AmazonPostgreSqlProperties; + +export interface AmazonPostgreSqlDataSourcePropertiesBase {} + +export type AzurePostgreSqlProperties = AzurePostgreSqlPropertiesBase & AzureDataSourceProperties; + +export interface AzurePostgreSqlPropertiesBase { + serverEndpoint?: string; + port?: number; +} + +export type AzurePostgreSqlDataSource = AzurePostgreSqlDataSourceBase & DataSource; + +export interface AzurePostgreSqlDataSourceBase { + properties?: AzurePostgreSqlDataSourceProperties; +} + +export type AzurePostgreSqlDataSourceProperties = AzurePostgreSqlDataSourcePropertiesBase & + AzurePostgreSqlProperties; + +export interface AzurePostgreSqlDataSourcePropertiesBase {} + +export type SqlServerDatabaseProperties = SqlServerDatabasePropertiesBase & + AzureDataSourceProperties; + +export interface SqlServerDatabasePropertiesBase { + serverEndpoint?: string; +} + +export type SqlServerDatabaseDataSource = SqlServerDatabaseDataSourceBase & DataSource; + +export interface SqlServerDatabaseDataSourceBase { + properties?: SqlServerDatabaseDataSourceProperties; +} + +export type SqlServerDatabaseDataSourceProperties = SqlServerDatabaseDataSourcePropertiesBase & + SqlServerDatabaseProperties; + +export interface SqlServerDatabaseDataSourcePropertiesBase {} + +export type AzureSqlDatabaseManagedInstanceProperties = AzureSqlDatabaseManagedInstancePropertiesBase & + AzureDataSourceProperties; + +export interface AzureSqlDatabaseManagedInstancePropertiesBase { + serverEndpoint?: string; +} + +export type AzureSqlDatabaseManagedInstanceDataSource = AzureSqlDatabaseManagedInstanceDataSourceBase & + DataSource; + +export interface AzureSqlDatabaseManagedInstanceDataSourceBase { + properties?: AzureSqlDatabaseManagedInstanceDataSourceProperties; +} + +export type AzureSqlDatabaseManagedInstanceDataSourceProperties = AzureSqlDatabaseManagedInstanceDataSourcePropertiesBase & + AzureSqlDatabaseManagedInstanceProperties; + +export interface AzureSqlDatabaseManagedInstanceDataSourcePropertiesBase {} + +export type AzureSqlDataWarehouseProperties = AzureSqlDataWarehousePropertiesBase & + AzureDataSourceProperties; + +export interface AzureSqlDataWarehousePropertiesBase { + serverEndpoint?: string; +} + +export type AzureSqlDataWarehouseDataSource = AzureSqlDataWarehouseDataSourceBase & DataSource; + +export interface AzureSqlDataWarehouseDataSourceBase { + properties?: AzureSqlDataWarehouseDataSourceProperties; +} + +export type AzureSqlDataWarehouseDataSourceProperties = AzureSqlDataWarehouseDataSourcePropertiesBase & + AzureSqlDataWarehouseProperties; + +export interface AzureSqlDataWarehouseDataSourcePropertiesBase {} + +export type AzureMySqlProperties = AzureMySqlPropertiesBase & AzureDataSourceProperties; + +export interface AzureMySqlPropertiesBase { + serverEndpoint?: string; + port?: number; +} + +export type AzureMySqlDataSource = AzureMySqlDataSourceBase & DataSource; + +export interface AzureMySqlDataSourceBase { + properties?: AzureMySqlDataSourceProperties; +} + +export type AzureMySqlDataSourceProperties = AzureMySqlDataSourcePropertiesBase & + AzureMySqlProperties; + +export interface AzureMySqlDataSourcePropertiesBase {} + +export type AzureStorageProperties = AzureStoragePropertiesBase & AzureDataSourceProperties; + +export interface AzureStoragePropertiesBase { + endpoint?: string; +} + +export type AzureStorageDataSource = AzureStorageDataSourceBase & DataSource; + +export interface AzureStorageDataSourceBase { + properties?: AzureStorageDataSourceProperties; +} + +export type AzureStorageDataSourceProperties = AzureStorageDataSourcePropertiesBase & + AzureStorageProperties; + +export interface AzureStorageDataSourcePropertiesBase {} + +export type TeradataProperties = TeradataPropertiesBase & DataSourceProperties; + +export interface TeradataPropertiesBase { + host?: string; +} + +export type TeradataDataSource = TeradataDataSourceBase & DataSource; + +export interface TeradataDataSourceBase { + properties?: TeradataDataSourceProperties; +} + +export type TeradataDataSourceProperties = TeradataDataSourcePropertiesBase & TeradataProperties; + +export interface TeradataDataSourcePropertiesBase {} + +export type OracleProperties = OraclePropertiesBase & DataSourceProperties; + +export interface OraclePropertiesBase { + host?: string; + port?: string; + service?: string; +} + +export type OracleDataSource = OracleDataSourceBase & DataSource; + +export interface OracleDataSourceBase { + properties?: OracleDataSourceProperties; +} + +export type OracleDataSourceProperties = OracleDataSourcePropertiesBase & OracleProperties; + +export interface OracleDataSourcePropertiesBase {} + +export type SapS4HanaProperties = SapS4HanaPropertiesBase & DataSourceProperties; + +export interface SapS4HanaPropertiesBase { + applicationServer?: string; + systemNumber?: string; +} + +export type SapS4HanaDataSource = SapS4HanaDataSourceBase & DataSource; + +export interface SapS4HanaDataSourceBase { + properties?: SapS4HanaDataSourceProperties; +} + +export type SapS4HanaDataSourceProperties = SapS4HanaDataSourcePropertiesBase & SapS4HanaProperties; + +export interface SapS4HanaDataSourcePropertiesBase {} + +export type SapEccProperties = SapEccPropertiesBase & DataSourceProperties; + +export interface SapEccPropertiesBase { + applicationServer?: string; + systemNumber?: string; +} + +export type SapEccDataSource = SapEccDataSourceBase & DataSource; + +export interface SapEccDataSourceBase { + properties?: SapEccDataSourceProperties; +} + +export type SapEccDataSourceProperties = SapEccDataSourcePropertiesBase & SapEccProperties; + +export interface SapEccDataSourcePropertiesBase {} + +export type PowerBIProperties = PowerBIPropertiesBase & DataSourceProperties; + +export interface PowerBIPropertiesBase { + tenant?: string; +} + +export type PowerBIDataSource = PowerBIDataSourceBase & DataSource; + +export interface PowerBIDataSourceBase { + properties?: PowerBIDataSourceProperties; +} + +export type PowerBIDataSourceProperties = PowerBIDataSourcePropertiesBase & PowerBIProperties; + +export interface PowerBIDataSourcePropertiesBase {} + +export interface ScanRulesetProperties { + createdAt?: Date; + description?: string; + excludedSystemClassifications?: string[]; + includedCustomClassificationRuleNames?: string[]; + lastModifiedAt?: Date; +} + +export type AzureSubscriptionScanRulesetProperties = AzureSubscriptionScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureSubscriptionScanRulesetPropertiesBase {} + +export type AzureSubscriptionScanRuleset = AzureSubscriptionScanRulesetBase & ScanRuleset; + +export interface AzureSubscriptionScanRulesetBase { + properties?: AzureSubscriptionScanRulesetPropertiesAutoGenerated; +} + +export type AzureSubscriptionScanRulesetPropertiesAutoGenerated = AzureSubscriptionScanRulesetPropertiesAutoGeneratedBase & + AzureSubscriptionScanRulesetProperties; + +export interface AzureSubscriptionScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureResourceGroupScanRulesetProperties = AzureResourceGroupScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureResourceGroupScanRulesetPropertiesBase {} + +export type AzureResourceGroupScanRuleset = AzureResourceGroupScanRulesetBase & ScanRuleset; + +export interface AzureResourceGroupScanRulesetBase { + properties?: AzureResourceGroupScanRulesetPropertiesAutoGenerated; +} + +export type AzureResourceGroupScanRulesetPropertiesAutoGenerated = AzureResourceGroupScanRulesetPropertiesAutoGeneratedBase & + AzureResourceGroupScanRulesetProperties; + +export interface AzureResourceGroupScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureSynapseWorkspaceScanRulesetProperties = AzureSynapseWorkspaceScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureSynapseWorkspaceScanRulesetPropertiesBase {} + +export type AzureSynapseWorkspaceScanRuleset = AzureSynapseWorkspaceScanRulesetBase & ScanRuleset; + +export interface AzureSynapseWorkspaceScanRulesetBase { + properties?: AzureSynapseWorkspaceScanRulesetPropertiesAutoGenerated; +} + +export type AzureSynapseWorkspaceScanRulesetPropertiesAutoGenerated = AzureSynapseWorkspaceScanRulesetPropertiesAutoGeneratedBase & + AzureSynapseWorkspaceScanRulesetProperties; + +export interface AzureSynapseWorkspaceScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureSynapseScanRulesetProperties = AzureSynapseScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureSynapseScanRulesetPropertiesBase {} + +export type AzureSynapseScanRuleset = AzureSynapseScanRulesetBase & ScanRuleset; + +export interface AzureSynapseScanRulesetBase { + properties?: AzureSynapseScanRulesetPropertiesAutoGenerated; +} + +export type AzureSynapseScanRulesetPropertiesAutoGenerated = AzureSynapseScanRulesetPropertiesAutoGeneratedBase & + AzureSynapseScanRulesetProperties; + +export interface AzureSynapseScanRulesetPropertiesAutoGeneratedBase {} + +export interface CustomFileType { + builtInType?: FileExtensionsType; + customDelimiter?: string; +} + +export interface CustomFileExtension { + customFileType?: CustomFileExtensionCustomFileType; + description?: string; + enabled?: boolean; + fileExtension?: string; +} + +export type CustomFileExtensionCustomFileType = CustomFileExtensionCustomFileTypeBase & + CustomFileType; + +export interface CustomFileExtensionCustomFileTypeBase {} + +export interface ScanningRule { + fileExtensions?: + | "AVRO" + | "ORC" + | "PARQUET" + | "JSON" + | "TXT" + | "XML" + | "Documents" + | "CSV" + | "PSV" + | "SSV" + | "TSV" + | "GZ" + | "DOC" + | "DOCM" + | "DOCX" + | "DOT" + | "ODP" + | "ODS" + | "ODT" + | "PDF" + | "POT" + | "PPS" + | "PPSX" + | "PPT" + | "PPTM" + | "PPTX" + | "XLC" + | "XLS" + | "XLSB" + | "XLSM" + | "XLSX" + | "XLT"[]; + customFileExtensions?: CustomFileExtension[]; +} + +export type ScanningRuleScanRulesetProperties = ScanningRuleScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface ScanningRuleScanRulesetPropertiesBase { + scanningRule?: ScanningRuleScanRulesetPropertiesScanningRule; +} + +export type ScanningRuleScanRulesetPropertiesScanningRule = ScanningRuleScanRulesetPropertiesScanningRuleBase & + ScanningRule; + +export interface ScanningRuleScanRulesetPropertiesScanningRuleBase {} + +export type AdlsGen1ScanRulesetProperties = AdlsGen1ScanRulesetPropertiesBase & + ScanningRuleScanRulesetProperties; + +export interface AdlsGen1ScanRulesetPropertiesBase {} + +export type AdlsGen1ScanRuleset = AdlsGen1ScanRulesetBase & ScanRuleset; + +export interface AdlsGen1ScanRulesetBase { + properties?: AdlsGen1ScanRulesetPropertiesAutoGenerated; +} + +export type AdlsGen1ScanRulesetPropertiesAutoGenerated = AdlsGen1ScanRulesetPropertiesAutoGeneratedBase & + AdlsGen1ScanRulesetProperties; + +export interface AdlsGen1ScanRulesetPropertiesAutoGeneratedBase {} + +export type AdlsGen2ScanRulesetProperties = AdlsGen2ScanRulesetPropertiesBase & + ScanningRuleScanRulesetProperties; + +export interface AdlsGen2ScanRulesetPropertiesBase {} + +export type AdlsGen2ScanRuleset = AdlsGen2ScanRulesetBase & ScanRuleset; + +export interface AdlsGen2ScanRulesetBase { + properties?: AdlsGen2ScanRulesetPropertiesAutoGenerated; +} + +export type AdlsGen2ScanRulesetPropertiesAutoGenerated = AdlsGen2ScanRulesetPropertiesAutoGeneratedBase & + AdlsGen2ScanRulesetProperties; + +export interface AdlsGen2ScanRulesetPropertiesAutoGeneratedBase {} + +export type AmazonAccountScanRulesetProperties = AmazonAccountScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AmazonAccountScanRulesetPropertiesBase {} + +export type AmazonAccountScanRuleset = AmazonAccountScanRulesetBase & ScanRuleset; + +export interface AmazonAccountScanRulesetBase { + properties?: AmazonAccountScanRulesetPropertiesAutoGenerated; +} + +export type AmazonAccountScanRulesetPropertiesAutoGenerated = AmazonAccountScanRulesetPropertiesAutoGeneratedBase & + AmazonAccountScanRulesetProperties; + +export interface AmazonAccountScanRulesetPropertiesAutoGeneratedBase {} + +export type AmazonS3ScanRulesetProperties = AmazonS3ScanRulesetPropertiesBase & + ScanningRuleScanRulesetProperties; + +export interface AmazonS3ScanRulesetPropertiesBase {} + +export type AmazonS3ScanRuleset = AmazonS3ScanRulesetBase & ScanRuleset; + +export interface AmazonS3ScanRulesetBase { + properties?: AmazonS3ScanRulesetPropertiesAutoGenerated; +} + +export type AmazonS3ScanRulesetPropertiesAutoGenerated = AmazonS3ScanRulesetPropertiesAutoGeneratedBase & + AmazonS3ScanRulesetProperties; + +export interface AmazonS3ScanRulesetPropertiesAutoGeneratedBase {} + +export type AmazonSqlScanRulesetProperties = AmazonSqlScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AmazonSqlScanRulesetPropertiesBase {} + +export type AmazonSqlScanRuleset = AmazonSqlScanRulesetBase & ScanRuleset; + +export interface AmazonSqlScanRulesetBase { + properties?: AmazonSqlScanRulesetPropertiesAutoGenerated; +} + +export type AmazonSqlScanRulesetPropertiesAutoGenerated = AmazonSqlScanRulesetPropertiesAutoGeneratedBase & + AmazonSqlScanRulesetProperties; + +export interface AmazonSqlScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureCosmosDbScanRulesetProperties = AzureCosmosDbScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureCosmosDbScanRulesetPropertiesBase {} + +export type AzureCosmosDbScanRuleset = AzureCosmosDbScanRulesetBase & ScanRuleset; + +export interface AzureCosmosDbScanRulesetBase { + properties?: AzureCosmosDbScanRulesetPropertiesAutoGenerated; +} + +export type AzureCosmosDbScanRulesetPropertiesAutoGenerated = AzureCosmosDbScanRulesetPropertiesAutoGeneratedBase & + AzureCosmosDbScanRulesetProperties; + +export interface AzureCosmosDbScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureDataExplorerScanRulesetProperties = AzureDataExplorerScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureDataExplorerScanRulesetPropertiesBase {} + +export type AzureDataExplorerScanRuleset = AzureDataExplorerScanRulesetBase & ScanRuleset; + +export interface AzureDataExplorerScanRulesetBase { + properties?: AzureDataExplorerScanRulesetPropertiesAutoGenerated; +} + +export type AzureDataExplorerScanRulesetPropertiesAutoGenerated = AzureDataExplorerScanRulesetPropertiesAutoGeneratedBase & + AzureDataExplorerScanRulesetProperties; + +export interface AzureDataExplorerScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureFileServiceScanRulesetProperties = AzureFileServiceScanRulesetPropertiesBase & + ScanningRuleScanRulesetProperties; + +export interface AzureFileServiceScanRulesetPropertiesBase {} + +export type AzureFileServiceScanRuleset = AzureFileServiceScanRulesetBase & ScanRuleset; + +export interface AzureFileServiceScanRulesetBase { + properties?: AzureFileServiceScanRulesetPropertiesAutoGenerated; +} + +export type AzureFileServiceScanRulesetPropertiesAutoGenerated = AzureFileServiceScanRulesetPropertiesAutoGeneratedBase & + AzureFileServiceScanRulesetProperties; + +export interface AzureFileServiceScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureSqlDatabaseScanRulesetProperties = AzureSqlDatabaseScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureSqlDatabaseScanRulesetPropertiesBase {} + +export type AzureSqlDatabaseScanRuleset = AzureSqlDatabaseScanRulesetBase & ScanRuleset; + +export interface AzureSqlDatabaseScanRulesetBase { + properties?: AzureSqlDatabaseScanRulesetPropertiesAutoGenerated; +} + +export type AzureSqlDatabaseScanRulesetPropertiesAutoGenerated = AzureSqlDatabaseScanRulesetPropertiesAutoGeneratedBase & + AzureSqlDatabaseScanRulesetProperties; + +export interface AzureSqlDatabaseScanRulesetPropertiesAutoGeneratedBase {} + +export type AmazonPostgreSqlScanRulesetProperties = AmazonPostgreSqlScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AmazonPostgreSqlScanRulesetPropertiesBase {} + +export type AmazonPostgreSqlScanRuleset = AmazonPostgreSqlScanRulesetBase & ScanRuleset; + +export interface AmazonPostgreSqlScanRulesetBase { + properties?: AmazonPostgreSqlScanRulesetPropertiesAutoGenerated; +} + +export type AmazonPostgreSqlScanRulesetPropertiesAutoGenerated = AmazonPostgreSqlScanRulesetPropertiesAutoGeneratedBase & + AmazonPostgreSqlScanRulesetProperties; + +export interface AmazonPostgreSqlScanRulesetPropertiesAutoGeneratedBase {} + +export type AzurePostgreSqlScanRulesetProperties = AzurePostgreSqlScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzurePostgreSqlScanRulesetPropertiesBase {} + +export type AzurePostgreSqlScanRuleset = AzurePostgreSqlScanRulesetBase & ScanRuleset; + +export interface AzurePostgreSqlScanRulesetBase { + properties?: AzurePostgreSqlScanRulesetPropertiesAutoGenerated; +} + +export type AzurePostgreSqlScanRulesetPropertiesAutoGenerated = AzurePostgreSqlScanRulesetPropertiesAutoGeneratedBase & + AzurePostgreSqlScanRulesetProperties; + +export interface AzurePostgreSqlScanRulesetPropertiesAutoGeneratedBase {} + +export type SqlServerDatabaseScanRulesetProperties = SqlServerDatabaseScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface SqlServerDatabaseScanRulesetPropertiesBase {} + +export type SqlServerDatabaseScanRuleset = SqlServerDatabaseScanRulesetBase & ScanRuleset; + +export interface SqlServerDatabaseScanRulesetBase { + properties?: SqlServerDatabaseScanRulesetPropertiesAutoGenerated; +} + +export type SqlServerDatabaseScanRulesetPropertiesAutoGenerated = SqlServerDatabaseScanRulesetPropertiesAutoGeneratedBase & + SqlServerDatabaseScanRulesetProperties; + +export interface SqlServerDatabaseScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureSqlDatabaseManagedInstanceScanRulesetProperties = AzureSqlDatabaseManagedInstanceScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureSqlDatabaseManagedInstanceScanRulesetPropertiesBase {} + +export type AzureSqlDatabaseManagedInstanceScanRuleset = AzureSqlDatabaseManagedInstanceScanRulesetBase & + ScanRuleset; + +export interface AzureSqlDatabaseManagedInstanceScanRulesetBase { + properties?: AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGenerated; +} + +export type AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGenerated = AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGeneratedBase & + AzureSqlDatabaseManagedInstanceScanRulesetProperties; + +export interface AzureSqlDatabaseManagedInstanceScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureSqlDataWarehouseScanRulesetProperties = AzureSqlDataWarehouseScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureSqlDataWarehouseScanRulesetPropertiesBase {} + +export type AzureSqlDataWarehouseScanRuleset = AzureSqlDataWarehouseScanRulesetBase & ScanRuleset; + +export interface AzureSqlDataWarehouseScanRulesetBase { + properties?: AzureSqlDataWarehouseScanRulesetPropertiesAutoGenerated; +} + +export type AzureSqlDataWarehouseScanRulesetPropertiesAutoGenerated = AzureSqlDataWarehouseScanRulesetPropertiesAutoGeneratedBase & + AzureSqlDataWarehouseScanRulesetProperties; + +export interface AzureSqlDataWarehouseScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureMySqlScanRulesetProperties = AzureMySqlScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface AzureMySqlScanRulesetPropertiesBase {} + +export type AzureMySqlScanRuleset = AzureMySqlScanRulesetBase & ScanRuleset; + +export interface AzureMySqlScanRulesetBase { + properties?: AzureMySqlScanRulesetPropertiesAutoGenerated; +} + +export type AzureMySqlScanRulesetPropertiesAutoGenerated = AzureMySqlScanRulesetPropertiesAutoGeneratedBase & + AzureMySqlScanRulesetProperties; + +export interface AzureMySqlScanRulesetPropertiesAutoGeneratedBase {} + +export type AzureStorageScanRulesetProperties = AzureStorageScanRulesetPropertiesBase & + ScanningRuleScanRulesetProperties; + +export interface AzureStorageScanRulesetPropertiesBase {} + +export type AzureStorageScanRuleset = AzureStorageScanRulesetBase & ScanRuleset; + +export interface AzureStorageScanRulesetBase { + properties?: AzureStorageScanRulesetPropertiesAutoGenerated; +} + +export type AzureStorageScanRulesetPropertiesAutoGenerated = AzureStorageScanRulesetPropertiesAutoGeneratedBase & + AzureStorageScanRulesetProperties; + +export interface AzureStorageScanRulesetPropertiesAutoGeneratedBase {} + +export type TeradataScanRulesetProperties = TeradataScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface TeradataScanRulesetPropertiesBase {} + +export type TeradataScanRuleset = TeradataScanRulesetBase & ScanRuleset; + +export interface TeradataScanRulesetBase { + properties?: TeradataScanRulesetPropertiesAutoGenerated; +} + +export type TeradataScanRulesetPropertiesAutoGenerated = TeradataScanRulesetPropertiesAutoGeneratedBase & + TeradataScanRulesetProperties; + +export interface TeradataScanRulesetPropertiesAutoGeneratedBase {} + +export type OracleScanRulesetProperties = OracleScanRulesetPropertiesBase & ScanRulesetProperties; + +export interface OracleScanRulesetPropertiesBase {} + +export type OracleScanRuleset = OracleScanRulesetBase & ScanRuleset; + +export interface OracleScanRulesetBase { + properties?: OracleScanRulesetPropertiesAutoGenerated; +} + +export type OracleScanRulesetPropertiesAutoGenerated = OracleScanRulesetPropertiesAutoGeneratedBase & + OracleScanRulesetProperties; + +export interface OracleScanRulesetPropertiesAutoGeneratedBase {} + +export type SapS4HanaScanRulesetProperties = SapS4HanaScanRulesetPropertiesBase & + ScanRulesetProperties; + +export interface SapS4HanaScanRulesetPropertiesBase {} + +export type SapS4HanaScanRuleset = SapS4HanaScanRulesetBase & ScanRuleset; + +export interface SapS4HanaScanRulesetBase { + properties?: SapS4HanaScanRulesetPropertiesAutoGenerated; +} + +export type SapS4HanaScanRulesetPropertiesAutoGenerated = SapS4HanaScanRulesetPropertiesAutoGeneratedBase & + SapS4HanaScanRulesetProperties; + +export interface SapS4HanaScanRulesetPropertiesAutoGeneratedBase {} + +export type SapEccScanRulesetProperties = SapEccScanRulesetPropertiesBase & ScanRulesetProperties; + +export interface SapEccScanRulesetPropertiesBase {} + +export type SapEccScanRuleset = SapEccScanRulesetBase & ScanRuleset; + +export interface SapEccScanRulesetBase { + properties?: SapEccScanRulesetPropertiesAutoGenerated; +} + +export type SapEccScanRulesetPropertiesAutoGenerated = SapEccScanRulesetPropertiesAutoGeneratedBase & + SapEccScanRulesetProperties; + +export interface SapEccScanRulesetPropertiesAutoGeneratedBase {} + +export type PowerBIScanRulesetProperties = PowerBIScanRulesetPropertiesBase & ScanRulesetProperties; + +export interface PowerBIScanRulesetPropertiesBase {} + +export type PowerBIScanRuleset = PowerBIScanRulesetBase & ScanRuleset; + +export interface PowerBIScanRulesetBase { + properties?: PowerBIScanRulesetPropertiesAutoGenerated; +} + +export type PowerBIScanRulesetPropertiesAutoGenerated = PowerBIScanRulesetPropertiesAutoGeneratedBase & + PowerBIScanRulesetProperties; + +export interface PowerBIScanRulesetPropertiesAutoGeneratedBase {} + +export interface ResourceNameFilter { + excludePrefixes?: string[]; + includePrefixes?: string[]; + resources?: string[]; +} + +export interface CredentialReference { + referenceName?: string; + credentialType?: CredentialType; +} + +export interface ResourceTypeFilter { + scanRulesetName?: string; + scanRulesetType?: ScanRulesetType; + resourceNameFilter?: ResourceTypeFilterResourceNameFilter; + credential?: ResourceTypeFilterCredential; +} + +export type ResourceTypeFilterResourceNameFilter = ResourceTypeFilterResourceNameFilterBase & + ResourceNameFilter; + +export interface ResourceTypeFilterResourceNameFilterBase {} + +export type ResourceTypeFilterCredential = ResourceTypeFilterCredentialBase & CredentialReference; + +export interface ResourceTypeFilterCredentialBase {} + +export interface ConnectedVia { + referenceName?: string; +} + +export interface ScanProperties { + scanRulesetName?: string; + scanRulesetType?: ScanRulesetType; + workers?: number; + createdAt?: Date; + lastModifiedAt?: Date; + connectedVia?: ScanPropertiesConnectedVia; +} + +export type ScanPropertiesConnectedVia = ScanPropertiesConnectedViaBase & ConnectedVia; + +export interface ScanPropertiesConnectedViaBase {} + +export type ExpandingResourceScanProperties = ExpandingResourceScanPropertiesBase & ScanProperties; + +export interface ExpandingResourceScanPropertiesBase { + resourceTypes?: ExpandingResourceScanPropertiesResourceTypes; + credential?: ExpandingResourceScanPropertiesCredential; +} + +export interface ExpandingResourceScanPropertiesResourceTypes { + none?: ResourceTypeFilter; + azureSubscription?: ResourceTypeFilter; + azureResourceGroup?: ResourceTypeFilter; + azureSynapseWorkspace?: ResourceTypeFilter; + azureSynapse?: ResourceTypeFilter; + adlsGen1?: ResourceTypeFilter; + adlsGen2?: ResourceTypeFilter; + amazonAccount?: ResourceTypeFilter; + amazonS3?: ResourceTypeFilter; + amazonSql?: ResourceTypeFilter; + azureCosmosDb?: ResourceTypeFilter; + azureDataExplorer?: ResourceTypeFilter; + azureFileService?: ResourceTypeFilter; + azureSqlDatabase?: ResourceTypeFilter; + amazonPostgreSql?: ResourceTypeFilter; + azurePostgreSql?: ResourceTypeFilter; + sqlServerDatabase?: ResourceTypeFilter; + azureSqlDatabaseManagedInstance?: ResourceTypeFilter; + azureSqlDataWarehouse?: ResourceTypeFilter; + azureMySql?: ResourceTypeFilter; + azureStorage?: ResourceTypeFilter; + teradata?: ResourceTypeFilter; + oracle?: ResourceTypeFilter; + sapS4Hana?: ResourceTypeFilter; + sapEcc?: ResourceTypeFilter; + powerBI?: ResourceTypeFilter; +} + +export type ExpandingResourceScanPropertiesCredential = ExpandingResourceScanPropertiesCredentialBase & + CredentialReference; + +export interface ExpandingResourceScanPropertiesCredentialBase {} + +export type AzureSubscriptionCredentialScanProperties = AzureSubscriptionCredentialScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureSubscriptionCredentialScanPropertiesBase {} + +export type AzureSubscriptionCredentialScan = AzureSubscriptionCredentialScanBase & Scan; + +export interface AzureSubscriptionCredentialScanBase { + properties?: AzureSubscriptionCredentialScanPropertiesAutoGenerated; +} + +export type AzureSubscriptionCredentialScanPropertiesAutoGenerated = AzureSubscriptionCredentialScanPropertiesAutoGeneratedBase & + AzureSubscriptionCredentialScanProperties; + +export interface AzureSubscriptionCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSubscriptionMsiScanProperties = AzureSubscriptionMsiScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureSubscriptionMsiScanPropertiesBase {} + +export type AzureSubscriptionMsiScan = AzureSubscriptionMsiScanBase & Scan; + +export interface AzureSubscriptionMsiScanBase { + properties?: AzureSubscriptionMsiScanPropertiesAutoGenerated; +} + +export type AzureSubscriptionMsiScanPropertiesAutoGenerated = AzureSubscriptionMsiScanPropertiesAutoGeneratedBase & + AzureSubscriptionMsiScanProperties; + +export interface AzureSubscriptionMsiScanPropertiesAutoGeneratedBase {} + +export type AzureResourceGroupCredentialScanProperties = AzureResourceGroupCredentialScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureResourceGroupCredentialScanPropertiesBase {} + +export type AzureResourceGroupCredentialScan = AzureResourceGroupCredentialScanBase & Scan; + +export interface AzureResourceGroupCredentialScanBase { + properties?: AzureResourceGroupCredentialScanPropertiesAutoGenerated; +} + +export type AzureResourceGroupCredentialScanPropertiesAutoGenerated = AzureResourceGroupCredentialScanPropertiesAutoGeneratedBase & + AzureResourceGroupCredentialScanProperties; + +export interface AzureResourceGroupCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureResourceGroupMsiScanProperties = AzureResourceGroupMsiScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureResourceGroupMsiScanPropertiesBase {} + +export type AzureResourceGroupMsiScan = AzureResourceGroupMsiScanBase & Scan; + +export interface AzureResourceGroupMsiScanBase { + properties?: AzureResourceGroupMsiScanPropertiesAutoGenerated; +} + +export type AzureResourceGroupMsiScanPropertiesAutoGenerated = AzureResourceGroupMsiScanPropertiesAutoGeneratedBase & + AzureResourceGroupMsiScanProperties; + +export interface AzureResourceGroupMsiScanPropertiesAutoGeneratedBase {} + +export type AzureSynapseWorkspaceCredentialScanProperties = AzureSynapseWorkspaceCredentialScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureSynapseWorkspaceCredentialScanPropertiesBase {} + +export type AzureSynapseWorkspaceCredentialScan = AzureSynapseWorkspaceCredentialScanBase & Scan; + +export interface AzureSynapseWorkspaceCredentialScanBase { + properties?: AzureSynapseWorkspaceCredentialScanPropertiesAutoGenerated; +} + +export type AzureSynapseWorkspaceCredentialScanPropertiesAutoGenerated = AzureSynapseWorkspaceCredentialScanPropertiesAutoGeneratedBase & + AzureSynapseWorkspaceCredentialScanProperties; + +export interface AzureSynapseWorkspaceCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSynapseWorkspaceMsiScanProperties = AzureSynapseWorkspaceMsiScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureSynapseWorkspaceMsiScanPropertiesBase {} + +export type AzureSynapseWorkspaceMsiScan = AzureSynapseWorkspaceMsiScanBase & Scan; + +export interface AzureSynapseWorkspaceMsiScanBase { + properties?: AzureSynapseWorkspaceMsiScanPropertiesAutoGenerated; +} + +export type AzureSynapseWorkspaceMsiScanPropertiesAutoGenerated = AzureSynapseWorkspaceMsiScanPropertiesAutoGeneratedBase & + AzureSynapseWorkspaceMsiScanProperties; + +export interface AzureSynapseWorkspaceMsiScanPropertiesAutoGeneratedBase {} + +export type AzureSynapseCredentialScanProperties = AzureSynapseCredentialScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureSynapseCredentialScanPropertiesBase {} + +export type AzureSynapseCredentialScan = AzureSynapseCredentialScanBase & Scan; + +export interface AzureSynapseCredentialScanBase { + properties?: AzureSynapseCredentialScanPropertiesAutoGenerated; +} + +export type AzureSynapseCredentialScanPropertiesAutoGenerated = AzureSynapseCredentialScanPropertiesAutoGeneratedBase & + AzureSynapseCredentialScanProperties; + +export interface AzureSynapseCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSynapseMsiScanProperties = AzureSynapseMsiScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AzureSynapseMsiScanPropertiesBase {} + +export type AzureSynapseMsiScan = AzureSynapseMsiScanBase & Scan; + +export interface AzureSynapseMsiScanBase { + properties?: AzureSynapseMsiScanPropertiesAutoGenerated; +} + +export type AzureSynapseMsiScanPropertiesAutoGenerated = AzureSynapseMsiScanPropertiesAutoGeneratedBase & + AzureSynapseMsiScanProperties; + +export interface AzureSynapseMsiScanPropertiesAutoGeneratedBase {} + +export type AdlsGen1CredentialScanProperties = AdlsGen1CredentialScanPropertiesBase & + ScanProperties; + +export interface AdlsGen1CredentialScanPropertiesBase { + credential?: AdlsGen1CredentialScanPropertiesCredential; +} + +export type AdlsGen1CredentialScanPropertiesCredential = AdlsGen1CredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AdlsGen1CredentialScanPropertiesCredentialBase {} + +export type AdlsGen1CredentialScan = AdlsGen1CredentialScanBase & Scan; + +export interface AdlsGen1CredentialScanBase { + properties?: AdlsGen1CredentialScanPropertiesAutoGenerated; +} + +export type AdlsGen1CredentialScanPropertiesAutoGenerated = AdlsGen1CredentialScanPropertiesAutoGeneratedBase & + AdlsGen1CredentialScanProperties; + +export interface AdlsGen1CredentialScanPropertiesAutoGeneratedBase {} + +export type AdlsGen1MsiScanProperties = AdlsGen1MsiScanPropertiesBase & ScanProperties; + +export interface AdlsGen1MsiScanPropertiesBase {} + +export type AdlsGen1MsiScan = AdlsGen1MsiScanBase & Scan; + +export interface AdlsGen1MsiScanBase { + properties?: AdlsGen1MsiScanPropertiesAutoGenerated; +} + +export type AdlsGen1MsiScanPropertiesAutoGenerated = AdlsGen1MsiScanPropertiesAutoGeneratedBase & + AdlsGen1MsiScanProperties; + +export interface AdlsGen1MsiScanPropertiesAutoGeneratedBase {} + +export type AdlsGen2CredentialScanProperties = AdlsGen2CredentialScanPropertiesBase & + ScanProperties; + +export interface AdlsGen2CredentialScanPropertiesBase { + credential?: AdlsGen2CredentialScanPropertiesCredential; +} + +export type AdlsGen2CredentialScanPropertiesCredential = AdlsGen2CredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AdlsGen2CredentialScanPropertiesCredentialBase {} + +export type AdlsGen2CredentialScan = AdlsGen2CredentialScanBase & Scan; + +export interface AdlsGen2CredentialScanBase { + properties?: AdlsGen2CredentialScanPropertiesAutoGenerated; +} + +export type AdlsGen2CredentialScanPropertiesAutoGenerated = AdlsGen2CredentialScanPropertiesAutoGeneratedBase & + AdlsGen2CredentialScanProperties; + +export interface AdlsGen2CredentialScanPropertiesAutoGeneratedBase {} + +export type AdlsGen2MsiScanProperties = AdlsGen2MsiScanPropertiesBase & ScanProperties; + +export interface AdlsGen2MsiScanPropertiesBase {} + +export type AdlsGen2MsiScan = AdlsGen2MsiScanBase & Scan; + +export interface AdlsGen2MsiScanBase { + properties?: AdlsGen2MsiScanPropertiesAutoGenerated; +} + +export type AdlsGen2MsiScanPropertiesAutoGenerated = AdlsGen2MsiScanPropertiesAutoGeneratedBase & + AdlsGen2MsiScanProperties; + +export interface AdlsGen2MsiScanPropertiesAutoGeneratedBase {} + +export type AmazonAccountCredentialScanProperties = AmazonAccountCredentialScanPropertiesBase & + ExpandingResourceScanProperties; + +export interface AmazonAccountCredentialScanPropertiesBase {} + +export type AmazonAccountCredentialScan = AmazonAccountCredentialScanBase & Scan; + +export interface AmazonAccountCredentialScanBase { + properties?: AmazonAccountCredentialScanPropertiesAutoGenerated; +} + +export type AmazonAccountCredentialScanPropertiesAutoGenerated = AmazonAccountCredentialScanPropertiesAutoGeneratedBase & + AmazonAccountCredentialScanProperties; + +export interface AmazonAccountCredentialScanPropertiesAutoGeneratedBase {} + +export type AmazonS3CredentialScanProperties = AmazonS3CredentialScanPropertiesBase & + ScanProperties; + +export interface AmazonS3CredentialScanPropertiesBase { + credential?: AmazonS3CredentialScanPropertiesCredential; + roleARN?: string; +} + +export type AmazonS3CredentialScanPropertiesCredential = AmazonS3CredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AmazonS3CredentialScanPropertiesCredentialBase {} + +export type AmazonS3CredentialScan = AmazonS3CredentialScanBase & Scan; + +export interface AmazonS3CredentialScanBase { + properties?: AmazonS3CredentialScanPropertiesAutoGenerated; +} + +export type AmazonS3CredentialScanPropertiesAutoGenerated = AmazonS3CredentialScanPropertiesAutoGeneratedBase & + AmazonS3CredentialScanProperties; + +export interface AmazonS3CredentialScanPropertiesAutoGeneratedBase {} + +export type AmazonS3RoleARNScanProperties = AmazonS3RoleARNScanPropertiesBase & ScanProperties; + +export interface AmazonS3RoleARNScanPropertiesBase { + roleARN?: string; +} + +export type AmazonS3RoleARNScan = AmazonS3RoleARNScanBase & Scan; + +export interface AmazonS3RoleARNScanBase { + properties?: AmazonS3RoleARNScanPropertiesAutoGenerated; +} + +export type AmazonS3RoleARNScanPropertiesAutoGenerated = AmazonS3RoleARNScanPropertiesAutoGeneratedBase & + AmazonS3RoleARNScanProperties; + +export interface AmazonS3RoleARNScanPropertiesAutoGeneratedBase {} + +export type AmazonSqlCredentialScanProperties = AmazonSqlCredentialScanPropertiesBase & + ScanProperties; + +export interface AmazonSqlCredentialScanPropertiesBase { + credential?: AmazonSqlCredentialScanPropertiesCredential; + serverEndpoint?: string; + databaseName?: string; +} + +export type AmazonSqlCredentialScanPropertiesCredential = AmazonSqlCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AmazonSqlCredentialScanPropertiesCredentialBase {} + +export type AmazonSqlCredentialScan = AmazonSqlCredentialScanBase & Scan; + +export interface AmazonSqlCredentialScanBase { + properties?: AmazonSqlCredentialScanPropertiesAutoGenerated; +} + +export type AmazonSqlCredentialScanPropertiesAutoGenerated = AmazonSqlCredentialScanPropertiesAutoGeneratedBase & + AmazonSqlCredentialScanProperties; + +export interface AmazonSqlCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureCosmosDbCredentialScanProperties = AzureCosmosDbCredentialScanPropertiesBase & + ScanProperties; + +export interface AzureCosmosDbCredentialScanPropertiesBase { + credential?: AzureCosmosDbCredentialScanPropertiesCredential; + databaseName?: string; +} + +export type AzureCosmosDbCredentialScanPropertiesCredential = AzureCosmosDbCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AzureCosmosDbCredentialScanPropertiesCredentialBase {} + +export type AzureCosmosDbCredentialScan = AzureCosmosDbCredentialScanBase & Scan; + +export interface AzureCosmosDbCredentialScanBase { + properties?: AzureCosmosDbCredentialScanPropertiesAutoGenerated; +} + +export type AzureCosmosDbCredentialScanPropertiesAutoGenerated = AzureCosmosDbCredentialScanPropertiesAutoGeneratedBase & + AzureCosmosDbCredentialScanProperties; + +export interface AzureCosmosDbCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureDataExplorerCredentialScanProperties = AzureDataExplorerCredentialScanPropertiesBase & + ScanProperties; + +export interface AzureDataExplorerCredentialScanPropertiesBase { + credential?: AzureDataExplorerCredentialScanPropertiesCredential; + database?: string; +} + +export type AzureDataExplorerCredentialScanPropertiesCredential = AzureDataExplorerCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AzureDataExplorerCredentialScanPropertiesCredentialBase {} + +export type AzureDataExplorerCredentialScan = AzureDataExplorerCredentialScanBase & Scan; + +export interface AzureDataExplorerCredentialScanBase { + properties?: AzureDataExplorerCredentialScanPropertiesAutoGenerated; +} + +export type AzureDataExplorerCredentialScanPropertiesAutoGenerated = AzureDataExplorerCredentialScanPropertiesAutoGeneratedBase & + AzureDataExplorerCredentialScanProperties; + +export interface AzureDataExplorerCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureDataExplorerMsiScanProperties = AzureDataExplorerMsiScanPropertiesBase & + ScanProperties; + +export interface AzureDataExplorerMsiScanPropertiesBase { + database?: string; +} + +export type AzureDataExplorerMsiScan = AzureDataExplorerMsiScanBase & Scan; + +export interface AzureDataExplorerMsiScanBase { + properties?: AzureDataExplorerMsiScanPropertiesAutoGenerated; +} + +export type AzureDataExplorerMsiScanPropertiesAutoGenerated = AzureDataExplorerMsiScanPropertiesAutoGeneratedBase & + AzureDataExplorerMsiScanProperties; + +export interface AzureDataExplorerMsiScanPropertiesAutoGeneratedBase {} + +export type AzureFileServiceCredentialScanProperties = AzureFileServiceCredentialScanPropertiesBase & + ScanProperties; + +export interface AzureFileServiceCredentialScanPropertiesBase { + credential?: AzureFileServiceCredentialScanPropertiesCredential; + shareName?: string; +} + +export type AzureFileServiceCredentialScanPropertiesCredential = AzureFileServiceCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AzureFileServiceCredentialScanPropertiesCredentialBase {} + +export type AzureFileServiceCredentialScan = AzureFileServiceCredentialScanBase & Scan; + +export interface AzureFileServiceCredentialScanBase { + properties?: AzureFileServiceCredentialScanPropertiesAutoGenerated; +} + +export type AzureFileServiceCredentialScanPropertiesAutoGenerated = AzureFileServiceCredentialScanPropertiesAutoGeneratedBase & + AzureFileServiceCredentialScanProperties; + +export interface AzureFileServiceCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSqlScanProperties = AzureSqlScanPropertiesBase & ScanProperties; + +export interface AzureSqlScanPropertiesBase { + serverEndpoint?: string; + databaseName?: string; +} + +export type AzureSqlCredentialScanProperties = AzureSqlCredentialScanPropertiesBase & + AzureSqlScanProperties; + +export interface AzureSqlCredentialScanPropertiesBase { + credential?: AzureSqlCredentialScanPropertiesCredential; +} + +export type AzureSqlCredentialScanPropertiesCredential = AzureSqlCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AzureSqlCredentialScanPropertiesCredentialBase {} + +export type AzureSqlDatabaseCredentialScanProperties = AzureSqlDatabaseCredentialScanPropertiesBase & + AzureSqlCredentialScanProperties; + +export interface AzureSqlDatabaseCredentialScanPropertiesBase {} + +export type AzureSqlDatabaseCredentialScan = AzureSqlDatabaseCredentialScanBase & Scan; + +export interface AzureSqlDatabaseCredentialScanBase { + properties?: AzureSqlDatabaseCredentialScanPropertiesAutoGenerated; +} + +export type AzureSqlDatabaseCredentialScanPropertiesAutoGenerated = AzureSqlDatabaseCredentialScanPropertiesAutoGeneratedBase & + AzureSqlDatabaseCredentialScanProperties; + +export interface AzureSqlDatabaseCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSqlDatabaseMsiScanProperties = AzureSqlDatabaseMsiScanPropertiesBase & + AzureSqlScanProperties; + +export interface AzureSqlDatabaseMsiScanPropertiesBase {} + +export type AzureSqlDatabaseMsiScan = AzureSqlDatabaseMsiScanBase & Scan; + +export interface AzureSqlDatabaseMsiScanBase { + properties?: AzureSqlDatabaseMsiScanPropertiesAutoGenerated; +} + +export type AzureSqlDatabaseMsiScanPropertiesAutoGenerated = AzureSqlDatabaseMsiScanPropertiesAutoGeneratedBase & + AzureSqlDatabaseMsiScanProperties; + +export interface AzureSqlDatabaseMsiScanPropertiesAutoGeneratedBase {} + +export type AmazonPostgreSqlCredentialScanProperties = AmazonPostgreSqlCredentialScanPropertiesBase & + ScanProperties; + +export interface AmazonPostgreSqlCredentialScanPropertiesBase { + credential?: AmazonPostgreSqlCredentialScanPropertiesCredential; + serverEndpoint?: string; + databaseName?: string; + port?: string; +} + +export type AmazonPostgreSqlCredentialScanPropertiesCredential = AmazonPostgreSqlCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AmazonPostgreSqlCredentialScanPropertiesCredentialBase {} + +export type AmazonPostgreSqlCredentialScan = AmazonPostgreSqlCredentialScanBase & Scan; + +export interface AmazonPostgreSqlCredentialScanBase { + properties?: AmazonPostgreSqlCredentialScanPropertiesAutoGenerated; +} + +export type AmazonPostgreSqlCredentialScanPropertiesAutoGenerated = AmazonPostgreSqlCredentialScanPropertiesAutoGeneratedBase & + AmazonPostgreSqlCredentialScanProperties; + +export interface AmazonPostgreSqlCredentialScanPropertiesAutoGeneratedBase {} + +export type AzurePostgreSqlCredentialScanProperties = AzurePostgreSqlCredentialScanPropertiesBase & + ScanProperties; + +export interface AzurePostgreSqlCredentialScanPropertiesBase { + credential?: AzurePostgreSqlCredentialScanPropertiesCredential; + serverEndpoint?: string; + databaseName?: string; + port?: number; + sslMode?: number; +} + +export type AzurePostgreSqlCredentialScanPropertiesCredential = AzurePostgreSqlCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AzurePostgreSqlCredentialScanPropertiesCredentialBase {} + +export type AzurePostgreSqlCredentialScan = AzurePostgreSqlCredentialScanBase & Scan; + +export interface AzurePostgreSqlCredentialScanBase { + properties?: AzurePostgreSqlCredentialScanPropertiesAutoGenerated; +} + +export type AzurePostgreSqlCredentialScanPropertiesAutoGenerated = AzurePostgreSqlCredentialScanPropertiesAutoGeneratedBase & + AzurePostgreSqlCredentialScanProperties; + +export interface AzurePostgreSqlCredentialScanPropertiesAutoGeneratedBase {} + +export type SqlServerDatabaseCredentialScanProperties = SqlServerDatabaseCredentialScanPropertiesBase & + AzureSqlCredentialScanProperties; + +export interface SqlServerDatabaseCredentialScanPropertiesBase {} + +export type SqlServerDatabaseCredentialScan = SqlServerDatabaseCredentialScanBase & Scan; + +export interface SqlServerDatabaseCredentialScanBase { + properties?: SqlServerDatabaseCredentialScanPropertiesAutoGenerated; +} + +export type SqlServerDatabaseCredentialScanPropertiesAutoGenerated = SqlServerDatabaseCredentialScanPropertiesAutoGeneratedBase & + SqlServerDatabaseCredentialScanProperties; + +export interface SqlServerDatabaseCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSqlDatabaseManagedInstanceCredentialScanProperties = AzureSqlDatabaseManagedInstanceCredentialScanPropertiesBase & + AzureSqlCredentialScanProperties; + +export interface AzureSqlDatabaseManagedInstanceCredentialScanPropertiesBase {} + +export type AzureSqlDatabaseManagedInstanceCredentialScan = AzureSqlDatabaseManagedInstanceCredentialScanBase & + Scan; + +export interface AzureSqlDatabaseManagedInstanceCredentialScanBase { + properties?: AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGenerated; +} + +export type AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGenerated = AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGeneratedBase & + AzureSqlDatabaseManagedInstanceCredentialScanProperties; + +export interface AzureSqlDatabaseManagedInstanceCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSqlDatabaseManagedInstanceMsiScanProperties = AzureSqlDatabaseManagedInstanceMsiScanPropertiesBase & + AzureSqlScanProperties; + +export interface AzureSqlDatabaseManagedInstanceMsiScanPropertiesBase {} + +export type AzureSqlDatabaseManagedInstanceMsiScan = AzureSqlDatabaseManagedInstanceMsiScanBase & + Scan; + +export interface AzureSqlDatabaseManagedInstanceMsiScanBase { + properties?: AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGenerated; +} + +export type AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGenerated = AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGeneratedBase & + AzureSqlDatabaseManagedInstanceMsiScanProperties; + +export interface AzureSqlDatabaseManagedInstanceMsiScanPropertiesAutoGeneratedBase {} + +export type AzureSqlDataWarehouseCredentialScanProperties = AzureSqlDataWarehouseCredentialScanPropertiesBase & + AzureSqlCredentialScanProperties; + +export interface AzureSqlDataWarehouseCredentialScanPropertiesBase {} + +export type AzureSqlDataWarehouseCredentialScan = AzureSqlDataWarehouseCredentialScanBase & Scan; + +export interface AzureSqlDataWarehouseCredentialScanBase { + properties?: AzureSqlDataWarehouseCredentialScanPropertiesAutoGenerated; +} + +export type AzureSqlDataWarehouseCredentialScanPropertiesAutoGenerated = AzureSqlDataWarehouseCredentialScanPropertiesAutoGeneratedBase & + AzureSqlDataWarehouseCredentialScanProperties; + +export interface AzureSqlDataWarehouseCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureSqlDataWarehouseMsiScanProperties = AzureSqlDataWarehouseMsiScanPropertiesBase & + AzureSqlScanProperties; + +export interface AzureSqlDataWarehouseMsiScanPropertiesBase {} + +export type AzureSqlDataWarehouseMsiScan = AzureSqlDataWarehouseMsiScanBase & Scan; + +export interface AzureSqlDataWarehouseMsiScanBase { + properties?: AzureSqlDataWarehouseMsiScanPropertiesAutoGenerated; +} + +export type AzureSqlDataWarehouseMsiScanPropertiesAutoGenerated = AzureSqlDataWarehouseMsiScanPropertiesAutoGeneratedBase & + AzureSqlDataWarehouseMsiScanProperties; + +export interface AzureSqlDataWarehouseMsiScanPropertiesAutoGeneratedBase {} + +export type AzureMySqlScanProperties = AzureMySqlScanPropertiesBase & ScanProperties; + +export interface AzureMySqlScanPropertiesBase { + serverEndpoint?: string; + port?: number; + databaseName?: string; + credential?: AzureMySqlScanPropertiesCredential; +} + +export type AzureMySqlScanPropertiesCredential = AzureMySqlScanPropertiesCredentialBase & + CredentialReference; + +export interface AzureMySqlScanPropertiesCredentialBase {} + +export type AzureMySqlCredentialScanProperties = AzureMySqlCredentialScanPropertiesBase & + AzureMySqlScanProperties; + +export interface AzureMySqlCredentialScanPropertiesBase {} + +export type AzureMySqlCredentialScan = AzureMySqlCredentialScanBase & Scan; + +export interface AzureMySqlCredentialScanBase { + properties?: AzureMySqlCredentialScanPropertiesAutoGenerated; +} + +export type AzureMySqlCredentialScanPropertiesAutoGenerated = AzureMySqlCredentialScanPropertiesAutoGeneratedBase & + AzureMySqlCredentialScanProperties; + +export interface AzureMySqlCredentialScanPropertiesAutoGeneratedBase {} + +export type MitiScanProperties = MitiScanPropertiesBase & ScanProperties; + +export interface MitiScanPropertiesBase { + maximumMemoryAllowedInGb?: string; + mitiCache?: string; +} + +export type AzureStorageCredentialScanProperties = AzureStorageCredentialScanPropertiesBase & + ScanProperties; + +export interface AzureStorageCredentialScanPropertiesBase { + credential?: AzureStorageCredentialScanPropertiesCredential; +} + +export type AzureStorageCredentialScanPropertiesCredential = AzureStorageCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface AzureStorageCredentialScanPropertiesCredentialBase {} + +export type AzureStorageCredentialScan = AzureStorageCredentialScanBase & Scan; + +export interface AzureStorageCredentialScanBase { + properties?: AzureStorageCredentialScanPropertiesAutoGenerated; +} + +export type AzureStorageCredentialScanPropertiesAutoGenerated = AzureStorageCredentialScanPropertiesAutoGeneratedBase & + AzureStorageCredentialScanProperties; + +export interface AzureStorageCredentialScanPropertiesAutoGeneratedBase {} + +export type AzureStorageMsiScanProperties = AzureStorageMsiScanPropertiesBase & ScanProperties; + +export interface AzureStorageMsiScanPropertiesBase {} + +export type AzureStorageMsiScan = AzureStorageMsiScanBase & Scan; + +export interface AzureStorageMsiScanBase { + properties?: AzureStorageMsiScanPropertiesAutoGenerated; +} + +export type AzureStorageMsiScanPropertiesAutoGenerated = AzureStorageMsiScanPropertiesAutoGeneratedBase & + AzureStorageMsiScanProperties; + +export interface AzureStorageMsiScanPropertiesAutoGeneratedBase {} + +export type TeradataCredentialScanProperties = TeradataCredentialScanPropertiesBase & + MitiScanProperties; + +export interface TeradataCredentialScanPropertiesBase { + credential?: TeradataCredentialScanPropertiesCredential; + schema?: string; + driverLocation?: string; +} + +export type TeradataCredentialScanPropertiesCredential = TeradataCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface TeradataCredentialScanPropertiesCredentialBase {} + +export type TeradataCredentialScan = TeradataCredentialScanBase & Scan; + +export interface TeradataCredentialScanBase { + properties?: TeradataCredentialScanPropertiesAutoGenerated; +} + +export type TeradataCredentialScanPropertiesAutoGenerated = TeradataCredentialScanPropertiesAutoGeneratedBase & + TeradataCredentialScanProperties; + +export interface TeradataCredentialScanPropertiesAutoGeneratedBase {} + +export type TeradataUserPassScanProperties = TeradataUserPassScanPropertiesBase & ScanProperties; + +export interface TeradataUserPassScanPropertiesBase { + username?: string; + password?: string; +} + +export type TeradataUserPassScan = TeradataUserPassScanBase & Scan; + +export interface TeradataUserPassScanBase { + properties?: TeradataUserPassScanPropertiesAutoGenerated; +} + +export type TeradataUserPassScanPropertiesAutoGenerated = TeradataUserPassScanPropertiesAutoGeneratedBase & + TeradataUserPassScanProperties; + +export interface TeradataUserPassScanPropertiesAutoGeneratedBase {} + +export type TeradataUserPassScanPropertiesAutoGenerated2 = TeradataUserPassScanPropertiesAutoGenerated2Base & + MitiScanProperties; + +export interface TeradataUserPassScanPropertiesAutoGenerated2Base { + username?: string; + password?: string; + schema?: string; + driverLocation?: string; +} + +export type TeradataUserPassScanAutoGenerated = TeradataUserPassScanAutoGeneratedBase & Scan; + +export interface TeradataUserPassScanAutoGeneratedBase { + properties?: TeradataUserPassScanPropertiesAutoGenerated3; +} + +export type TeradataUserPassScanPropertiesAutoGenerated3 = TeradataUserPassScanPropertiesAutoGenerated3Base & + TeradataUserPassScanPropertiesAutoGenerated2; + +export interface TeradataUserPassScanPropertiesAutoGenerated3Base {} + +export type OracleCredentialScanProperties = OracleCredentialScanPropertiesBase & + MitiScanProperties; + +export interface OracleCredentialScanPropertiesBase { + credential?: OracleCredentialScanPropertiesCredential; + schema?: string; + driverLocation?: string; +} + +export type OracleCredentialScanPropertiesCredential = OracleCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface OracleCredentialScanPropertiesCredentialBase {} + +export type OracleCredentialScan = OracleCredentialScanBase & Scan; + +export interface OracleCredentialScanBase { + properties?: OracleCredentialScanPropertiesAutoGenerated; +} + +export type OracleCredentialScanPropertiesAutoGenerated = OracleCredentialScanPropertiesAutoGeneratedBase & + OracleCredentialScanProperties; + +export interface OracleCredentialScanPropertiesAutoGeneratedBase {} + +export type OracleUserPassScanProperties = OracleUserPassScanPropertiesBase & MitiScanProperties; + +export interface OracleUserPassScanPropertiesBase { + username?: string; + password?: string; + schema?: string; + driverLocation?: string; +} + +export type OracleUserPassScan = OracleUserPassScanBase & Scan; + +export interface OracleUserPassScanBase { + properties?: OracleUserPassScanPropertiesAutoGenerated; +} + +export type OracleUserPassScanPropertiesAutoGenerated = OracleUserPassScanPropertiesAutoGeneratedBase & + OracleUserPassScanProperties; + +export interface OracleUserPassScanPropertiesAutoGeneratedBase {} + +export type SapS4HanaSapS4HanaCredentialScanProperties = SapS4HanaSapS4HanaCredentialScanPropertiesBase & + MitiScanProperties; + +export interface SapS4HanaSapS4HanaCredentialScanPropertiesBase { + clientId?: string; + credential?: SapS4HanaSapS4HanaCredentialScanPropertiesCredential; + jCoLibraryPath?: string; +} + +export type SapS4HanaSapS4HanaCredentialScanPropertiesCredential = SapS4HanaSapS4HanaCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface SapS4HanaSapS4HanaCredentialScanPropertiesCredentialBase {} + +export type SapS4HanaSapS4HanaCredentialScan = SapS4HanaSapS4HanaCredentialScanBase & Scan; + +export interface SapS4HanaSapS4HanaCredentialScanBase { + properties?: SapS4HanaSapS4HanaCredentialScanPropertiesAutoGenerated; +} + +export type SapS4HanaSapS4HanaCredentialScanPropertiesAutoGenerated = SapS4HanaSapS4HanaCredentialScanPropertiesAutoGeneratedBase & + SapS4HanaSapS4HanaCredentialScanProperties; + +export interface SapS4HanaSapS4HanaCredentialScanPropertiesAutoGeneratedBase {} + +export type SapS4HanaSapS4HanaUserPassScanProperties = SapS4HanaSapS4HanaUserPassScanPropertiesBase & + MitiScanProperties; + +export interface SapS4HanaSapS4HanaUserPassScanPropertiesBase { + clientId?: string; + username?: string; + password?: string; + jCoLibraryPath?: string; +} + +export type SapS4HanaSapS4HanaUserPassScan = SapS4HanaSapS4HanaUserPassScanBase & Scan; + +export interface SapS4HanaSapS4HanaUserPassScanBase { + properties?: SapS4HanaSapS4HanaUserPassScanPropertiesAutoGenerated; +} + +export type SapS4HanaSapS4HanaUserPassScanPropertiesAutoGenerated = SapS4HanaSapS4HanaUserPassScanPropertiesAutoGeneratedBase & + SapS4HanaSapS4HanaUserPassScanProperties; + +export interface SapS4HanaSapS4HanaUserPassScanPropertiesAutoGeneratedBase {} + +export type SapEccCredentialScanProperties = SapEccCredentialScanPropertiesBase & + MitiScanProperties; + +export interface SapEccCredentialScanPropertiesBase { + clientId?: string; + credential?: SapEccCredentialScanPropertiesCredential; + jCoLibraryPath?: string; +} + +export type SapEccCredentialScanPropertiesCredential = SapEccCredentialScanPropertiesCredentialBase & + CredentialReference; + +export interface SapEccCredentialScanPropertiesCredentialBase {} + +export type SapEccCredentialScan = SapEccCredentialScanBase & Scan; + +export interface SapEccCredentialScanBase { + properties?: SapEccCredentialScanPropertiesAutoGenerated; +} + +export type SapEccCredentialScanPropertiesAutoGenerated = SapEccCredentialScanPropertiesAutoGeneratedBase & + SapEccCredentialScanProperties; + +export interface SapEccCredentialScanPropertiesAutoGeneratedBase {} + +export type SapEccUserPassScanProperties = SapEccUserPassScanPropertiesBase & MitiScanProperties; + +export interface SapEccUserPassScanPropertiesBase { + clientId?: string; + username?: string; + password?: string; + jCoLibraryPath?: string; +} + +export type SapEccUserPassScan = SapEccUserPassScanBase & Scan; + +export interface SapEccUserPassScanBase { + properties?: SapEccUserPassScanPropertiesAutoGenerated; +} + +export type SapEccUserPassScanPropertiesAutoGenerated = SapEccUserPassScanPropertiesAutoGeneratedBase & + SapEccUserPassScanProperties; + +export interface SapEccUserPassScanPropertiesAutoGeneratedBase {} + +export type PowerBIDelegatedScanProperties = PowerBIDelegatedScanPropertiesBase & ScanProperties; + +export interface PowerBIDelegatedScanPropertiesBase { + tenant?: string; + authenticationType?: string; + clientId?: string; + userName?: string; + password?: string; + includePersonalWorkspaces?: boolean; +} + +export type PowerBIDelegatedScan = PowerBIDelegatedScanBase & Scan; + +export interface PowerBIDelegatedScanBase { + properties?: PowerBIDelegatedScanPropertiesAutoGenerated; +} + +export type PowerBIDelegatedScanPropertiesAutoGenerated = PowerBIDelegatedScanPropertiesAutoGeneratedBase & + PowerBIDelegatedScanProperties; + +export interface PowerBIDelegatedScanPropertiesAutoGeneratedBase {} + +export type PowerBIMsiScanProperties = PowerBIMsiScanPropertiesBase & ScanProperties; + +export interface PowerBIMsiScanPropertiesBase { + includePersonalWorkspaces?: boolean; +} + +export type PowerBIMsiScan = PowerBIMsiScanBase & Scan; + +export interface PowerBIMsiScanBase { + properties?: PowerBIMsiScanPropertiesAutoGenerated; +} + +export type PowerBIMsiScanPropertiesAutoGenerated = PowerBIMsiScanPropertiesAutoGeneratedBase & + PowerBIMsiScanProperties; + +export interface PowerBIMsiScanPropertiesAutoGeneratedBase {} + +export type AzureSubscriptionSystemScanRuleset = AzureSubscriptionSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureSubscriptionSystemScanRulesetBase { + properties?: AzureSubscriptionSystemScanRulesetProperties; +} + +export type AzureSubscriptionSystemScanRulesetProperties = AzureSubscriptionSystemScanRulesetPropertiesBase & + AzureSubscriptionScanRulesetProperties; + +export interface AzureSubscriptionSystemScanRulesetPropertiesBase {} + +export type AzureResourceGroupSystemScanRuleset = AzureResourceGroupSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureResourceGroupSystemScanRulesetBase { + properties?: AzureResourceGroupSystemScanRulesetProperties; +} + +export type AzureResourceGroupSystemScanRulesetProperties = AzureResourceGroupSystemScanRulesetPropertiesBase & + AzureResourceGroupScanRulesetProperties; + +export interface AzureResourceGroupSystemScanRulesetPropertiesBase {} + +export type AzureSynapseWorkspaceSystemScanRuleset = AzureSynapseWorkspaceSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureSynapseWorkspaceSystemScanRulesetBase { + properties?: AzureSynapseWorkspaceSystemScanRulesetProperties; +} + +export type AzureSynapseWorkspaceSystemScanRulesetProperties = AzureSynapseWorkspaceSystemScanRulesetPropertiesBase & + AzureSynapseWorkspaceScanRulesetProperties; + +export interface AzureSynapseWorkspaceSystemScanRulesetPropertiesBase {} + +export type AzureSynapseSystemScanRuleset = AzureSynapseSystemScanRulesetBase & SystemScanRuleset; + +export interface AzureSynapseSystemScanRulesetBase { + properties?: AzureSynapseSystemScanRulesetProperties; +} + +export type AzureSynapseSystemScanRulesetProperties = AzureSynapseSystemScanRulesetPropertiesBase & + AzureSynapseScanRulesetProperties; + +export interface AzureSynapseSystemScanRulesetPropertiesBase {} + +export type AdlsGen1SystemScanRuleset = AdlsGen1SystemScanRulesetBase & SystemScanRuleset; + +export interface AdlsGen1SystemScanRulesetBase { + properties?: AdlsGen1SystemScanRulesetProperties; +} + +export type AdlsGen1SystemScanRulesetProperties = AdlsGen1SystemScanRulesetPropertiesBase & + AdlsGen1ScanRulesetProperties; + +export interface AdlsGen1SystemScanRulesetPropertiesBase {} + +export type AdlsGen2SystemScanRuleset = AdlsGen2SystemScanRulesetBase & SystemScanRuleset; + +export interface AdlsGen2SystemScanRulesetBase { + properties?: AdlsGen2SystemScanRulesetProperties; +} + +export type AdlsGen2SystemScanRulesetProperties = AdlsGen2SystemScanRulesetPropertiesBase & + AdlsGen2ScanRulesetProperties; + +export interface AdlsGen2SystemScanRulesetPropertiesBase {} + +export type AmazonAccountSystemScanRuleset = AmazonAccountSystemScanRulesetBase & SystemScanRuleset; + +export interface AmazonAccountSystemScanRulesetBase { + properties?: AmazonAccountSystemScanRulesetProperties; +} + +export type AmazonAccountSystemScanRulesetProperties = AmazonAccountSystemScanRulesetPropertiesBase & + AmazonAccountScanRulesetProperties; + +export interface AmazonAccountSystemScanRulesetPropertiesBase {} + +export type AmazonS3SystemScanRuleset = AmazonS3SystemScanRulesetBase & SystemScanRuleset; + +export interface AmazonS3SystemScanRulesetBase { + properties?: AmazonS3SystemScanRulesetProperties; +} + +export type AmazonS3SystemScanRulesetProperties = AmazonS3SystemScanRulesetPropertiesBase & + AmazonS3ScanRulesetProperties; + +export interface AmazonS3SystemScanRulesetPropertiesBase {} + +export type AmazonSqlSystemScanRuleset = AmazonSqlSystemScanRulesetBase & SystemScanRuleset; + +export interface AmazonSqlSystemScanRulesetBase { + properties?: AmazonSqlSystemScanRulesetProperties; +} + +export type AmazonSqlSystemScanRulesetProperties = AmazonSqlSystemScanRulesetPropertiesBase & + AmazonSqlScanRulesetProperties; + +export interface AmazonSqlSystemScanRulesetPropertiesBase {} + +export type AzureCosmosDbSystemScanRuleset = AzureCosmosDbSystemScanRulesetBase & SystemScanRuleset; + +export interface AzureCosmosDbSystemScanRulesetBase { + properties?: AzureCosmosDbSystemScanRulesetProperties; +} + +export type AzureCosmosDbSystemScanRulesetProperties = AzureCosmosDbSystemScanRulesetPropertiesBase & + AzureCosmosDbScanRulesetProperties; + +export interface AzureCosmosDbSystemScanRulesetPropertiesBase {} + +export type AzureDataExplorerSystemScanRuleset = AzureDataExplorerSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureDataExplorerSystemScanRulesetBase { + properties?: AzureDataExplorerSystemScanRulesetProperties; +} + +export type AzureDataExplorerSystemScanRulesetProperties = AzureDataExplorerSystemScanRulesetPropertiesBase & + AzureDataExplorerScanRulesetProperties; + +export interface AzureDataExplorerSystemScanRulesetPropertiesBase {} + +export type AzureFileServiceSystemScanRuleset = AzureFileServiceSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureFileServiceSystemScanRulesetBase { + properties?: AzureFileServiceSystemScanRulesetProperties; +} + +export type AzureFileServiceSystemScanRulesetProperties = AzureFileServiceSystemScanRulesetPropertiesBase & + AzureFileServiceScanRulesetProperties; + +export interface AzureFileServiceSystemScanRulesetPropertiesBase {} + +export type AzureSqlDatabaseSystemScanRuleset = AzureSqlDatabaseSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureSqlDatabaseSystemScanRulesetBase { + properties?: AzureSqlDatabaseSystemScanRulesetProperties; +} + +export type AzureSqlDatabaseSystemScanRulesetProperties = AzureSqlDatabaseSystemScanRulesetPropertiesBase & + AzureSqlDatabaseScanRulesetProperties; + +export interface AzureSqlDatabaseSystemScanRulesetPropertiesBase {} + +export type AmazonPostgreSqlSystemScanRuleset = AmazonPostgreSqlSystemScanRulesetBase & + SystemScanRuleset; + +export interface AmazonPostgreSqlSystemScanRulesetBase { + properties?: AmazonPostgreSqlSystemScanRulesetProperties; +} + +export type AmazonPostgreSqlSystemScanRulesetProperties = AmazonPostgreSqlSystemScanRulesetPropertiesBase & + AmazonPostgreSqlScanRulesetProperties; + +export interface AmazonPostgreSqlSystemScanRulesetPropertiesBase {} + +export type AzurePostgreSqlSystemScanRuleset = AzurePostgreSqlSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzurePostgreSqlSystemScanRulesetBase { + properties?: AzurePostgreSqlSystemScanRulesetProperties; +} + +export type AzurePostgreSqlSystemScanRulesetProperties = AzurePostgreSqlSystemScanRulesetPropertiesBase & + AzurePostgreSqlScanRulesetProperties; + +export interface AzurePostgreSqlSystemScanRulesetPropertiesBase {} + +export type SqlServerDatabaseSystemScanRuleset = SqlServerDatabaseSystemScanRulesetBase & + SystemScanRuleset; + +export interface SqlServerDatabaseSystemScanRulesetBase { + properties?: SqlServerDatabaseSystemScanRulesetProperties; +} + +export type SqlServerDatabaseSystemScanRulesetProperties = SqlServerDatabaseSystemScanRulesetPropertiesBase & + SqlServerDatabaseScanRulesetProperties; + +export interface SqlServerDatabaseSystemScanRulesetPropertiesBase {} + +export type AzureSqlDatabaseManagedInstanceSystemScanRuleset = AzureSqlDatabaseManagedInstanceSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureSqlDatabaseManagedInstanceSystemScanRulesetBase { + properties?: AzureSqlDatabaseManagedInstanceSystemScanRulesetProperties; +} + +export type AzureSqlDatabaseManagedInstanceSystemScanRulesetProperties = AzureSqlDatabaseManagedInstanceSystemScanRulesetPropertiesBase & + AzureSqlDatabaseManagedInstanceScanRulesetProperties; + +export interface AzureSqlDatabaseManagedInstanceSystemScanRulesetPropertiesBase {} + +export type AzureSqlDataWarehouseSystemScanRuleset = AzureSqlDataWarehouseSystemScanRulesetBase & + SystemScanRuleset; + +export interface AzureSqlDataWarehouseSystemScanRulesetBase { + properties?: AzureSqlDataWarehouseSystemScanRulesetProperties; +} + +export type AzureSqlDataWarehouseSystemScanRulesetProperties = AzureSqlDataWarehouseSystemScanRulesetPropertiesBase & + AzureSqlDataWarehouseScanRulesetProperties; + +export interface AzureSqlDataWarehouseSystemScanRulesetPropertiesBase {} + +export type AzureMySqlSystemScanRuleset = AzureMySqlSystemScanRulesetBase & SystemScanRuleset; + +export interface AzureMySqlSystemScanRulesetBase { + properties?: AzureMySqlSystemScanRulesetProperties; +} + +export type AzureMySqlSystemScanRulesetProperties = AzureMySqlSystemScanRulesetPropertiesBase & + AzureMySqlScanRulesetProperties; + +export interface AzureMySqlSystemScanRulesetPropertiesBase {} + +export type AzureStorageSystemScanRuleset = AzureStorageSystemScanRulesetBase & SystemScanRuleset; + +export interface AzureStorageSystemScanRulesetBase { + properties?: AzureStorageSystemScanRulesetProperties; +} + +export type AzureStorageSystemScanRulesetProperties = AzureStorageSystemScanRulesetPropertiesBase & + AzureStorageScanRulesetProperties; + +export interface AzureStorageSystemScanRulesetPropertiesBase {} + +export type TeradataSystemScanRuleset = TeradataSystemScanRulesetBase & SystemScanRuleset; + +export interface TeradataSystemScanRulesetBase { + properties?: TeradataSystemScanRulesetProperties; +} + +export type TeradataSystemScanRulesetProperties = TeradataSystemScanRulesetPropertiesBase & + TeradataScanRulesetProperties; + +export interface TeradataSystemScanRulesetPropertiesBase {} + +export type OracleSystemScanRuleset = OracleSystemScanRulesetBase & SystemScanRuleset; + +export interface OracleSystemScanRulesetBase { + properties?: OracleSystemScanRulesetProperties; +} + +export type OracleSystemScanRulesetProperties = OracleSystemScanRulesetPropertiesBase & + OracleScanRulesetProperties; + +export interface OracleSystemScanRulesetPropertiesBase {} + +export type SapS4HanaSystemScanRuleset = SapS4HanaSystemScanRulesetBase & SystemScanRuleset; + +export interface SapS4HanaSystemScanRulesetBase { + properties?: SapS4HanaSystemScanRulesetProperties; +} + +export type SapS4HanaSystemScanRulesetProperties = SapS4HanaSystemScanRulesetPropertiesBase & + SapS4HanaScanRulesetProperties; + +export interface SapS4HanaSystemScanRulesetPropertiesBase {} + +export type SapEccSystemScanRuleset = SapEccSystemScanRulesetBase & SystemScanRuleset; + +export interface SapEccSystemScanRulesetBase { + properties?: SapEccSystemScanRulesetProperties; +} + +export type SapEccSystemScanRulesetProperties = SapEccSystemScanRulesetPropertiesBase & + SapEccScanRulesetProperties; + +export interface SapEccSystemScanRulesetPropertiesBase {} + +export type PowerBISystemScanRuleset = PowerBISystemScanRulesetBase & SystemScanRuleset; + +export interface PowerBISystemScanRulesetBase { + properties?: PowerBISystemScanRulesetProperties; +} + +export type PowerBISystemScanRulesetProperties = PowerBISystemScanRulesetPropertiesBase & + PowerBIScanRulesetProperties; + +export interface PowerBISystemScanRulesetPropertiesBase {} + +export type ClassificationRuleType = "System" | "Custom"; +export type ClassificationAction = "Keep" | "Delete"; +export type OperationStatus = + | "Accepted" + | "InProgress" + | "TransientFailure" + | "Succeeded" + | "Failed" + | "Canceled"; +export type DataSourceType = + | "None" + | "AzureSubscription" + | "AzureResourceGroup" + | "AzureSynapseWorkspace" + | "AzureSynapse" + | "AdlsGen1" + | "AdlsGen2" + | "AmazonAccount" + | "AmazonS3" + | "AmazonSql" + | "AzureCosmosDb" + | "AzureDataExplorer" + | "AzureFileService" + | "AzureSqlDatabase" + | "AmazonPostgreSql" + | "AzurePostgreSql" + | "SqlServerDatabase" + | "AzureSqlDatabaseManagedInstance" + | "AzureSqlDataWarehouse" + | "AzureMySql" + | "AzureStorage" + | "Teradata" + | "Oracle" + | "SapS4Hana" + | "SapEcc" + | "PowerBI"; +export type ScanAuthorizationType = + | "AzureSubscriptionCredential" + | "AzureSubscriptionMsi" + | "AzureResourceGroupCredential" + | "AzureResourceGroupMsi" + | "AzureSynapseWorkspaceCredential" + | "AzureSynapseWorkspaceMsi" + | "AzureSynapseCredential" + | "AzureSynapseMsi" + | "AdlsGen1Credential" + | "AdlsGen1Msi" + | "AdlsGen2Credential" + | "AdlsGen2Msi" + | "AmazonAccountCredential" + | "AmazonS3Credential" + | "AmazonS3RoleARN" + | "AmazonSqlCredential" + | "AzureCosmosDbCredential" + | "AzureDataExplorerCredential" + | "AzureDataExplorerMsi" + | "AzureFileServiceCredential" + | "AzureSqlDatabaseCredential" + | "AzureSqlDatabaseMsi" + | "AmazonPostgreSqlCredential" + | "AzurePostgreSqlCredential" + | "SqlServerDatabaseCredential" + | "AzureSqlDatabaseManagedInstanceCredential" + | "AzureSqlDatabaseManagedInstanceMsi" + | "AzureSqlDataWarehouseCredential" + | "AzureSqlDataWarehouseMsi" + | "AzureMySqlCredential" + | "AzureStorageCredential" + | "AzureStorageMsi" + | "TeradataTeradataCredential" + | "TeradataTeradataUserPass" + | "TeradataUserPass" + | "OracleOracleCredential" + | "OracleOracleUserPass" + | "SapS4HanaSapS4HanaCredential" + | "SapS4HanaSapS4HanaUserPass" + | "SapEccSapEccCredential" + | "SapEccSapEccUserPass" + | "PowerBIDelegated" + | "PowerBIMsi"; +export type ScanRulesetType = "Custom" | "System"; +export type ScanLevelType = "Full" | "Incremental"; +export type ScanRulesetStatus = "Enabled" | "Disabled"; +export type TriggerFrequency = "Week" | "Month"; +export type DaysOfWeek = + | "Sunday" + | "Monday" + | "Tuesday" + | "Wednesday" + | "Thursday" + | "Friday" + | "Saturday"; +export type DayOfWeek = + | "Sunday" + | "Monday" + | "Tuesday" + | "Wednesday" + | "Thursday" + | "Friday" + | "Saturday"; +export type ClassificationRuleStatus = "Enabled" | "Disabled"; +export type ClassificationRulePatternType = "Regex"; +export type FileExtensionsType = + | "AVRO" + | "ORC" + | "PARQUET" + | "JSON" + | "TXT" + | "XML" + | "Documents" + | "CSV" + | "PSV" + | "SSV" + | "TSV" + | "GZ" + | "DOC" + | "DOCM" + | "DOCX" + | "DOT" + | "ODP" + | "ODS" + | "ODT" + | "PDF" + | "POT" + | "PPS" + | "PPSX" + | "PPT" + | "PPTM" + | "PPTX" + | "XLC" + | "XLS" + | "XLSB" + | "XLSM" + | "XLSX" + | "XLT"; +export type CredentialType = + | "AccountKey" + | "ServicePrincipal" + | "BasicAuth" + | "SqlAuth" + | "AmazonARN"; +export type ScanDiagnosticsExceptionCountMapDictionary = Record; +export type RecurrenceScheduleAdditionalPropertiesDictionary = Record; +export type RecurrenceScheduleOccurrenceAdditionalPropertiesDictionary = Record; diff --git a/sdk/purview/purview-scanning-rest/src/parameters.ts b/sdk/purview/purview-scanning-rest/src/parameters.ts new file mode 100644 index 000000000000..94a00fa8677a --- /dev/null +++ b/sdk/purview/purview-scanning-rest/src/parameters.ts @@ -0,0 +1,140 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { RequestParameters } from "@azure-rest/core-client"; +import { + AzureKeyVault, + ClassificationRule, + ClassificationAction, + DataSource, + Filter, + Scan, + ScanLevelType, + ScanRuleset, + DataSourceType, + Trigger, +} from "./models"; + +export type KeyVaultConnectionsGetParameters = RequestParameters; + +export interface KeyVaultConnectionsCreateBodyParam { + body: AzureKeyVault; +} + +export type KeyVaultConnectionsCreateParameters = RequestParameters & + KeyVaultConnectionsCreateBodyParam; +export type KeyVaultConnectionsDeleteParameters = RequestParameters; +export type KeyVaultConnectionsListAllParameters = RequestParameters; +export type ClassificationRulesGetParameters = RequestParameters; + +export interface ClassificationRulesCreateOrUpdateBodyParam { + body?: ClassificationRule; +} + +export type ClassificationRulesCreateOrUpdateParameters = RequestParameters & + ClassificationRulesCreateOrUpdateBodyParam; +export type ClassificationRulesDeleteParameters = RequestParameters; +export type ClassificationRulesListAllParameters = RequestParameters; +export type ClassificationRulesListVersionsByClassificationRuleNameParameters = RequestParameters; + +export interface ClassificationRulesTagClassificationVersionQueryParamProperties { + action: ClassificationAction; +} + +export interface ClassificationRulesTagClassificationVersionQueryParam { + queryParameters: ClassificationRulesTagClassificationVersionQueryParamProperties; +} + +export type ClassificationRulesTagClassificationVersionParameters = RequestParameters & + ClassificationRulesTagClassificationVersionQueryParam; + +export interface DataSourcesCreateOrUpdateBodyParam { + body?: DataSource; +} + +export type DataSourcesCreateOrUpdateParameters = RequestParameters & + DataSourcesCreateOrUpdateBodyParam; +export type DataSourcesGetParameters = RequestParameters; +export type DataSourcesDeleteParameters = RequestParameters; +export type DataSourcesListAllParameters = RequestParameters; +export type FiltersGetParameters = RequestParameters; + +export interface FiltersCreateOrUpdateBodyParam { + body?: Filter; +} + +export type FiltersCreateOrUpdateParameters = RequestParameters & FiltersCreateOrUpdateBodyParam; + +export interface ScansCreateOrUpdateBodyParam { + body: Scan; +} + +export type ScansCreateOrUpdateParameters = RequestParameters & ScansCreateOrUpdateBodyParam; +export type ScansGetParameters = RequestParameters; +export type ScansDeleteParameters = RequestParameters; +export type ScansListByDataSourceParameters = RequestParameters; + +export interface ScanResultRunScanQueryParamProperties { + scanLevel?: ScanLevelType; +} + +export interface ScanResultRunScanQueryParam { + queryParameters?: ScanResultRunScanQueryParamProperties; +} + +export type ScanResultRunScanParameters = RequestParameters & ScanResultRunScanQueryParam; +export type ScanResultCancelScanParameters = RequestParameters; +export type ScanResultListScanHistoryParameters = RequestParameters; +export type ScanRulesetsGetParameters = RequestParameters; + +export interface ScanRulesetsCreateOrUpdateBodyParam { + body?: ScanRuleset; +} + +export type ScanRulesetsCreateOrUpdateParameters = RequestParameters & + ScanRulesetsCreateOrUpdateBodyParam; +export type ScanRulesetsDeleteParameters = RequestParameters; +export type ScanRulesetsListAllParameters = RequestParameters; +export type SystemScanRulesetsListAllParameters = RequestParameters; +export type SystemScanRulesetsGetParameters = RequestParameters; + +export interface SystemScanRulesetsGetByVersionQueryParamProperties { + dataSourceType?: DataSourceType; +} + +export interface SystemScanRulesetsGetByVersionQueryParam { + queryParameters?: SystemScanRulesetsGetByVersionQueryParamProperties; +} + +export type SystemScanRulesetsGetByVersionParameters = RequestParameters & + SystemScanRulesetsGetByVersionQueryParam; + +export interface SystemScanRulesetsGetLatestQueryParamProperties { + dataSourceType?: DataSourceType; +} + +export interface SystemScanRulesetsGetLatestQueryParam { + queryParameters?: SystemScanRulesetsGetLatestQueryParamProperties; +} + +export type SystemScanRulesetsGetLatestParameters = RequestParameters & + SystemScanRulesetsGetLatestQueryParam; + +export interface SystemScanRulesetsListVersionsByDataSourceQueryParamProperties { + dataSourceType?: DataSourceType; +} + +export interface SystemScanRulesetsListVersionsByDataSourceQueryParam { + queryParameters?: SystemScanRulesetsListVersionsByDataSourceQueryParamProperties; +} + +export type SystemScanRulesetsListVersionsByDataSourceParameters = RequestParameters & + SystemScanRulesetsListVersionsByDataSourceQueryParam; +export type TriggersGetTriggerParameters = RequestParameters; + +export interface TriggersCreateTriggerBodyParam { + body: Trigger; +} + +export type TriggersCreateTriggerParameters = RequestParameters & TriggersCreateTriggerBodyParam; +export type TriggersDeleteTriggerParameters = RequestParameters; diff --git a/sdk/purview/purview-scanning-rest/src/purviewScanning.ts b/sdk/purview/purview-scanning-rest/src/purviewScanning.ts new file mode 100644 index 000000000000..1d442dc48894 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/src/purviewScanning.ts @@ -0,0 +1,488 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { + KeyVaultConnectionsGetParameters, + KeyVaultConnectionsCreateParameters, + KeyVaultConnectionsDeleteParameters, + KeyVaultConnectionsListAllParameters, + ClassificationRulesGetParameters, + ClassificationRulesCreateOrUpdateParameters, + ClassificationRulesDeleteParameters, + ClassificationRulesListAllParameters, + ClassificationRulesListVersionsByClassificationRuleNameParameters, + ClassificationRulesTagClassificationVersionParameters, + DataSourcesCreateOrUpdateParameters, + DataSourcesGetParameters, + DataSourcesDeleteParameters, + DataSourcesListAllParameters, + FiltersGetParameters, + FiltersCreateOrUpdateParameters, + ScansCreateOrUpdateParameters, + ScansGetParameters, + ScansDeleteParameters, + ScansListByDataSourceParameters, + ScanResultRunScanParameters, + ScanResultCancelScanParameters, + ScanResultListScanHistoryParameters, + ScanRulesetsGetParameters, + ScanRulesetsCreateOrUpdateParameters, + ScanRulesetsDeleteParameters, + ScanRulesetsListAllParameters, + SystemScanRulesetsListAllParameters, + SystemScanRulesetsGetParameters, + SystemScanRulesetsGetByVersionParameters, + SystemScanRulesetsGetLatestParameters, + SystemScanRulesetsListVersionsByDataSourceParameters, + TriggersGetTriggerParameters, + TriggersCreateTriggerParameters, + TriggersDeleteTriggerParameters, +} from "./parameters"; +import { + KeyVaultConnectionsGet200Response, + KeyVaultConnectionsGetdefaultResponse, + KeyVaultConnectionsCreate200Response, + KeyVaultConnectionsCreatedefaultResponse, + KeyVaultConnectionsDelete200Response, + KeyVaultConnectionsDelete204Response, + KeyVaultConnectionsDeletedefaultResponse, + KeyVaultConnectionsListAll200Response, + KeyVaultConnectionsListAlldefaultResponse, + ClassificationRulesGet200Response, + ClassificationRulesGetdefaultResponse, + ClassificationRulesCreateOrUpdate200Response, + ClassificationRulesCreateOrUpdate201Response, + ClassificationRulesCreateOrUpdatedefaultResponse, + ClassificationRulesDelete200Response, + ClassificationRulesDelete204Response, + ClassificationRulesDeletedefaultResponse, + ClassificationRulesListAll200Response, + ClassificationRulesListAlldefaultResponse, + ClassificationRulesListVersionsByClassificationRuleName200Response, + ClassificationRulesListVersionsByClassificationRuleNamedefaultResponse, + ClassificationRulesTagClassificationVersion202Response, + ClassificationRulesTagClassificationVersiondefaultResponse, + DataSourcesCreateOrUpdate200Response, + DataSourcesCreateOrUpdate201Response, + DataSourcesCreateOrUpdatedefaultResponse, + DataSourcesGet200Response, + DataSourcesGetdefaultResponse, + DataSourcesDelete200Response, + DataSourcesDelete204Response, + DataSourcesDeletedefaultResponse, + DataSourcesListAll200Response, + DataSourcesListAlldefaultResponse, + FiltersGet200Response, + FiltersGetdefaultResponse, + FiltersCreateOrUpdate200Response, + FiltersCreateOrUpdate201Response, + FiltersCreateOrUpdatedefaultResponse, + ScansCreateOrUpdate200Response, + ScansCreateOrUpdate201Response, + ScansCreateOrUpdatedefaultResponse, + ScansGet200Response, + ScansGetdefaultResponse, + ScansDelete200Response, + ScansDelete204Response, + ScansDeletedefaultResponse, + ScansListByDataSource200Response, + ScansListByDataSourcedefaultResponse, + ScanResultRunScan202Response, + ScanResultRunScandefaultResponse, + ScanResultCancelScan202Response, + ScanResultCancelScandefaultResponse, + ScanResultListScanHistory200Response, + ScanResultListScanHistorydefaultResponse, + ScanRulesetsGet200Response, + ScanRulesetsGetdefaultResponse, + ScanRulesetsCreateOrUpdate200Response, + ScanRulesetsCreateOrUpdate201Response, + ScanRulesetsCreateOrUpdatedefaultResponse, + ScanRulesetsDelete200Response, + ScanRulesetsDelete204Response, + ScanRulesetsDeletedefaultResponse, + ScanRulesetsListAll200Response, + ScanRulesetsListAlldefaultResponse, + SystemScanRulesetsListAll200Response, + SystemScanRulesetsListAlldefaultResponse, + SystemScanRulesetsGet200Response, + SystemScanRulesetsGetdefaultResponse, + SystemScanRulesetsGetByVersion200Response, + SystemScanRulesetsGetByVersiondefaultResponse, + SystemScanRulesetsGetLatest200Response, + SystemScanRulesetsGetLatestdefaultResponse, + SystemScanRulesetsListVersionsByDataSource200Response, + SystemScanRulesetsListVersionsByDataSourcedefaultResponse, + TriggersGetTrigger200Response, + TriggersGetTriggerdefaultResponse, + TriggersCreateTrigger200Response, + TriggersCreateTrigger201Response, + TriggersCreateTriggerdefaultResponse, + TriggersDeleteTrigger200Response, + TriggersDeleteTrigger204Response, + TriggersDeleteTriggerdefaultResponse, +} from "./responses"; +import { getClient, ClientOptions, Client } from "@azure-rest/core-client"; +import { TokenCredential } from "@azure/core-auth"; + +export interface KeyVaultConnectionsDelete { + /** Gets key vault information */ + get( + options?: KeyVaultConnectionsGetParameters + ): Promise; + /** Creates an instance of a key vault connection */ + put( + options: KeyVaultConnectionsCreateParameters + ): Promise; + /** Deletes the key vault connection associated with the account */ + delete( + options?: KeyVaultConnectionsDeleteParameters + ): Promise< + | KeyVaultConnectionsDelete200Response + | KeyVaultConnectionsDelete204Response + | KeyVaultConnectionsDeletedefaultResponse + >; +} + +export interface KeyVaultConnectionsListAll { + /** List key vault connections in account */ + get( + options?: KeyVaultConnectionsListAllParameters + ): Promise; +} + +export interface ClassificationRulesDelete { + /** Get a classification rule */ + get( + options?: ClassificationRulesGetParameters + ): Promise; + /** Creates or Updates a classification rule */ + put( + options?: ClassificationRulesCreateOrUpdateParameters + ): Promise< + | ClassificationRulesCreateOrUpdate200Response + | ClassificationRulesCreateOrUpdate201Response + | ClassificationRulesCreateOrUpdatedefaultResponse + >; + /** Deletes a classification rule */ + delete( + options?: ClassificationRulesDeleteParameters + ): Promise< + | ClassificationRulesDelete200Response + | ClassificationRulesDelete204Response + | ClassificationRulesDeletedefaultResponse + >; +} + +export interface ClassificationRulesListAll { + /** List classification rules in Account */ + get( + options?: ClassificationRulesListAllParameters + ): Promise; +} + +export interface ClassificationRulesListVersionsByClassificationRuleName { + /** Lists the rule versions of a classification rule */ + get( + options?: ClassificationRulesListVersionsByClassificationRuleNameParameters + ): Promise< + | ClassificationRulesListVersionsByClassificationRuleName200Response + | ClassificationRulesListVersionsByClassificationRuleNamedefaultResponse + >; +} + +export interface ClassificationRulesTagClassificationVersion { + /** Sets Classification Action on a specific classification rule version. */ + post( + options?: ClassificationRulesTagClassificationVersionParameters + ): Promise< + | ClassificationRulesTagClassificationVersion202Response + | ClassificationRulesTagClassificationVersiondefaultResponse + >; +} + +export interface DataSourcesDelete { + /** Creates or Updates a data source */ + put( + options?: DataSourcesCreateOrUpdateParameters + ): Promise< + | DataSourcesCreateOrUpdate200Response + | DataSourcesCreateOrUpdate201Response + | DataSourcesCreateOrUpdatedefaultResponse + >; + /** Get a data source */ + get( + options?: DataSourcesGetParameters + ): Promise; + /** Deletes a data source */ + delete( + options?: DataSourcesDeleteParameters + ): Promise< + DataSourcesDelete200Response | DataSourcesDelete204Response | DataSourcesDeletedefaultResponse + >; +} + +export interface DataSourcesListAll { + /** List data sources in Data catalog */ + get( + options?: DataSourcesListAllParameters + ): Promise; +} + +export interface FiltersCreateOrUpdate { + /** Get a filter */ + get(options?: FiltersGetParameters): Promise; + /** Creates or updates a filter */ + put( + options?: FiltersCreateOrUpdateParameters + ): Promise< + | FiltersCreateOrUpdate200Response + | FiltersCreateOrUpdate201Response + | FiltersCreateOrUpdatedefaultResponse + >; +} + +export interface ScansDelete { + /** Creates an instance of a scan */ + put( + options: ScansCreateOrUpdateParameters + ): Promise< + | ScansCreateOrUpdate200Response + | ScansCreateOrUpdate201Response + | ScansCreateOrUpdatedefaultResponse + >; + /** Gets a scan information */ + get(options?: ScansGetParameters): Promise; + /** Deletes the scan associated with the data source */ + delete( + options?: ScansDeleteParameters + ): Promise; +} + +export interface ScansListByDataSource { + /** List scans in data source */ + get( + options?: ScansListByDataSourceParameters + ): Promise; +} + +export interface ScanResultRunScan { + /** Runs the scan */ + put( + options?: ScanResultRunScanParameters + ): Promise; +} + +export interface ScanResultCancelScan { + /** Cancels a scan */ + post( + options?: ScanResultCancelScanParameters + ): Promise; +} + +export interface ScanResultListScanHistory { + /** Lists the scan history of a scan */ + get( + options?: ScanResultListScanHistoryParameters + ): Promise; +} + +export interface ScanRulesetsDelete { + /** Get a scan ruleset */ + get( + options?: ScanRulesetsGetParameters + ): Promise; + /** Creates or Updates a scan ruleset */ + put( + options?: ScanRulesetsCreateOrUpdateParameters + ): Promise< + | ScanRulesetsCreateOrUpdate200Response + | ScanRulesetsCreateOrUpdate201Response + | ScanRulesetsCreateOrUpdatedefaultResponse + >; + /** Deletes a scan ruleset */ + delete( + options?: ScanRulesetsDeleteParameters + ): Promise< + | ScanRulesetsDelete200Response + | ScanRulesetsDelete204Response + | ScanRulesetsDeletedefaultResponse + >; +} + +export interface ScanRulesetsListAll { + /** List scan rulesets in Data catalog */ + get( + options?: ScanRulesetsListAllParameters + ): Promise; +} + +export interface SystemScanRulesetsListAll { + /** List all system scan rulesets for an account */ + get( + options?: SystemScanRulesetsListAllParameters + ): Promise; +} + +export interface SystemScanRulesetsGet { + /** Get a system scan ruleset for a data source */ + get( + options?: SystemScanRulesetsGetParameters + ): Promise; +} + +export interface SystemScanRulesetsGetByVersion { + /** Get a scan ruleset by version */ + get( + options?: SystemScanRulesetsGetByVersionParameters + ): Promise< + SystemScanRulesetsGetByVersion200Response | SystemScanRulesetsGetByVersiondefaultResponse + >; +} + +export interface SystemScanRulesetsGetLatest { + /** Get the latest version of a system scan ruleset */ + get( + options?: SystemScanRulesetsGetLatestParameters + ): Promise; +} + +export interface SystemScanRulesetsListVersionsByDataSource { + /** List system scan ruleset versions in Data catalog */ + get( + options?: SystemScanRulesetsListVersionsByDataSourceParameters + ): Promise< + | SystemScanRulesetsListVersionsByDataSource200Response + | SystemScanRulesetsListVersionsByDataSourcedefaultResponse + >; +} + +export interface TriggersDeleteTrigger { + /** Gets trigger information */ + get( + options?: TriggersGetTriggerParameters + ): Promise; + /** Creates an instance of a trigger */ + put( + options: TriggersCreateTriggerParameters + ): Promise< + | TriggersCreateTrigger200Response + | TriggersCreateTrigger201Response + | TriggersCreateTriggerdefaultResponse + >; + /** Deletes the trigger associated with the scan */ + delete( + options?: TriggersDeleteTriggerParameters + ): Promise< + | TriggersDeleteTrigger200Response + | TriggersDeleteTrigger204Response + | TriggersDeleteTriggerdefaultResponse + >; +} + +export interface Routes { + /** Resource for '/azureKeyVaults/\{keyVaultName\}' has methods for the following verbs: get, put, delete */ + (path: "/azureKeyVaults/{keyVaultName}", keyVaultName: string): KeyVaultConnectionsDelete; + /** Resource for '/azureKeyVaults' has methods for the following verbs: get */ + (path: "/azureKeyVaults"): KeyVaultConnectionsListAll; + /** Resource for '/classificationrules/\{classificationRuleName\}' has methods for the following verbs: get, put, delete */ + ( + path: "/classificationrules/{classificationRuleName}", + classificationRuleName: string + ): ClassificationRulesDelete; + /** Resource for '/classificationrules' has methods for the following verbs: get */ + (path: "/classificationrules"): ClassificationRulesListAll; + /** Resource for '/classificationrules/\{classificationRuleName\}/versions' has methods for the following verbs: get */ + ( + path: "/classificationrules/{classificationRuleName}/versions", + classificationRuleName: string + ): ClassificationRulesListVersionsByClassificationRuleName; + /** Resource for '/classificationrules/\{classificationRuleName\}/versions/\{classificationRuleVersion\}/:tag' has methods for the following verbs: post */ + ( + path: "/classificationrules/{classificationRuleName}/versions/{classificationRuleVersion}/:tag", + classificationRuleName: string, + classificationRuleVersion: string + ): ClassificationRulesTagClassificationVersion; + /** Resource for '/datasources/\{dataSourceName\}' has methods for the following verbs: put, get, delete */ + (path: "/datasources/{dataSourceName}", dataSourceName: string): DataSourcesDelete; + /** Resource for '/datasources' has methods for the following verbs: get */ + (path: "/datasources"): DataSourcesListAll; + /** Resource for '/datasources/\{dataSourceName\}/scans/\{scanName\}/filters/custom' has methods for the following verbs: get, put */ + ( + path: "/datasources/{dataSourceName}/scans/{scanName}/filters/custom", + dataSourceName: string, + scanName: string + ): FiltersCreateOrUpdate; + /** Resource for '/datasources/\{dataSourceName\}/scans/\{scanName\}' has methods for the following verbs: put, get, delete */ + ( + path: "/datasources/{dataSourceName}/scans/{scanName}", + dataSourceName: string, + scanName: string + ): ScansDelete; + /** Resource for '/datasources/\{dataSourceName\}/scans' has methods for the following verbs: get */ + (path: "/datasources/{dataSourceName}/scans", dataSourceName: string): ScansListByDataSource; + /** Resource for '/datasources/\{dataSourceName\}/scans/\{scanName\}/runs/\{runId\}' has methods for the following verbs: put */ + ( + path: "/datasources/{dataSourceName}/scans/{scanName}/runs/{runId}", + dataSourceName: string, + scanName: string, + runId: string + ): ScanResultRunScan; + /** Resource for '/datasources/\{dataSourceName\}/scans/\{scanName\}/runs/\{runId\}/:cancel' has methods for the following verbs: post */ + ( + path: "/datasources/{dataSourceName}/scans/{scanName}/runs/{runId}/:cancel", + dataSourceName: string, + scanName: string, + runId: string + ): ScanResultCancelScan; + /** Resource for '/datasources/\{dataSourceName\}/scans/\{scanName\}/runs' has methods for the following verbs: get */ + ( + path: "/datasources/{dataSourceName}/scans/{scanName}/runs", + dataSourceName: string, + scanName: string + ): ScanResultListScanHistory; + /** Resource for '/scanrulesets/\{scanRulesetName\}' has methods for the following verbs: get, put, delete */ + (path: "/scanrulesets/{scanRulesetName}", scanRulesetName: string): ScanRulesetsDelete; + /** Resource for '/scanrulesets' has methods for the following verbs: get */ + (path: "/scanrulesets"): ScanRulesetsListAll; + /** Resource for '/systemScanRulesets' has methods for the following verbs: get */ + (path: "/systemScanRulesets"): SystemScanRulesetsListAll; + /** Resource for '/systemScanRulesets/datasources/\{dataSourceType\}' has methods for the following verbs: get */ + ( + path: "/systemScanRulesets/datasources/{dataSourceType}", + dataSourceType: string + ): SystemScanRulesetsGet; + /** Resource for '/systemScanRulesets/versions/\{version\}' has methods for the following verbs: get */ + (path: "/systemScanRulesets/versions/{version}", version: string): SystemScanRulesetsGetByVersion; + /** Resource for '/systemScanRulesets/versions/latest' has methods for the following verbs: get */ + (path: "/systemScanRulesets/versions/latest"): SystemScanRulesetsGetLatest; + /** Resource for '/systemScanRulesets/versions' has methods for the following verbs: get */ + (path: "/systemScanRulesets/versions"): SystemScanRulesetsListVersionsByDataSource; + /** Resource for '/datasources/\{dataSourceName\}/scans/\{scanName\}/triggers/default' has methods for the following verbs: get, put, delete */ + ( + path: "/datasources/{dataSourceName}/scans/{scanName}/triggers/default", + dataSourceName: string, + scanName: string + ): TriggersDeleteTrigger; +} + +export type PurviewScanningRestClient = Client & { + path: Routes; +}; + +export default function PurviewScanning( + Endpoint: string, + credentials: TokenCredential, + options: ClientOptions = {} +): PurviewScanningRestClient { + const baseUrl = options.baseUrl ?? `${Endpoint}`; + options.apiVersion = options.apiVersion ?? "2018-12-01-preview"; + options = { + ...options, + credentials: { + scopes: ["https://purview.azure.net/.default"], + }, + }; + + return getClient(baseUrl, credentials, options) as PurviewScanningRestClient; +} diff --git a/sdk/purview/purview-scanning-rest/src/responses.ts b/sdk/purview/purview-scanning-rest/src/responses.ts new file mode 100644 index 000000000000..fac16cf6c74a --- /dev/null +++ b/sdk/purview/purview-scanning-rest/src/responses.ts @@ -0,0 +1,511 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import { + AzureKeyVault, + ErrorResponseModel, + AzureKeyVaultList, + ClassificationRule, + ClassificationRuleList, + OperationResponse, + DataSource, + DataSourceList, + Filter, + Scan, + ScanList, + ScanHistoryList, + ScanRuleset, + ScanRulesetList, + SystemScanRulesetList, + SystemScanRuleset, + Trigger, +} from "./models"; +import { HttpResponse } from "@azure-rest/core-client"; + +/** Gets key vault information */ +export interface KeyVaultConnectionsGet200Response extends HttpResponse { + status: "200"; + body: AzureKeyVault; +} + +/** Gets key vault information */ +export interface KeyVaultConnectionsGetdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Creates an instance of a key vault connection */ +export interface KeyVaultConnectionsCreate200Response extends HttpResponse { + status: "200"; + body: AzureKeyVault; +} + +/** Creates an instance of a key vault connection */ +export interface KeyVaultConnectionsCreatedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Deletes the key vault connection associated with the account */ +export interface KeyVaultConnectionsDelete200Response extends HttpResponse { + status: "200"; + body: AzureKeyVault; +} + +/** Deletes the key vault connection associated with the account */ +export interface KeyVaultConnectionsDelete204Response extends HttpResponse { + status: "204"; +} + +/** Deletes the key vault connection associated with the account */ +export interface KeyVaultConnectionsDeletedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** List key vault connections in account */ +export interface KeyVaultConnectionsListAll200Response extends HttpResponse { + status: "200"; + body: AzureKeyVaultList; +} + +/** List key vault connections in account */ +export interface KeyVaultConnectionsListAlldefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Get a classification rule */ +export interface ClassificationRulesGet200Response extends HttpResponse { + status: "200"; + body: ClassificationRule; +} + +/** Get a classification rule */ +export interface ClassificationRulesGetdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Creates or Updates a classification rule */ +export interface ClassificationRulesCreateOrUpdate200Response extends HttpResponse { + status: "200"; + body: ClassificationRule; +} + +/** Creates or Updates a classification rule */ +export interface ClassificationRulesCreateOrUpdate201Response extends HttpResponse { + status: "201"; + body: ClassificationRule; +} + +/** Creates or Updates a classification rule */ +export interface ClassificationRulesCreateOrUpdatedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Deletes a classification rule */ +export interface ClassificationRulesDelete200Response extends HttpResponse { + status: "200"; + body: ClassificationRule; +} + +/** Deletes a classification rule */ +export interface ClassificationRulesDelete204Response extends HttpResponse { + status: "204"; +} + +/** Deletes a classification rule */ +export interface ClassificationRulesDeletedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** List classification rules in Account */ +export interface ClassificationRulesListAll200Response extends HttpResponse { + status: "200"; + body: ClassificationRuleList; +} + +/** List classification rules in Account */ +export interface ClassificationRulesListAlldefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Lists the rule versions of a classification rule */ +export interface ClassificationRulesListVersionsByClassificationRuleName200Response + extends HttpResponse { + status: "200"; + body: ClassificationRuleList; +} + +/** Lists the rule versions of a classification rule */ +export interface ClassificationRulesListVersionsByClassificationRuleNamedefaultResponse + extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Sets Classification Action on a specific classification rule version. */ +export interface ClassificationRulesTagClassificationVersion202Response extends HttpResponse { + status: "202"; + body: OperationResponse; +} + +/** Sets Classification Action on a specific classification rule version. */ +export interface ClassificationRulesTagClassificationVersiondefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Creates or Updates a data source */ +export interface DataSourcesCreateOrUpdate200Response extends HttpResponse { + status: "200"; + body: DataSource; +} + +/** Creates or Updates a data source */ +export interface DataSourcesCreateOrUpdate201Response extends HttpResponse { + status: "201"; + body: DataSource; +} + +/** Creates or Updates a data source */ +export interface DataSourcesCreateOrUpdatedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Get a data source */ +export interface DataSourcesGet200Response extends HttpResponse { + status: "200"; + body: DataSource; +} + +/** Get a data source */ +export interface DataSourcesGetdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Deletes a data source */ +export interface DataSourcesDelete200Response extends HttpResponse { + status: "200"; + body: DataSource; +} + +/** Deletes a data source */ +export interface DataSourcesDelete204Response extends HttpResponse { + status: "204"; +} + +/** Deletes a data source */ +export interface DataSourcesDeletedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** List data sources in Data catalog */ +export interface DataSourcesListAll200Response extends HttpResponse { + status: "200"; + body: DataSourceList; +} + +/** List data sources in Data catalog */ +export interface DataSourcesListAlldefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Get a filter */ +export interface FiltersGet200Response extends HttpResponse { + status: "200"; + body: Filter; +} + +/** Get a filter */ +export interface FiltersGetdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Creates or updates a filter */ +export interface FiltersCreateOrUpdate200Response extends HttpResponse { + status: "200"; + body: Filter; +} + +/** Creates or updates a filter */ +export interface FiltersCreateOrUpdate201Response extends HttpResponse { + status: "201"; + body: Filter; +} + +/** Creates or updates a filter */ +export interface FiltersCreateOrUpdatedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Creates an instance of a scan */ +export interface ScansCreateOrUpdate200Response extends HttpResponse { + status: "200"; + body: Scan; +} + +/** Creates an instance of a scan */ +export interface ScansCreateOrUpdate201Response extends HttpResponse { + status: "201"; + body: Scan; +} + +/** Creates an instance of a scan */ +export interface ScansCreateOrUpdatedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Gets a scan information */ +export interface ScansGet200Response extends HttpResponse { + status: "200"; + body: Scan; +} + +/** Gets a scan information */ +export interface ScansGetdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Deletes the scan associated with the data source */ +export interface ScansDelete200Response extends HttpResponse { + status: "200"; + body: Scan; +} + +/** Deletes the scan associated with the data source */ +export interface ScansDelete204Response extends HttpResponse { + status: "204"; +} + +/** Deletes the scan associated with the data source */ +export interface ScansDeletedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** List scans in data source */ +export interface ScansListByDataSource200Response extends HttpResponse { + status: "200"; + body: ScanList; +} + +/** List scans in data source */ +export interface ScansListByDataSourcedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Runs the scan */ +export interface ScanResultRunScan202Response extends HttpResponse { + status: "202"; + body: OperationResponse; +} + +/** Runs the scan */ +export interface ScanResultRunScandefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Cancels a scan */ +export interface ScanResultCancelScan202Response extends HttpResponse { + status: "202"; + body: OperationResponse; +} + +/** Cancels a scan */ +export interface ScanResultCancelScandefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Lists the scan history of a scan */ +export interface ScanResultListScanHistory200Response extends HttpResponse { + status: "200"; + body: ScanHistoryList; +} + +/** Lists the scan history of a scan */ +export interface ScanResultListScanHistorydefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Get a scan ruleset */ +export interface ScanRulesetsGet200Response extends HttpResponse { + status: "200"; + body: ScanRuleset; +} + +/** Get a scan ruleset */ +export interface ScanRulesetsGetdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Creates or Updates a scan ruleset */ +export interface ScanRulesetsCreateOrUpdate200Response extends HttpResponse { + status: "200"; + body: ScanRuleset; +} + +/** Creates or Updates a scan ruleset */ +export interface ScanRulesetsCreateOrUpdate201Response extends HttpResponse { + status: "201"; + body: ScanRuleset; +} + +/** Creates or Updates a scan ruleset */ +export interface ScanRulesetsCreateOrUpdatedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Deletes a scan ruleset */ +export interface ScanRulesetsDelete200Response extends HttpResponse { + status: "200"; + body: ScanRuleset; +} + +/** Deletes a scan ruleset */ +export interface ScanRulesetsDelete204Response extends HttpResponse { + status: "204"; +} + +/** Deletes a scan ruleset */ +export interface ScanRulesetsDeletedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** List scan rulesets in Data catalog */ +export interface ScanRulesetsListAll200Response extends HttpResponse { + status: "200"; + body: ScanRulesetList; +} + +/** List scan rulesets in Data catalog */ +export interface ScanRulesetsListAlldefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** List all system scan rulesets for an account */ +export interface SystemScanRulesetsListAll200Response extends HttpResponse { + status: "200"; + body: SystemScanRulesetList; +} + +/** List all system scan rulesets for an account */ +export interface SystemScanRulesetsListAlldefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Get a system scan ruleset for a data source */ +export interface SystemScanRulesetsGet200Response extends HttpResponse { + status: "200"; + body: SystemScanRuleset; +} + +/** Get a system scan ruleset for a data source */ +export interface SystemScanRulesetsGetdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Get a scan ruleset by version */ +export interface SystemScanRulesetsGetByVersion200Response extends HttpResponse { + status: "200"; + body: SystemScanRuleset; +} + +/** Get a scan ruleset by version */ +export interface SystemScanRulesetsGetByVersiondefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Get the latest version of a system scan ruleset */ +export interface SystemScanRulesetsGetLatest200Response extends HttpResponse { + status: "200"; + body: SystemScanRuleset; +} + +/** Get the latest version of a system scan ruleset */ +export interface SystemScanRulesetsGetLatestdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** List system scan ruleset versions in Data catalog */ +export interface SystemScanRulesetsListVersionsByDataSource200Response extends HttpResponse { + status: "200"; + body: SystemScanRulesetList; +} + +/** List system scan ruleset versions in Data catalog */ +export interface SystemScanRulesetsListVersionsByDataSourcedefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Gets trigger information */ +export interface TriggersGetTrigger200Response extends HttpResponse { + status: "200"; + body: Trigger; +} + +/** Gets trigger information */ +export interface TriggersGetTriggerdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Creates an instance of a trigger */ +export interface TriggersCreateTrigger200Response extends HttpResponse { + status: "200"; + body: Trigger; +} + +/** Creates an instance of a trigger */ +export interface TriggersCreateTrigger201Response extends HttpResponse { + status: "201"; + body: Trigger; +} + +/** Creates an instance of a trigger */ +export interface TriggersCreateTriggerdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} + +/** Deletes the trigger associated with the scan */ +export interface TriggersDeleteTrigger200Response extends HttpResponse { + status: "200"; + body: Trigger; +} + +/** Deletes the trigger associated with the scan */ +export interface TriggersDeleteTrigger204Response extends HttpResponse { + status: "204"; +} + +/** Deletes the trigger associated with the scan */ +export interface TriggersDeleteTriggerdefaultResponse extends HttpResponse { + status: "500"; + body: ErrorResponseModel; +} diff --git a/sdk/purview/purview-scanning-rest/swagger/README.md b/sdk/purview/purview-scanning-rest/swagger/README.md new file mode 100644 index 000000000000..a58f75bfbc9d --- /dev/null +++ b/sdk/purview/purview-scanning-rest/swagger/README.md @@ -0,0 +1,24 @@ +# Azure Purview Scanning TypeScript Protocol Layer + +> see https://aka.ms/autorest + +## Configuration + +```yaml +package-name: "@azure-rest/purview-scanning" +title: PurviewScanning +description: Purview Scanning Client +generate-metadata: false +license-header: MICROSOFT_MIT_NO_VERSION +output-folder: ../ +source-code-folder-path: ./src +input-file: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/purview/data-plane/Azure.Analytics.Purview.Scanning/preview/2018-12-01-preview/scanningService.json +package-version: 1.0.0-beta.1 +rest-level-client: true +add-credentials: true +credential-scopes: "https://purview.azure.net/.default" +use-extension: + "@autorest/typescript": "https://aka.ms/azsdk/typescript/rlc" +modelerfour: + lenient-model-deduplication: true +``` diff --git a/sdk/purview/purview-scanning-rest/test/public/dataSources.spec.ts b/sdk/purview/purview-scanning-rest/test/public/dataSources.spec.ts new file mode 100644 index 000000000000..3c09978f1004 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/test/public/dataSources.spec.ts @@ -0,0 +1,32 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. +import { PurviewScanningRestClient } from "../../src"; +import { Recorder } from "@azure/test-utils-recorder"; + +import { assert } from "chai"; +import { createClient, createRecorder } from "./utils/recordedClient"; +import { Context } from "mocha"; + +describe("List data sources", () => { + let recorder: Recorder; + let client: PurviewScanningRestClient; + + beforeEach(function (this: Context) { + recorder = createRecorder(this); + client = createClient(); + }); + + afterEach(async function () { + await recorder.stop(); + }); + + it("should list all available data sources", async () => { + const result = await client.path("/datasources").get(); + + if (result.status !== "200") { + assert.fail(`GET "/datasources" failed with ${result.status}`); + } + + assert.isDefined(result.body.value?.length); + }); +}); diff --git a/sdk/purview/purview-scanning-rest/test/public/utils/env.browser.ts b/sdk/purview/purview-scanning-rest/test/public/utils/env.browser.ts new file mode 100644 index 000000000000..fd2aca680c7b --- /dev/null +++ b/sdk/purview/purview-scanning-rest/test/public/utils/env.browser.ts @@ -0,0 +1,2 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. diff --git a/sdk/purview/purview-scanning-rest/test/public/utils/env.ts b/sdk/purview/purview-scanning-rest/test/public/utils/env.ts new file mode 100644 index 000000000000..0e06855b73ae --- /dev/null +++ b/sdk/purview/purview-scanning-rest/test/public/utils/env.ts @@ -0,0 +1,6 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +import * as dotenv from "dotenv"; + +dotenv.config(); diff --git a/sdk/purview/purview-scanning-rest/test/public/utils/recordedClient.ts b/sdk/purview/purview-scanning-rest/test/public/utils/recordedClient.ts new file mode 100644 index 000000000000..ead5872a74e9 --- /dev/null +++ b/sdk/purview/purview-scanning-rest/test/public/utils/recordedClient.ts @@ -0,0 +1,55 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT license. + +/// + +import { Context } from "mocha"; + +import { env, Recorder, record, RecorderEnvironmentSetup } from "@azure/test-utils-recorder"; +import PurviewScanning, { PurviewScanningRestClient } from "../../../src"; +import { ClientSecretCredential } from "@azure/identity"; + +import "./env"; +import { ClientOptions } from "@azure-rest/core-client"; + +const replaceableVariables: { [k: string]: string } = { + ENDPOINT: "https://endpoint", + AZURE_CLIENT_ID: "azure_client_id", + AZURE_CLIENT_SECRET: "azure_client_secret", + AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", +}; + +export const environmentSetup: RecorderEnvironmentSetup = { + replaceableVariables, + customizationsOnRecordings: [ + (recording: string): string => + recording.replace(/"access_token"\s?:\s?"[^"]*"/g, `"access_token":"access_token"`), + // If we put ENDPOINT in replaceableVariables above, it will not capture + // the endpoint string used with nock, which will be expanded to + // https://:443/ and therefore will not match, so we have to do + // this instead. + (recording: string): string => { + const replaced = recording.replace("endpoint:443", "endpoint"); + return replaced; + }, + ], + queryParametersToSkip: [], +}; + +export function createClient(options?: ClientOptions): PurviewScanningRestClient { + const credential = new ClientSecretCredential( + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + env.AZURE_CLIENT_SECRET + ); + return PurviewScanning(env.ENDPOINT, credential, options); +} + +/** + * creates the recorder and reads the environment variables from the `.env` file. + * Should be called first in the test suite to make sure environment variables are + * read before they are being used. + */ +export function createRecorder(context: Context): Recorder { + return record(context, environmentSetup); +} diff --git a/sdk/purview/purview-scanning-rest/tsconfig.json b/sdk/purview/purview-scanning-rest/tsconfig.json new file mode 100644 index 000000000000..40ef817f931b --- /dev/null +++ b/sdk/purview/purview-scanning-rest/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "../../../tsconfig.package", + "compilerOptions": { + "outDir": "./dist-esm", + "declarationDir": "./types", + "paths": { + "@azure-rest/purview-scanning": ["./src/index"] + } + }, + "include": ["src/**/*.ts", "test/**/*.ts", "samples-dev/**/*.ts"] +} diff --git a/sdk/purview/purview-scanning-rest/tsdoc.json b/sdk/purview/purview-scanning-rest/tsdoc.json new file mode 100644 index 000000000000..81c5a8a2aa2f --- /dev/null +++ b/sdk/purview/purview-scanning-rest/tsdoc.json @@ -0,0 +1,4 @@ +{ + "$schema": "https://developer.microsoft.com/json-schemas/tsdoc/v0/tsdoc.schema.json", + "extends": ["../../../tsdoc.json"] +}