diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 4ff60d0cde7..bb5b899b1be 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -90,6 +90,7 @@
"packages/google-cloud-secretmanager": "4.1.4",
"packages/google-cloud-security-privateca": "4.1.2",
"packages/google-cloud-security-publicca": "0.1.3",
+ "packages/google-cloud-securitycenter": "7.0.0",
"packages/google-cloud-servicedirectory": "4.0.4",
"packages/google-cloud-shell": "2.0.4",
"packages/google-cloud-talent": "5.0.1",
diff --git a/packages/google-cloud-securitycenter/.OwlBot.yaml b/packages/google-cloud-securitycenter/.OwlBot.yaml
new file mode 100644
index 00000000000..3918bd31da1
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.OwlBot.yaml
@@ -0,0 +1,24 @@
+# Copyright 2021 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+deep-remove-regex:
+ - /owl-bot-staging
+
+deep-copy-regex:
+ - source: /google/cloud/securitycenter/(v.*)/.*-nodejs
+ dest: /owl-bot-staging/google-cloud-securitycenter/$1
+
+begin-after-commit-hash: fb91803ccef5d7c695139b22788b309e2197856b
+
diff --git a/packages/google-cloud-securitycenter/.eslintignore b/packages/google-cloud-securitycenter/.eslintignore
new file mode 100644
index 00000000000..ea5b04aebe6
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.eslintignore
@@ -0,0 +1,7 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
+samples/generated/
diff --git a/packages/google-cloud-securitycenter/.eslintrc.json b/packages/google-cloud-securitycenter/.eslintrc.json
new file mode 100644
index 00000000000..78215349546
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "./node_modules/gts"
+}
diff --git a/packages/google-cloud-securitycenter/.gitattributes b/packages/google-cloud-securitycenter/.gitattributes
new file mode 100644
index 00000000000..33739cb74e4
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.gitattributes
@@ -0,0 +1,4 @@
+*.ts text eol=lf
+*.js text eol=lf
+protos/* linguist-generated
+**/api-extractor.json linguist-language=JSON-with-Comments
diff --git a/packages/google-cloud-securitycenter/.gitignore b/packages/google-cloud-securitycenter/.gitignore
new file mode 100644
index 00000000000..5d32b23782f
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.gitignore
@@ -0,0 +1,14 @@
+**/*.log
+**/node_modules
+.coverage
+coverage
+.nyc_output
+docs/
+out/
+build/
+system-test/secrets.js
+system-test/*key.json
+*.lock
+.DS_Store
+package-lock.json
+__pycache__
diff --git a/packages/google-cloud-securitycenter/.jsdoc.js b/packages/google-cloud-securitycenter/.jsdoc.js
new file mode 100644
index 00000000000..3f4fcde553b
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.jsdoc.js
@@ -0,0 +1,55 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+// ** This file is automatically generated by gapic-generator-typescript. **
+// ** https://github.com/googleapis/gapic-generator-typescript **
+// ** All changes to this file may be overwritten. **
+
+'use strict';
+
+module.exports = {
+ opts: {
+ readme: './README.md',
+ package: './package.json',
+ template: './node_modules/jsdoc-fresh',
+ recurse: true,
+ verbose: true,
+ destination: './docs/'
+ },
+ plugins: [
+ 'plugins/markdown',
+ 'jsdoc-region-tag'
+ ],
+ source: {
+ excludePattern: '(^|\\/|\\\\)[._]',
+ include: [
+ 'build/src',
+ 'protos'
+ ],
+ includePattern: '\\.js$'
+ },
+ templates: {
+ copyright: 'Copyright 2022 Google LLC',
+ includeDate: false,
+ sourceFiles: false,
+ systemName: '@google-cloud/security-center',
+ theme: 'lumen',
+ default: {
+ outputSourceFiles: false
+ }
+ },
+ markdown: {
+ idInHeadings: true
+ }
+};
diff --git a/packages/google-cloud-securitycenter/.mocharc.js b/packages/google-cloud-securitycenter/.mocharc.js
new file mode 100644
index 00000000000..0b600509bed
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.mocharc.js
@@ -0,0 +1,29 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+const config = {
+ "enable-source-maps": true,
+ "throw-deprecation": true,
+ "timeout": 10000,
+ "recursive": true
+}
+if (process.env.MOCHA_THROW_DEPRECATION === 'false') {
+ delete config['throw-deprecation'];
+}
+if (process.env.MOCHA_REPORTER) {
+ config.reporter = process.env.MOCHA_REPORTER;
+}
+if (process.env.MOCHA_REPORTER_OUTPUT) {
+ config['reporter-option'] = `output=${process.env.MOCHA_REPORTER_OUTPUT}`;
+}
+module.exports = config
diff --git a/packages/google-cloud-securitycenter/.nycrc b/packages/google-cloud-securitycenter/.nycrc
new file mode 100644
index 00000000000..b18d5472b62
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.nycrc
@@ -0,0 +1,24 @@
+{
+ "report-dir": "./.coverage",
+ "reporter": ["text", "lcov"],
+ "exclude": [
+ "**/*-test",
+ "**/.coverage",
+ "**/apis",
+ "**/benchmark",
+ "**/conformance",
+ "**/docs",
+ "**/samples",
+ "**/scripts",
+ "**/protos",
+ "**/test",
+ "**/*.d.ts",
+ ".jsdoc.js",
+ "**/.jsdoc.js",
+ "karma.conf.js",
+ "webpack-tests.config.js",
+ "webpack.config.js"
+ ],
+ "exclude-after-remap": false,
+ "all": true
+}
diff --git a/packages/google-cloud-securitycenter/.prettierignore b/packages/google-cloud-securitycenter/.prettierignore
new file mode 100644
index 00000000000..9340ad9b86d
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.prettierignore
@@ -0,0 +1,6 @@
+**/node_modules
+**/coverage
+test/fixtures
+build/
+docs/
+protos/
diff --git a/packages/google-cloud-securitycenter/.prettierrc.js b/packages/google-cloud-securitycenter/.prettierrc.js
new file mode 100644
index 00000000000..d1b95106f4c
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.prettierrc.js
@@ -0,0 +1,17 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+module.exports = {
+ ...require('gts/.prettierrc.json')
+}
diff --git a/packages/google-cloud-securitycenter/.readme-partials.yaml b/packages/google-cloud-securitycenter/.readme-partials.yaml
new file mode 100644
index 00000000000..aab9d229cf5
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.readme-partials.yaml
@@ -0,0 +1,10 @@
+introduction: |-
+ > Node.js idiomatic client for [Cloud Security Command Center][product-docs].
+
+ [Cloud Security Command Center](https://cloud.google.com/security-command-center/docs/) helps
+ security teams gather data, identify threats, and act on them before they result in business
+ damage or loss. It offers deep insight into application and data risk so that you can quickly
+ mitigate threats to your cloud resources and evaluate overall health. With Cloud Security
+ Command Center, you can view and monitor an inventory of your cloud assets, scan storage
+ systems for sensitive data, detect common web vulnerabilities, and review access rights
+ to your critical resources, all from a single, centralized dashboard.
\ No newline at end of file
diff --git a/packages/google-cloud-securitycenter/.repo-metadata.json b/packages/google-cloud-securitycenter/.repo-metadata.json
new file mode 100644
index 00000000000..07bc498d09a
--- /dev/null
+++ b/packages/google-cloud-securitycenter/.repo-metadata.json
@@ -0,0 +1,16 @@
+{
+ "language": "nodejs",
+ "api_id": "securitycenter.googleapis.com",
+ "repo": "googleapis/google-cloud-node",
+ "release_level": "stable",
+ "distribution_name": "@google-cloud/security-center",
+ "default_version": "v1",
+ "name": "security-center",
+ "client_documentation": "https://cloud.google.com/nodejs/docs/reference/security-center/latest",
+ "requires_billing": true,
+ "name_pretty": "Google Cloud Security Command Center",
+ "issue_tracker": "https://issuetracker.google.com/savedsearches/559748",
+ "product_documentation": "https://cloud.google.com/security-command-center",
+ "api_shortname": "securitycenter",
+ "library_type": "GAPIC_AUTO"
+}
diff --git a/packages/google-cloud-securitycenter/CHANGELOG.md b/packages/google-cloud-securitycenter/CHANGELOG.md
new file mode 100644
index 00000000000..5bb98a4cccb
--- /dev/null
+++ b/packages/google-cloud-securitycenter/CHANGELOG.md
@@ -0,0 +1,543 @@
+# Changelog
+
+[npm history][1]
+
+[1]: https://www.npmjs.com/package/@google-cloud/security-center?activeTab=versions
+
+## [7.0.0](https://github.com/googleapis/nodejs-security-center/compare/v6.3.1...v7.0.0) (2022-11-17)
+
+
+### ⚠ BREAKING CHANGES
+
+* Add files field to finding's list of attributes (#515)
+
+### Features
+
+* Add files field to finding's list of attributes ([#515](https://github.com/googleapis/nodejs-security-center/issues/515)) ([dc37101](https://github.com/googleapis/nodejs-security-center/commit/dc37101f4d2bb86ffa5a554ce8537bcf912d3d31))
+* Added parent display name i.e. source display name for a finding as one of the finding attributes ([78f6033](https://github.com/googleapis/nodejs-security-center/commit/78f60334258c097ba7266fc89da14fa4972cfef9))
+
+
+### Bug Fixes
+
+* **deps:** Use google-gax v3.5.2 ([#518](https://github.com/googleapis/nodejs-security-center/issues/518)) ([bd07a3f](https://github.com/googleapis/nodejs-security-center/commit/bd07a3fd5096642856c126fa7b7a62a48daae834))
+* Preserve default values in x-goog-request-params header ([#511](https://github.com/googleapis/nodejs-security-center/issues/511)) ([78f6033](https://github.com/googleapis/nodejs-security-center/commit/78f60334258c097ba7266fc89da14fa4972cfef9))
+* Regenerated protos JS and TS definitions ([#521](https://github.com/googleapis/nodejs-security-center/issues/521)) ([8969f05](https://github.com/googleapis/nodejs-security-center/commit/8969f058b475db04daa76f668fd64531a8379d10))
+
+## [6.3.1](https://github.com/googleapis/nodejs-security-center/compare/v6.3.0...v6.3.1) (2022-09-01)
+
+
+### Bug Fixes
+
+* Allow passing gax instance to client constructor ([#506](https://github.com/googleapis/nodejs-security-center/issues/506)) ([22478d6](https://github.com/googleapis/nodejs-security-center/commit/22478d6fd89ec40aa281aa47daf14cfd96392341))
+* Do not import the whole google-gax from proto JS ([#1553](https://github.com/googleapis/nodejs-security-center/issues/1553)) ([#507](https://github.com/googleapis/nodejs-security-center/issues/507)) ([fcea451](https://github.com/googleapis/nodejs-security-center/commit/fcea45122f431e6b1a1d680d960301b41f1eef39))
+
+## [6.3.0](https://github.com/googleapis/nodejs-security-center/compare/v6.2.0...v6.3.0) (2022-08-23)
+
+
+### Features
+
+* Adding uris to indicator of compromise (IOC) field ([bcf1a98](https://github.com/googleapis/nodejs-security-center/commit/bcf1a9875618b05830cbf787fb4676c92a3d2920))
+
+
+### Bug Fixes
+
+* better support for fallback mode ([#503](https://github.com/googleapis/nodejs-security-center/issues/503)) ([08f348c](https://github.com/googleapis/nodejs-security-center/commit/08f348ca11f4ef153201982280fc49e24a056e4c))
+* change import long to require ([#504](https://github.com/googleapis/nodejs-security-center/issues/504)) ([0eccdf0](https://github.com/googleapis/nodejs-security-center/commit/0eccdf080c75cf83ef4b2b5cd0b10dc98fd1596d))
+* remove pip install statements ([#1546](https://github.com/googleapis/nodejs-security-center/issues/1546)) ([#505](https://github.com/googleapis/nodejs-security-center/issues/505)) ([66a776b](https://github.com/googleapis/nodejs-security-center/commit/66a776b6e419c8d3980f126b98f7cb396e66cdca))
+
+## [6.2.0](https://github.com/googleapis/nodejs-security-center/compare/v6.1.0...v6.2.0) (2022-07-29)
+
+
+### Features
+
+* Added container field to findings attributes ([#499](https://github.com/googleapis/nodejs-security-center/issues/499)) ([4129598](https://github.com/googleapis/nodejs-security-center/commit/4129598a9b7e9a8975b7daa0d369ffcae9d25ae0))
+
+## [6.1.0](https://github.com/googleapis/nodejs-security-center/compare/v6.0.0...v6.1.0) (2022-07-04)
+
+
+### Features
+
+* Added contacts field to findings attributes, specifying Essential Contacts defined at org, folder or project level within a GCP org ([3937d33](https://github.com/googleapis/nodejs-security-center/commit/3937d335f081077364f52253e72d028389cd3602))
+* support regapic LRO ([#495](https://github.com/googleapis/nodejs-security-center/issues/495)) ([7bfc2bd](https://github.com/googleapis/nodejs-security-center/commit/7bfc2bd641078d5a3b46950d61d77bac3b1b077b))
+
+## [6.0.0](https://github.com/googleapis/nodejs-security-center/compare/v5.11.0...v6.0.0) (2022-06-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* update library to use Node 12 (#486)
+
+### Features
+
+* Add compliances, processes and exfiltration fields to findings attributes. They contain compliance information about a security standard indicating unmet recommendations, represents operating system processes, and data exfiltration attempt of one... ([#490](https://github.com/googleapis/nodejs-security-center/issues/490)) ([c825bb4](https://github.com/googleapis/nodejs-security-center/commit/c825bb42d8a9fcef8f256b25d8d47404895308c7))
+
+
+### Build System
+
+* update library to use Node 12 ([#486](https://github.com/googleapis/nodejs-security-center/issues/486)) ([eb30121](https://github.com/googleapis/nodejs-security-center/commit/eb3012173641734f6ac459560074aa91ffee02f7))
+
+## [5.11.0](https://github.com/googleapis/nodejs-security-center/compare/v5.10.0...v5.11.0) (2022-05-06)
+
+
+### Features
+
+* Add connection and description field to finding's list of attributes ([#479](https://github.com/googleapis/nodejs-security-center/issues/479)) ([fa705d9](https://github.com/googleapis/nodejs-security-center/commit/fa705d9e4fe41c64870480670b536a6640d5aa46))
+
+## [5.10.0](https://github.com/googleapis/nodejs-security-center/compare/v5.9.0...v5.10.0) (2022-04-11)
+
+
+### Features
+
+* Add iam_binding field to findings attributes. It represents particular IAM bindings, which captures a member's role addition, removal, or state ([#474](https://github.com/googleapis/nodejs-security-center/issues/474)) ([b29893c](https://github.com/googleapis/nodejs-security-center/commit/b29893c112a346a3277620a01e5ce391097f3c40))
+* Add next_steps field to finding's list of attributes ([#476](https://github.com/googleapis/nodejs-security-center/issues/476)) ([326e8d2](https://github.com/googleapis/nodejs-security-center/commit/326e8d2242d0852df593474dbc028ea17fb8d600))
+* AuditConfig for IAM v1 ([#470](https://github.com/googleapis/nodejs-security-center/issues/470)) ([2ec070f](https://github.com/googleapis/nodejs-security-center/commit/2ec070f504fe85bd1c9adf7436b7d8c902ec167b))
+
+## [5.9.0](https://github.com/googleapis/nodejs-security-center/compare/v5.8.0...v5.9.0) (2022-02-04)
+
+
+### Features
+
+* Release the access field in the v1 finding proto, which represents an access event tied to the finding ([6bbb738](https://github.com/googleapis/nodejs-security-center/commit/6bbb73850a1ed0ee3481ddbdc55c52e7bfa8fc0f))
+* Release the access field in the v1 finding proto, which represents an access event tied to the finding docs: added more clarification around what event_time means on a v1 finding ([#457](https://github.com/googleapis/nodejs-security-center/issues/457)) ([6bbb738](https://github.com/googleapis/nodejs-security-center/commit/6bbb73850a1ed0ee3481ddbdc55c52e7bfa8fc0f))
+
+## [5.8.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.7.0...v5.8.0) (2021-11-22)
+
+
+### Features
+
+* Added a new API method UpdateExternalSystem, which enables updating a finding w/ external system metadata. External systems are a child resource under finding, and are housed on the finding itself, and can also be filtered on in Notifications, the ListFindings and GroupFindings API ([3917f97](https://www.github.com/googleapis/nodejs-security-center/commit/3917f978d8d645d08024d28c7045a4d5481782dd))
+
+## [5.7.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.6.0...v5.7.0) (2021-11-15)
+
+
+### Features
+
+* Added mute related APIs, proto messages and fields ([#438](https://www.github.com/googleapis/nodejs-security-center/issues/438)) ([d432649](https://www.github.com/googleapis/nodejs-security-center/commit/d432649fed31f92a6048769b6b889666f5b9cced))
+
+## [5.6.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.5.1...v5.6.0) (2021-10-14)
+
+
+### Features
+
+* Added type field to the resource which is surfaced in NotificationMessage ([#428](https://www.github.com/googleapis/nodejs-security-center/issues/428)) ([924aaec](https://www.github.com/googleapis/nodejs-security-center/commit/924aaec714aec659a2cff0c995a00a9a269ca9d6))
+* Added vulnerability field to the finding ([924aaec](https://www.github.com/googleapis/nodejs-security-center/commit/924aaec714aec659a2cff0c995a00a9a269ca9d6))
+
+### [5.5.1](https://www.github.com/googleapis/nodejs-security-center/compare/v5.5.0...v5.5.1) (2021-09-10)
+
+
+### Bug Fixes
+
+* **build:** set default branch to main ([#420](https://www.github.com/googleapis/nodejs-security-center/issues/420)) ([7a04895](https://www.github.com/googleapis/nodejs-security-center/commit/7a04895d15fc51694aba186bfbffaf7495744937))
+
+## [5.5.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.4.1...v5.5.0) (2021-08-23)
+
+
+### Features
+
+* turns on self-signed JWT feature flag ([#417](https://www.github.com/googleapis/nodejs-security-center/issues/417)) ([ec4b179](https://www.github.com/googleapis/nodejs-security-center/commit/ec4b17916d42f9ff006b9c9d0c1a6c2dd0743fa7))
+
+### [5.4.1](https://www.github.com/googleapis/nodejs-security-center/compare/v5.4.0...v5.4.1) (2021-08-17)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.24.1 ([#415](https://www.github.com/googleapis/nodejs-security-center/issues/415)) ([aa77ac3](https://www.github.com/googleapis/nodejs-security-center/commit/aa77ac33ed9e20e75505fb4d31183a0f1f0d1f76))
+
+## [5.4.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.3.5...v5.4.0) (2021-07-30)
+
+
+### Features
+
+* add finding_class and indicator fields in Finding ([#409](https://www.github.com/googleapis/nodejs-security-center/issues/409)) ([d0abd01](https://www.github.com/googleapis/nodejs-security-center/commit/d0abd013b359b1876c16e7f4ee6b8c873acc5014))
+
+### [5.3.5](https://www.github.com/googleapis/nodejs-security-center/compare/v5.3.4...v5.3.5) (2021-07-16)
+
+
+### Bug Fixes
+
+* Updating WORKSPACE files to use the newest version of the Typescript generator. ([#405](https://www.github.com/googleapis/nodejs-security-center/issues/405)) ([91dacef](https://www.github.com/googleapis/nodejs-security-center/commit/91dacef6d656cf1cd41803b337524c417498de1e))
+
+### [5.3.4](https://www.github.com/googleapis/nodejs-security-center/compare/v5.3.3...v5.3.4) (2021-07-12)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.1 ([#403](https://www.github.com/googleapis/nodejs-security-center/issues/403)) ([5bc78fb](https://www.github.com/googleapis/nodejs-security-center/commit/5bc78fbd4b038320032d8905af064a42d62e0c2f))
+
+### [5.3.3](https://www.github.com/googleapis/nodejs-security-center/compare/v5.3.2...v5.3.3) (2021-06-30)
+
+
+### Bug Fixes
+
+* **deps:** google-gax v2.17.0 with mTLS ([#400](https://www.github.com/googleapis/nodejs-security-center/issues/400)) ([0f35393](https://www.github.com/googleapis/nodejs-security-center/commit/0f35393b8e64fdabc170eb264de5e5a54a0c6f2e))
+
+### [5.3.2](https://www.github.com/googleapis/nodejs-security-center/compare/v5.3.1...v5.3.2) (2021-06-25)
+
+
+### Bug Fixes
+
+* make request optional in all cases ([#396](https://www.github.com/googleapis/nodejs-security-center/issues/396)) ([871b0d3](https://www.github.com/googleapis/nodejs-security-center/commit/871b0d3c26878f1a836ec186fb66be08073ed899))
+
+### [5.3.1](https://www.github.com/googleapis/nodejs-security-center/compare/v5.3.0...v5.3.1) (2021-05-25)
+
+
+### Bug Fixes
+
+* GoogleAdsError missing using generator version after 1.3.0 ([#385](https://www.github.com/googleapis/nodejs-security-center/issues/385)) ([7faea1b](https://www.github.com/googleapis/nodejs-security-center/commit/7faea1b6670b96cf26d9bbc6d18a58b868627c60))
+
+## [5.3.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.2.0...v5.3.0) (2021-05-12)
+
+
+### Features
+
+* **v1:** add canonical_name and folder fields ([#379](https://www.github.com/googleapis/nodejs-security-center/issues/379)) ([239901b](https://www.github.com/googleapis/nodejs-security-center/commit/239901ba42e5973024c86728013354cd4731a0ee))
+* **v1p1beta1:** add canonical_name and folder fields ([#378](https://www.github.com/googleapis/nodejs-security-center/issues/378)) ([5354f52](https://www.github.com/googleapis/nodejs-security-center/commit/5354f52df024d465b224c9db20e0c9cd9586060b))
+
+
+### Bug Fixes
+
+* **deps:** require google-gax v2.12.0 ([#373](https://www.github.com/googleapis/nodejs-security-center/issues/373)) ([c13a77a](https://www.github.com/googleapis/nodejs-security-center/commit/c13a77aa4340e63cc4c32b01463c2a761bef2f1f))
+* use require() to load JSON protos ([#376](https://www.github.com/googleapis/nodejs-security-center/issues/376)) ([efac58d](https://www.github.com/googleapis/nodejs-security-center/commit/efac58d6a49a68598703e8b7a7c7c235894c525f))
+
+## [5.2.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.1.3...v5.2.0) (2021-01-07)
+
+
+### Features
+
+* added field severity to findings in v1 API ([#349](https://www.github.com/googleapis/nodejs-security-center/issues/349)) ([79f1433](https://www.github.com/googleapis/nodejs-security-center/commit/79f1433d05037d1bb9f7d0a252cb483a0f817568))
+* introduces style enumeration ([#353](https://www.github.com/googleapis/nodejs-security-center/issues/353)) ([37c179f](https://www.github.com/googleapis/nodejs-security-center/commit/37c179f8915d7b5f6e141b78e59ec612b6b115a7))
+
+### [5.1.3](https://www.github.com/googleapis/nodejs-security-center/compare/v5.1.2...v5.1.3) (2020-11-25)
+
+
+### Bug Fixes
+
+* check for fetch on window ([#344](https://www.github.com/googleapis/nodejs-security-center/issues/344)) ([85c6d55](https://www.github.com/googleapis/nodejs-security-center/commit/85c6d55fa245fb2508423d2f0ba94f2e1c25c53f))
+
+### [5.1.2](https://www.github.com/googleapis/nodejs-security-center/compare/v5.1.1...v5.1.2) (2020-11-07)
+
+
+### Bug Fixes
+
+* do not modify options object, use defaultScopes ([#337](https://www.github.com/googleapis/nodejs-security-center/issues/337)) ([2792fc8](https://www.github.com/googleapis/nodejs-security-center/commit/2792fc829c6db2fbbd951df4739b8d1524243012))
+
+### [5.1.1](https://www.github.com/googleapis/nodejs-security-center/compare/v5.1.0...v5.1.1) (2020-08-17)
+
+
+### Bug Fixes
+
+* **deps:** roll back dependency @google-cloud/security-center to ^5.0.3 ([#319](https://www.github.com/googleapis/nodejs-security-center/issues/319)) ([f3462e1](https://www.github.com/googleapis/nodejs-security-center/commit/f3462e16aacb42f66f50ca4205a58981d2540686))
+
+## [5.1.0](https://www.github.com/googleapis/nodejs-security-center/compare/v5.0.3...v5.1.0) (2020-08-14)
+
+
+### Features
+
+* added field severity to findings ([#317](https://www.github.com/googleapis/nodejs-security-center/issues/317)) ([155a14a](https://www.github.com/googleapis/nodejs-security-center/commit/155a14a714304be6916452c32aee833aa5fe4230))
+
+### [5.0.3](https://www.github.com/googleapis/nodejs-security-center/compare/v5.0.2...v5.0.3) (2020-07-30)
+
+
+### Bug Fixes
+
+* **deps:** roll back dependency @google-cloud/security-center to ^5.0.1 ([#309](https://www.github.com/googleapis/nodejs-security-center/issues/309)) ([f68400c](https://www.github.com/googleapis/nodejs-security-center/commit/f68400c4490a6887bb8578184b4737a678da47d7))
+
+### [5.0.2](https://www.github.com/googleapis/nodejs-security-center/compare/v5.0.1...v5.0.2) (2020-07-27)
+
+
+### Bug Fixes
+
+* add resource config to v1beta1 ([#307](https://www.github.com/googleapis/nodejs-security-center/issues/307)) ([5d99acf](https://www.github.com/googleapis/nodejs-security-center/commit/5d99acf9dea7a6e2d384ee709678365c769f3d6e))
+* correct securitycenter grpc_service_configs, add Node 8 tests ([#302](https://www.github.com/googleapis/nodejs-security-center/issues/302)) ([4e4ec5b](https://www.github.com/googleapis/nodejs-security-center/commit/4e4ec5bbd9623dc952781e80da226320db3906af))
+
+### [5.0.1](https://www.github.com/googleapis/nodejs-security-center/compare/v5.0.0...v5.0.1) (2020-07-06)
+
+
+### Bug Fixes
+
+* update node issue template ([#290](https://www.github.com/googleapis/nodejs-security-center/issues/290)) ([c0b8bad](https://www.github.com/googleapis/nodejs-security-center/commit/c0b8bad200f829aa62ee7430bf0d51b5463c92ca))
+
+## [5.0.0](https://www.github.com/googleapis/nodejs-security-center/compare/v4.0.0...v5.0.0) (2020-06-15)
+
+
+### ⚠ BREAKING CHANGES
+
+* Removed 'having' as a field in the List and Group Finding and Asset requests.
+
+### Features
+
+* add Resource to the v1 NotificationMessage, update protos ([#286](https://www.github.com/googleapis/nodejs-security-center/issues/286)) ([f810e5e](https://www.github.com/googleapis/nodejs-security-center/commit/f810e5e9f0791050616273f06bebc3ea05617e7f))
+
+
+### Bug Fixes
+
+* handle fallback option properly ([#284](https://www.github.com/googleapis/nodejs-security-center/issues/284)) ([f714260](https://www.github.com/googleapis/nodejs-security-center/commit/f71426053da4eb2416ebd593862e89c0d5557827))
+
+## [4.0.0](https://www.github.com/googleapis/nodejs-security-center/compare/v3.1.0...v4.0.0) (2020-06-04)
+
+
+### ⚠ BREAKING CHANGES
+
+* The library now supports Node.js v10+. The last version to support Node.js v8 is tagged legacy-8 on NPM.
+
+### Features
+
+* check status of long running operation by its name ([#273](https://www.github.com/googleapis/nodejs-security-center/issues/273)) ([dd0f4d1](https://www.github.com/googleapis/nodejs-security-center/commit/dd0f4d1866ec61e37392c79cf7f148e339d04d1b))
+* drop node8 support, support for async iterators ([#248](https://www.github.com/googleapis/nodejs-security-center/issues/248)) ([686f741](https://www.github.com/googleapis/nodejs-security-center/commit/686f7418517e6d827bfcbe483d7b1bb014385e10))
+
+
+### Bug Fixes
+
+* export explicit version from protos.js ([#253](https://www.github.com/googleapis/nodejs-security-center/issues/253)) ([aa62575](https://www.github.com/googleapis/nodejs-security-center/commit/aa6257554e5b401ba7b7613f0bf78d6233ef300b))
+* remove eslint, update gax, fix generated protos, run the generator ([#258](https://www.github.com/googleapis/nodejs-security-center/issues/258)) ([38e64d7](https://www.github.com/googleapis/nodejs-security-center/commit/38e64d77317870caa81122fa2a9c449dcbe714e0))
+* synth.py clean up for multiple version ([#274](https://www.github.com/googleapis/nodejs-security-center/issues/274)) ([e50061a](https://www.github.com/googleapis/nodejs-security-center/commit/e50061a5f834a356b0221ff01d8de4ed02089260))
+* **deps:** update dependency @google-cloud/pubsub to v2 ([#276](https://www.github.com/googleapis/nodejs-security-center/issues/276)) ([6ce252e](https://www.github.com/googleapis/nodejs-security-center/commit/6ce252eb770d1a4304301bfbaeacb9d165f8a3e9))
+
+## [3.1.0](https://www.github.com/googleapis/nodejs-security-center/compare/v3.0.1...v3.1.0) (2020-03-06)
+
+
+### Features
+
+* deferred client initialization ([#230](https://www.github.com/googleapis/nodejs-security-center/issues/230)) ([e6ee806](https://www.github.com/googleapis/nodejs-security-center/commit/e6ee8064285adfb64666dd976da401a123c0d8a1))
+* export protos in src/index.ts ([f3b2f47](https://www.github.com/googleapis/nodejs-security-center/commit/f3b2f477aa0af4d3f5a5c1d3b191643986f1c48b))
+
+
+### Bug Fixes
+
+* updated timeout in service config ([280cba4](https://www.github.com/googleapis/nodejs-security-center/commit/280cba439c681fcf7be0b936f052ebdaf215c850))
+
+### [3.0.1](https://www.github.com/googleapis/nodejs-security-center/compare/v3.0.0...v3.0.1) (2020-02-07)
+
+
+### Bug Fixes
+
+* pass x-goog-request-params header for streaming calls ([c73e1b6](https://www.github.com/googleapis/nodejs-security-center/commit/c73e1b688367377a2c879d3ad9b000b91588dcd3))
+
+## [3.0.0](https://www.github.com/googleapis/nodejs-security-center/compare/v2.3.2...v3.0.0) (2020-02-05)
+
+
+### ⚠ BREAKING CHANGES
+
+* convert library to TypeScript, adding v1p1beta1 import (#198)
+
+### Features
+
+* convert library to TypeScript, adding v1p1beta1 import ([#198](https://www.github.com/googleapis/nodejs-security-center/issues/198)) ([0adb7d0](https://www.github.com/googleapis/nodejs-security-center/commit/0adb7d0ea27a07ba0ad0ee235ddfde1f44cd3c24))
+
+### [2.3.2](https://www.github.com/googleapis/nodejs-security-center/compare/v2.3.1...v2.3.2) (2020-01-28)
+
+
+### Bug Fixes
+
+* enum, bytes, and Long types now accept strings ([be83dd6](https://www.github.com/googleapis/nodejs-security-center/commit/be83dd689fa51bd1dd0acce63a144e195a1b7688))
+
+### [2.3.1](https://www.github.com/googleapis/nodejs-security-center/compare/v2.3.0...v2.3.1) (2020-01-05)
+
+
+### Bug Fixes
+
+* proto files updated with proto annotations ([#182](https://www.github.com/googleapis/nodejs-security-center/issues/182)) ([010f3de](https://www.github.com/googleapis/nodejs-security-center/commit/010f3de382300787a3e383d5c55ec1f0dcc2536a))
+
+## [2.3.0](https://www.github.com/googleapis/nodejs-security-center/compare/v2.2.2...v2.3.0) (2019-12-10)
+
+
+### Features
+
+* support resource descriptors ([#174](https://www.github.com/googleapis/nodejs-security-center/issues/174)) ([a55b223](https://www.github.com/googleapis/nodejs-security-center/commit/a55b2232a821ddcbe1132eab2f1e5873bc5e96f2))
+
+
+### Bug Fixes
+
+* **deps:** pin TypeScript below 3.7.0 ([121d969](https://www.github.com/googleapis/nodejs-security-center/commit/121d9696bcc9453d497a53e40c4679a63793673c))
+
+### [2.2.2](https://www.github.com/googleapis/nodejs-security-center/compare/v2.2.1...v2.2.2) (2019-11-15)
+
+
+### Bug Fixes
+
+* import long into proto ts declaration file ([#167](https://www.github.com/googleapis/nodejs-security-center/issues/167)) ([8548ae2](https://www.github.com/googleapis/nodejs-security-center/commit/8548ae2d620a690dcaa2f270c35c91745c37329f))
+* **docs:** bump release level to GA ([#171](https://www.github.com/googleapis/nodejs-security-center/issues/171)) ([8169088](https://www.github.com/googleapis/nodejs-security-center/commit/81690887c934e3a06ca82dd8850d47a74e4ad1c9))
+* **docs:** snippets are now replaced in jsdoc comments ([#166](https://www.github.com/googleapis/nodejs-security-center/issues/166)) ([c2d6f93](https://www.github.com/googleapis/nodejs-security-center/commit/c2d6f93c360bcb44ac095dea23c3191f3d5a4e2b))
+
+### [2.2.1](https://www.github.com/googleapis/nodejs-security-center/compare/v2.2.0...v2.2.1) (2019-10-22)
+
+
+### Bug Fixes
+
+* **deps:** bump google-gax to 1.7.5 ([#158](https://www.github.com/googleapis/nodejs-security-center/issues/158)) ([16d27c8](https://www.github.com/googleapis/nodejs-security-center/commit/16d27c87ce951546163dd1e8a16e57daf2877093))
+
+## [2.2.0](https://www.github.com/googleapis/nodejs-security-center/compare/v2.1.0...v2.2.0) (2019-10-09)
+
+
+### Bug Fixes
+
+* use compatible version of google-gax ([e85bac4](https://www.github.com/googleapis/nodejs-security-center/commit/e85bac4))
+
+
+### Features
+
+* .d.ts for protos ([#148](https://www.github.com/googleapis/nodejs-security-center/issues/148)) ([f10a7ab](https://www.github.com/googleapis/nodejs-security-center/commit/f10a7ab))
+
+## [2.1.0](https://www.github.com/googleapis/nodejs-security-center/compare/v2.0.1...v2.1.0) (2019-09-06)
+
+
+### Bug Fixes
+
+* include the correct version of node in a header ([#138](https://www.github.com/googleapis/nodejs-security-center/issues/138)) ([4b42390](https://www.github.com/googleapis/nodejs-security-center/commit/4b42390))
+
+
+### Features
+
+* load protos from JSON, grpc-fallback support ([#142](https://www.github.com/googleapis/nodejs-security-center/issues/142)) ([570cca4](https://www.github.com/googleapis/nodejs-security-center/commit/570cca4))
+
+### [2.0.1](https://www.github.com/googleapis/nodejs-security-center/compare/v2.0.0...v2.0.1) (2019-08-05)
+
+
+### Bug Fixes
+
+* allow calls with no request, add JSON proto ([63e4855](https://www.github.com/googleapis/nodejs-security-center/commit/63e4855))
+
+## [2.0.0](https://www.github.com/googleapis/nodejs-security-center/compare/v1.0.0...v2.0.0) (2019-07-23)
+
+
+### ⚠ BREAKING CHANGES
+
+* adds findingSecurityMarksPathTemplate (#122)
+
+### Bug Fixes
+
+* **deps:** remove unused dependency ([#126](https://www.github.com/googleapis/nodejs-security-center/issues/126)) ([2c606ea](https://www.github.com/googleapis/nodejs-security-center/commit/2c606ea))
+
+
+### Features
+
+* adds findingSecurityMarksPathTemplate ([#122](https://www.github.com/googleapis/nodejs-security-center/issues/122)) ([3070f29](https://www.github.com/googleapis/nodejs-security-center/commit/3070f29))
+
+## [1.0.0](https://www.github.com/googleapis/nodejs-security-center/compare/v0.3.0...v1.0.0) (2019-07-02)
+
+
+### ⚠ BREAKING CHANGES
+
+* upgrade engines field to >=8.10.0 (#93)
+
+### Bug Fixes
+
+* **deps:** update dependency google-gax to ^0.26.0 ([#91](https://www.github.com/googleapis/nodejs-security-center/issues/91)) ([b4708af](https://www.github.com/googleapis/nodejs-security-center/commit/b4708af))
+* **deps:** update dependency google-gax to v1 ([#100](https://www.github.com/googleapis/nodejs-security-center/issues/100)) ([10e455c](https://www.github.com/googleapis/nodejs-security-center/commit/10e455c))
+* drop dependency on lodash.merge ([#105](https://www.github.com/googleapis/nodejs-security-center/issues/105)) ([093822e](https://www.github.com/googleapis/nodejs-security-center/commit/093822e))
+* **docs:** link to reference docs section on googleapis.dev ([#117](https://www.github.com/googleapis/nodejs-security-center/issues/117)) ([df786bf](https://www.github.com/googleapis/nodejs-security-center/commit/df786bf))
+* **docs:** move to new client docs URL ([#114](https://www.github.com/googleapis/nodejs-security-center/issues/114)) ([c8e406e](https://www.github.com/googleapis/nodejs-security-center/commit/c8e406e))
+* import run_asset_discovery_response.proto ([#119](https://www.github.com/googleapis/nodejs-security-center/issues/119)) ([8fed12f](https://www.github.com/googleapis/nodejs-security-center/commit/8fed12f))
+* include 'x-goog-request-params' header in requests ([#77](https://www.github.com/googleapis/nodejs-security-center/issues/77)) ([2556bb7](https://www.github.com/googleapis/nodejs-security-center/commit/2556bb7))
+
+
+### Build System
+
+* upgrade engines field to >=8.10.0 ([#93](https://www.github.com/googleapis/nodejs-security-center/issues/93)) ([3714719](https://www.github.com/googleapis/nodejs-security-center/commit/3714719))
+
+
+### Features
+
+* asset path template & matchers ([#84](https://www.github.com/googleapis/nodejs-security-center/issues/84)) ([3c4bc9a](https://www.github.com/googleapis/nodejs-security-center/commit/3c4bc9a))
+* support apiEndpoint override in client constructor ([#112](https://www.github.com/googleapis/nodejs-security-center/issues/112)) ([58ddc40](https://www.github.com/googleapis/nodejs-security-center/commit/58ddc40))
+
+## v0.3.0
+
+03-14-2019 07:55 PDT
+
+**This release has breaking changes!** The `having` enum value from `GroupFindingsRequest` has been removed. This field was not supposed to be exposed.
+
+### Bug Fixes
+- fix: remove the `having` enum value from `GroupFindingsRequest` ([#67](https://github.com/googleapis/nodejs-security-center/pull/67))
+
+### Documentation
+- docs: use backticks for JS values
+
+## v0.2.0
+
+03-12-2019 16:11 PDT
+
+### New Features
+- feat: add v1 variant of the API ([#61](https://github.com/googleapis/nodejs-security-center/pull/61))
+
+### Bug Fixes
+- fix: throw on invalid credentials
+
+### Dependencies
+- fix(deps): update dependency google-gax to ^0.25.0 ([#42](https://github.com/googleapis/nodejs-security-center/pull/42))
+
+### Documentation
+- docs: update examples
+- docs: update comments on protos ([#56](https://github.com/googleapis/nodejs-security-center/pull/56))
+- docs: sync latest proto docs
+- docs: update links in contrib guide ([#53](https://github.com/googleapis/nodejs-security-center/pull/53))
+- docs: update contributing path in README ([#48](https://github.com/googleapis/nodejs-security-center/pull/48))
+- docs: move CONTRIBUTING.md to root ([#47](https://github.com/googleapis/nodejs-security-center/pull/47))
+- docs: add lint/fix example to contributing guide ([#45](https://github.com/googleapis/nodejs-security-center/pull/45))
+- docs: fix example comments ([#44](https://github.com/googleapis/nodejs-security-center/pull/44))
+
+### Internal / Testing Changes
+- build: Add docuploader credentials to node publish jobs ([#59](https://github.com/googleapis/nodejs-security-center/pull/59))
+- build: use node10 to run samples-test, system-test etc ([#58](https://github.com/googleapis/nodejs-security-center/pull/58))
+- build: update release configuration
+- chore(deps): update dependency mocha to v6
+- build: use linkinator for docs test ([#52](https://github.com/googleapis/nodejs-security-center/pull/52))
+- build: create docs test npm scripts ([#50](https://github.com/googleapis/nodejs-security-center/pull/50))
+- build: test using @grpc/grpc-js in CI ([#49](https://github.com/googleapis/nodejs-security-center/pull/49))
+- refactor: improve generated code style. ([#43](https://github.com/googleapis/nodejs-security-center/pull/43))
+- chore(deps): update dependency eslint-config-prettier to v4 ([#41](https://github.com/googleapis/nodejs-security-center/pull/41))
+- build: ignore googleapis.com in doc link check ([#39](https://github.com/googleapis/nodejs-security-center/pull/39))
+- chore: sync gapic files
+
+## v0.1.2
+
+01-16-2019 16:03 PST
+
+### Dependencies
+- fix(deps): update dependency google-gax to ^0.23.0 ([#34](https://github.com/googleapis/nodejs-security-center/pull/34))
+
+### Documentation
+- docs: update jsdoc comments ([#36](https://github.com/googleapis/nodejs-security-center/pull/36))
+- build: check broken links in generated docs ([#25](https://github.com/googleapis/nodejs-security-center/pull/25))
+- docs: various doc changes in protos and generated source ([#31](https://github.com/googleapis/nodejs-security-center/pull/31))
+- fix(docs): broken link to API ref docs ([#32](https://github.com/googleapis/nodejs-security-center/pull/32))
+- docs: update the comments in the protos ([#30](https://github.com/googleapis/nodejs-security-center/pull/30))
+- samples: add quickstart ([#33](https://github.com/googleapis/nodejs-security-center/pull/33))
+
+## v0.1.1
+
+01-02-2019 14:54 PST
+
+### Documentation
+- fix(docs): require stmt (#29)
+- add missing namespaces ([#27](https://github.com/googleapis/nodejs-security-center/pull/27))
+- fix(docs): fix require module in samples ([#26](https://github.com/googleapis/nodejs-security-center/pull/26))
+
+### Internal / Testing Changes
+- chore(build): inject yoshi automation key ([#23](https://github.com/googleapis/nodejs-security-center/pull/23))
+- chore: update nyc and eslint configs ([#22](https://github.com/googleapis/nodejs-security-center/pull/22))
+- chore: fix publish.sh permission +x ([#20](https://github.com/googleapis/nodejs-security-center/pull/20))
+- fix(build): fix Kokoro release script ([#19](https://github.com/googleapis/nodejs-security-center/pull/19))
+- build: add Kokoro configs for autorelease ([#18](https://github.com/googleapis/nodejs-security-center/pull/18))
+- chore: add synth.metadata ([#17](https://github.com/googleapis/nodejs-security-center/pull/17))
+- chore(deps): update dependency @google-cloud/nodejs-repo-tools to v3 ([#12](https://github.com/googleapis/nodejs-security-center/pull/12))
+- chore: always nyc report before calling codecov ([#15](https://github.com/googleapis/nodejs-security-center/pull/15))
+- chore: nyc ignore build/test by default ([#14](https://github.com/googleapis/nodejs-security-center/pull/14))
+- docs: update readme badges ([#11](https://github.com/googleapis/nodejs-security-center/pull/11))
+
+## v0.1.0
+
+This is the initial release of the Cloud Security Center API Node.js client library.
+
+### Documentation
+- docs: sync protos comment changes
+
+### Internal / Testing Changes
+- build: add encrypted key ([#8](https://github.com/googleapis/nodejs-security-center/pull/8))
+- add dummy no test yet file to system test and samples test dirs
+- chore(build): Configure Renovate ([#6](https://github.com/googleapis/nodejs-security-center/pull/6))
+- fix(build): fix system key decryption ([#5](https://github.com/googleapis/nodejs-security-center/pull/5))
+- refactor: fix lint rules and make consistent ([#1](https://github.com/googleapis/nodejs-security-center/pull/1))
+- remove CONTRIBUTORS
+- license header on npm-install-retry
+- add more scaffolding
diff --git a/packages/google-cloud-securitycenter/CODE_OF_CONDUCT.md b/packages/google-cloud-securitycenter/CODE_OF_CONDUCT.md
new file mode 100644
index 00000000000..2add2547a81
--- /dev/null
+++ b/packages/google-cloud-securitycenter/CODE_OF_CONDUCT.md
@@ -0,0 +1,94 @@
+
+# Code of Conduct
+
+## Our Pledge
+
+In the interest of fostering an open and welcoming environment, we as
+contributors and maintainers pledge to making participation in our project and
+our community a harassment-free experience for everyone, regardless of age, body
+size, disability, ethnicity, gender identity and expression, level of
+experience, education, socio-economic status, nationality, personal appearance,
+race, religion, or sexual identity and orientation.
+
+## Our Standards
+
+Examples of behavior that contributes to creating a positive environment
+include:
+
+* Using welcoming and inclusive language
+* Being respectful of differing viewpoints and experiences
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Showing empathy towards other community members
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery and unwelcome sexual attention or
+ advances
+* Trolling, insulting/derogatory comments, and personal or political attacks
+* Public or private harassment
+* Publishing others' private information, such as a physical or electronic
+ address, without explicit permission
+* Other conduct which could reasonably be considered inappropriate in a
+ professional setting
+
+## Our Responsibilities
+
+Project maintainers are responsible for clarifying the standards of acceptable
+behavior and are expected to take appropriate and fair corrective action in
+response to any instances of unacceptable behavior.
+
+Project maintainers have the right and responsibility to remove, edit, or reject
+comments, commits, code, wiki edits, issues, and other contributions that are
+not aligned to this Code of Conduct, or to ban temporarily or permanently any
+contributor for other behaviors that they deem inappropriate, threatening,
+offensive, or harmful.
+
+## Scope
+
+This Code of Conduct applies both within project spaces and in public spaces
+when an individual is representing the project or its community. Examples of
+representing a project or community include using an official project e-mail
+address, posting via an official social media account, or acting as an appointed
+representative at an online or offline event. Representation of a project may be
+further defined and clarified by project maintainers.
+
+This Code of Conduct also applies outside the project spaces when the Project
+Steward has a reasonable belief that an individual's behavior may have a
+negative impact on the project or its community.
+
+## Conflict Resolution
+
+We do not believe that all conflict is bad; healthy debate and disagreement
+often yield positive results. However, it is never okay to be disrespectful or
+to engage in behavior that violates the project’s code of conduct.
+
+If you see someone violating the code of conduct, you are encouraged to address
+the behavior directly with those involved. Many issues can be resolved quickly
+and easily, and this gives people more control over the outcome of their
+dispute. If you are unable to resolve the matter for any reason, or if the
+behavior is threatening or harassing, report it. We are dedicated to providing
+an environment where participants feel welcome and safe.
+
+Reports should be directed to *googleapis-stewards@google.com*, the
+Project Steward(s) for *Google Cloud Client Libraries*. It is the Project Steward’s duty to
+receive and address reported violations of the code of conduct. They will then
+work with a committee consisting of representatives from the Open Source
+Programs Office and the Google Open Source Strategy team. If for any reason you
+are uncomfortable reaching out to the Project Steward, please email
+opensource@google.com.
+
+We will investigate every complaint, but you may not receive a direct response.
+We will use our discretion in determining when and how to follow up on reported
+incidents, which may range from not taking action to permanent expulsion from
+the project and project-sponsored spaces. We will notify the accused of the
+report and provide them an opportunity to discuss it before any action is taken.
+The identity of the reporter will be omitted from the details of the report
+supplied to the accused. In potentially harmful situations, such as ongoing
+harassment or threats to anyone's safety, we may take action without notice.
+
+## Attribution
+
+This Code of Conduct is adapted from the Contributor Covenant, version 1.4,
+available at
+https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
\ No newline at end of file
diff --git a/packages/google-cloud-securitycenter/CONTRIBUTING.md b/packages/google-cloud-securitycenter/CONTRIBUTING.md
new file mode 100644
index 00000000000..18cf8c0b149
--- /dev/null
+++ b/packages/google-cloud-securitycenter/CONTRIBUTING.md
@@ -0,0 +1,76 @@
+# How to become a contributor and submit your own code
+
+**Table of contents**
+
+* [Contributor License Agreements](#contributor-license-agreements)
+* [Contributing a patch](#contributing-a-patch)
+* [Running the tests](#running-the-tests)
+* [Releasing the library](#releasing-the-library)
+
+## Contributor License Agreements
+
+We'd love to accept your sample apps and patches! Before we can take them, we
+have to jump a couple of legal hurdles.
+
+Please fill out either the individual or corporate Contributor License Agreement
+(CLA).
+
+ * If you are an individual writing original source code and you're sure you
+ own the intellectual property, then you'll need to sign an [individual CLA](https://developers.google.com/open-source/cla/individual).
+ * If you work for a company that wants to allow you to contribute your work,
+ then you'll need to sign a [corporate CLA](https://developers.google.com/open-source/cla/corporate).
+
+Follow either of the two links above to access the appropriate CLA and
+instructions for how to sign and return it. Once we receive it, we'll be able to
+accept your pull requests.
+
+## Contributing A Patch
+
+1. Submit an issue describing your proposed change to the repo in question.
+1. The repo owner will respond to your issue promptly.
+1. If your proposed change is accepted, and you haven't already done so, sign a
+ Contributor License Agreement (see details above).
+1. Fork the desired repo, develop and test your code changes.
+1. Ensure that your code adheres to the existing style in the code to which
+ you are contributing.
+1. Ensure that your code has an appropriate set of tests which all pass.
+1. Title your pull request following [Conventional Commits](https://www.conventionalcommits.org/) styling.
+1. Submit a pull request.
+
+### Before you begin
+
+1. [Select or create a Cloud Platform project][projects].
+1. [Enable billing for your project][billing].
+1. [Enable the Google Cloud Security Command Center API][enable_api].
+1. [Set up authentication with a service account][auth] so you can access the
+ API from your local workstation.
+
+
+## Running the tests
+
+1. [Prepare your environment for Node.js setup][setup].
+
+1. Install dependencies:
+
+ npm install
+
+1. Run the tests:
+
+ # Run unit tests.
+ npm test
+
+ # Run sample integration tests.
+ npm run samples-test
+
+ # Run all system tests.
+ npm run system-test
+
+1. Lint (and maybe fix) any changes:
+
+ npm run fix
+
+[setup]: https://cloud.google.com/nodejs/docs/setup
+[projects]: https://console.cloud.google.com/project
+[billing]: https://support.google.com/cloud/answer/6293499#enable-billing
+[enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=securitycenter.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
\ No newline at end of file
diff --git a/packages/google-cloud-securitycenter/LICENSE b/packages/google-cloud-securitycenter/LICENSE
new file mode 100644
index 00000000000..d6456956733
--- /dev/null
+++ b/packages/google-cloud-securitycenter/LICENSE
@@ -0,0 +1,202 @@
+
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/packages/google-cloud-securitycenter/README.md b/packages/google-cloud-securitycenter/README.md
new file mode 100644
index 00000000000..f524eceeebf
--- /dev/null
+++ b/packages/google-cloud-securitycenter/README.md
@@ -0,0 +1,166 @@
+[//]: # "This README.md file is auto-generated, all changes to this file will be lost."
+[//]: # "To regenerate it, use `python -m synthtool`."
+
+
+# [Google Cloud Security Command Center: Node.js Client](https://github.com/googleapis/nodejs-security-center)
+
+[](https://cloud.google.com/terms/launch-stages)
+[](https://www.npmjs.org/package/@google-cloud/security-center)
+
+
+
+
+> Node.js idiomatic client for [Cloud Security Command Center][product-docs].
+
+[Cloud Security Command Center](https://cloud.google.com/security-command-center/docs/) helps
+security teams gather data, identify threats, and act on them before they result in business
+damage or loss. It offers deep insight into application and data risk so that you can quickly
+mitigate threats to your cloud resources and evaluate overall health. With Cloud Security
+Command Center, you can view and monitor an inventory of your cloud assets, scan storage
+systems for sensitive data, detect common web vulnerabilities, and review access rights
+to your critical resources, all from a single, centralized dashboard.
+
+
+A comprehensive list of changes in each version may be found in
+[the CHANGELOG](https://github.com/googleapis/nodejs-security-center/blob/main/CHANGELOG.md).
+
+* [Google Cloud Security Command Center Node.js Client API Reference][client-docs]
+* [Google Cloud Security Command Center Documentation][product-docs]
+* [github.com/googleapis/nodejs-security-center](https://github.com/googleapis/nodejs-security-center)
+
+Read more about the client libraries for Cloud APIs, including the older
+Google APIs Client Libraries, in [Client Libraries Explained][explained].
+
+[explained]: https://cloud.google.com/apis/docs/client-libraries-explained
+
+**Table of contents:**
+
+
+* [Quickstart](#quickstart)
+ * [Before you begin](#before-you-begin)
+ * [Installing the client library](#installing-the-client-library)
+ * [Using the client library](#using-the-client-library)
+* [Samples](#samples)
+* [Versioning](#versioning)
+* [Contributing](#contributing)
+* [License](#license)
+
+## Quickstart
+
+### Before you begin
+
+1. [Select or create a Cloud Platform project][projects].
+1. [Enable billing for your project][billing].
+1. [Enable the Google Cloud Security Command Center API][enable_api].
+1. [Set up authentication with a service account][auth] so you can access the
+ API from your local workstation.
+
+### Installing the client library
+
+```bash
+npm install @google-cloud/security-center
+```
+
+
+### Using the client library
+
+```javascript
+const sc = require('@google-cloud/security-center');
+
+// Create a client
+const client = new sc.SecurityCenterClient();
+
+async function quickstart() {
+ // TODO(developer): choose the organization to use
+ // const organization = 'your-organization';
+ const [source] = await client.createSource({
+ parent: client.organizationPath(organization),
+ source: {},
+ });
+ // The newly created source.
+ console.log('Source created.');
+ console.log(source);
+}
+quickstart();
+
+```
+
+
+
+## Samples
+
+Samples are in the [`samples/`](https://github.com/googleapis/nodejs-security-center/tree/main/samples) directory. Each sample's `README.md` has instructions for running its sample.
+
+| Sample | Source Code | Try it |
+| --------------------------- | --------------------------------- | ------ |
+| Quickstart | [source code](https://github.com/googleapis/nodejs-security-center/blob/main/samples/quickstart.js) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/nodejs-security-center&page=editor&open_in_editor=samples/quickstart.js,samples/README.md) |
+
+
+
+The [Google Cloud Security Command Center Node.js Client API Reference][client-docs] documentation
+also contains samples.
+
+## Supported Node.js Versions
+
+Our client libraries follow the [Node.js release schedule](https://nodejs.org/en/about/releases/).
+Libraries are compatible with all current _active_ and _maintenance_ versions of
+Node.js.
+If you are using an end-of-life version of Node.js, we recommend that you update
+as soon as possible to an actively supported LTS version.
+
+Google's client libraries support legacy versions of Node.js runtimes on a
+best-efforts basis with the following warnings:
+
+* Legacy versions are not tested in continuous integration.
+* Some security patches and features cannot be backported.
+* Dependencies cannot be kept up-to-date.
+
+Client libraries targeting some end-of-life versions of Node.js are available, and
+can be installed through npm [dist-tags](https://docs.npmjs.com/cli/dist-tag).
+The dist-tags follow the naming convention `legacy-(version)`.
+For example, `npm install @google-cloud/security-center@legacy-8` installs client libraries
+for versions compatible with Node.js 8.
+
+## Versioning
+
+This library follows [Semantic Versioning](http://semver.org/).
+
+
+
+This library is considered to be **stable**. The code surface will not change in backwards-incompatible ways
+unless absolutely necessary (e.g. because of critical security issues) or with
+an extensive deprecation period. Issues and requests against **stable** libraries
+are addressed with the highest priority.
+
+
+
+
+
+
+More Information: [Google Cloud Platform Launch Stages][launch_stages]
+
+[launch_stages]: https://cloud.google.com/terms/launch-stages
+
+## Contributing
+
+Contributions welcome! See the [Contributing Guide](https://github.com/googleapis/nodejs-security-center/blob/main/CONTRIBUTING.md).
+
+Please note that this `README.md`, the `samples/README.md`,
+and a variety of configuration files in this repository (including `.nycrc` and `tsconfig.json`)
+are generated from a central template. To edit one of these files, make an edit
+to its templates in
+[directory](https://github.com/googleapis/synthtool).
+
+## License
+
+Apache Version 2.0
+
+See [LICENSE](https://github.com/googleapis/nodejs-security-center/blob/main/LICENSE)
+
+[client-docs]: https://cloud.google.com/nodejs/docs/reference/security-center/latest
+[product-docs]: https://cloud.google.com/security-command-center
+[shell_img]: https://gstatic.com/cloudssh/images/open-btn.png
+[projects]: https://console.cloud.google.com/project
+[billing]: https://support.google.com/cloud/answer/6293499#enable-billing
+[enable_api]: https://console.cloud.google.com/flows/enableapi?apiid=securitycenter.googleapis.com
+[auth]: https://cloud.google.com/docs/authentication/getting-started
diff --git a/packages/google-cloud-securitycenter/linkinator.config.json b/packages/google-cloud-securitycenter/linkinator.config.json
new file mode 100644
index 00000000000..befd23c8633
--- /dev/null
+++ b/packages/google-cloud-securitycenter/linkinator.config.json
@@ -0,0 +1,16 @@
+{
+ "recurse": true,
+ "skip": [
+ "https://codecov.io/gh/googleapis/",
+ "www.googleapis.com",
+ "img.shields.io",
+ "https://console.cloud.google.com/cloudshell",
+ "https://support.google.com"
+ ],
+ "silent": true,
+ "concurrency": 5,
+ "retry": true,
+ "retryErrors": true,
+ "retryErrorsCount": 5,
+ "retryErrorsJitter": 3000
+}
diff --git a/packages/google-cloud-securitycenter/owlbot.py b/packages/google-cloud-securitycenter/owlbot.py
new file mode 100644
index 00000000000..43c3a2144ae
--- /dev/null
+++ b/packages/google-cloud-securitycenter/owlbot.py
@@ -0,0 +1,20 @@
+# Copyright 2018 Google LLC
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+import synthtool.languages.node_mono_repo as node
+
+node.owlbot_main(relative_dir="packages/google-cloud-securitycenter",
+ staging_excludes=['package.json', 'README.md'],
+ templates_excludes=['.kokoro/samples-test.sh', '.kokoro/samples-test.sh']
+)
diff --git a/packages/google-cloud-securitycenter/package.json b/packages/google-cloud-securitycenter/package.json
new file mode 100644
index 00000000000..cc353307516
--- /dev/null
+++ b/packages/google-cloud-securitycenter/package.json
@@ -0,0 +1,69 @@
+{
+ "name": "@google-cloud/security-center",
+ "description": "Cloud Security Command Center API client for Node.js",
+ "version": "7.0.0",
+ "license": "Apache-2.0",
+ "author": "Google LLC",
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "repository": {
+ "type": "git",
+ "directory": "packages/google-cloud-securitycenter",
+ "url": "https://github.com/googleapis/google-cloud-node.git"
+ },
+ "files": [
+ "build/src",
+ "build/protos"
+ ],
+ "main": "build/src/index.js",
+ "scripts": {
+ "clean": "gts clean",
+ "compile": "tsc -p . && cp -r protos build/",
+ "docs": "jsdoc -c .jsdoc.js",
+ "docs-test": "linkinator docs",
+ "fix": "gts fix",
+ "lint": "gts check",
+ "predocs-test": "npm run docs",
+ "prepare": "npm run compile",
+ "system-test": "npm run compile && c8 mocha build/system-test",
+ "test": "c8 mocha build/test",
+ "samples-test": "npm run compile && cd samples/ && npm link ../ && npm i && npm test",
+ "prelint": "cd samples; npm link ../; npm install",
+ "precompile": "gts clean"
+ },
+ "keywords": [
+ "google apis client",
+ "google api client",
+ "google apis",
+ "google api",
+ "google",
+ "google cloud platform",
+ "google cloud",
+ "cloud",
+ "google security center",
+ "Security Center",
+ "Security Command Center API"
+ ],
+ "dependencies": {
+ "google-gax": "^3.5.2"
+ },
+ "devDependencies": {
+ "@types/mocha": "^9.0.0",
+ "@types/node": "^18.0.0",
+ "@types/sinon": "^10.0.0",
+ "c8": "^7.0.0",
+ "gts": "^3.1.0",
+ "jsdoc": "^4.0.0",
+ "jsdoc-fresh": "^2.0.0",
+ "jsdoc-region-tag": "^2.0.0",
+ "linkinator": "^4.0.0",
+ "mocha": "^9.2.2",
+ "null-loader": "^4.0.0",
+ "pack-n-play": "^1.0.0-2",
+ "sinon": "^14.0.0",
+ "ts-loader": "^8.0.0",
+ "typescript": "^4.6.4"
+ },
+ "homepage": "https://github.com/googleapis/google-cloud-node/tree/main/packages/google-cloud-securitycenter"
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/common_resources.proto b/packages/google-cloud-securitycenter/protos/google/cloud/common_resources.proto
new file mode 100644
index 00000000000..56c9f800d5e
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/common_resources.proto
@@ -0,0 +1,52 @@
+// Copyright 2019 Google LLC.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// This file contains stub messages for common resources in GCP.
+// It is not intended to be directly generated, and is instead used by
+// other tooling to be able to match common resource patterns.
+syntax = "proto3";
+
+package google.cloud;
+
+import "google/api/resource.proto";
+
+
+option (google.api.resource_definition) = {
+ type: "cloudresourcemanager.googleapis.com/Project"
+ pattern: "projects/{project}"
+};
+
+
+option (google.api.resource_definition) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ pattern: "organizations/{organization}"
+};
+
+
+option (google.api.resource_definition) = {
+ type: "cloudresourcemanager.googleapis.com/Folder"
+ pattern: "folders/{folder}"
+};
+
+
+option (google.api.resource_definition) = {
+ type: "cloudbilling.googleapis.com/BillingAccount"
+ pattern: "billingAccounts/{billing_account}"
+};
+
+option (google.api.resource_definition) = {
+ type: "locations.googleapis.com/Location"
+ pattern: "projects/{project}/locations/{location}"
+};
+
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/access.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/access.proto
new file mode 100644
index 00000000000..799b84fcccb
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/access.proto
@@ -0,0 +1,100 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "AccessProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Represents an access event.
+message Access {
+ // Associated email, such as "foo@google.com".
+ //
+ // The email address of the authenticated user (or service account on behalf
+ // of third party principal) making the request. For third party identity
+ // callers, the `principal_subject` field is populated instead of this field.
+ // For privacy reasons, the principal email address is sometimes redacted.
+ // For more information, see [Caller identities in audit
+ // logs](https://cloud.google.com/logging/docs/audit#user-id).
+ string principal_email = 1;
+
+ // Caller's IP address, such as "1.1.1.1".
+ string caller_ip = 2;
+
+ // The caller IP's geolocation, which identifies where the call came from.
+ Geolocation caller_ip_geo = 3;
+
+ // What kind of user agent is associated, e.g. operating system shells,
+ // embedded or stand-alone applications, etc.
+ string user_agent_family = 4;
+
+ // This is the API service that the service account made a call to, e.g.
+ // "iam.googleapis.com"
+ string service_name = 5;
+
+ // The method that the service account called, e.g. "SetIamPolicy".
+ string method_name = 6;
+
+ // A string representing the principal_subject associated with the identity.
+ // As compared to `principal_email`, supports principals that aren't
+ // associated with email addresses, such as third party principals. For most
+ // identities, the format will be `principal://iam.googleapis.com/{identity
+ // pool name}/subjects/{subject}` except for some GKE identities
+ // (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy
+ // format `serviceAccount:{identity pool name}[{subject}]`
+ string principal_subject = 7;
+
+ // The name of the service account key used to create or exchange
+ // credentials for authenticating the service account making the request.
+ // This is a scheme-less URI full resource name. For example:
+ //
+ // "//iam.googleapis.com/projects/{PROJECT_ID}/serviceAccounts/{ACCOUNT}/keys/{key}"
+ //
+ string service_account_key_name = 8;
+
+ // Identity delegation history of an authenticated service account that makes
+ // the request. It contains information on the real authorities that try to
+ // access GCP resources by delegating on a service account. When multiple
+ // authorities are present, they are guaranteed to be sorted based on the
+ // original ordering of the identity delegation events.
+ repeated ServiceAccountDelegationInfo service_account_delegation_info = 9;
+}
+
+// Identity delegation history of an authenticated service account.
+message ServiceAccountDelegationInfo {
+ // The email address of a Google account.
+ string principal_email = 1;
+
+ // A string representing the principal_subject associated with the identity.
+ // As compared to `principal_email`, supports principals that aren't
+ // associated with email addresses, such as third party principals. For most
+ // identities, the format will be `principal://iam.googleapis.com/{identity
+ // pool name}/subjects/{subject}` except for some GKE identities
+ // (GKE_WORKLOAD, FREEFORM, GKE_HUB_WORKLOAD) that are still in the legacy
+ // format `serviceAccount:{identity pool name}[{subject}]`
+ string principal_subject = 2;
+}
+
+// Represents a geographical location for a given access.
+message Geolocation {
+ // A CLDR.
+ string region_code = 1;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/asset.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/asset.proto
new file mode 100644
index 00000000000..55ba5641a09
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/asset.proto
@@ -0,0 +1,134 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1/folder.proto";
+import "google/cloud/securitycenter/v1/security_marks.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Security Command Center representation of a Google Cloud
+// resource.
+//
+// The Asset is a Security Command Center resource that captures information
+// about a single Google Cloud resource. All modifications to an Asset are only
+// within the context of Security Command Center and don't affect the referenced
+// Google Cloud resource.
+message Asset {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Asset"
+ pattern: "organizations/{organization}/assets/{asset}"
+ pattern: "folders/{folder}/assets/{asset}"
+ pattern: "projects/{project}/assets/{asset}"
+ };
+
+ // Security Command Center managed properties. These properties are managed by
+ // Security Command Center and cannot be modified by the user.
+ message SecurityCenterProperties {
+ // The full resource name of the Google Cloud resource this asset
+ // represents. This field is immutable after create time. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_name = 1;
+
+ // The type of the Google Cloud resource. Examples include: APPLICATION,
+ // PROJECT, and ORGANIZATION. This is a case insensitive field defined by
+ // Security Command Center and/or the producer of the resource and is
+ // immutable after create time.
+ string resource_type = 2;
+
+ // The full resource name of the immediate parent of the resource. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_parent = 3;
+
+ // The full resource name of the project the resource belongs to. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_project = 4;
+
+ // Owners of the Google Cloud resource.
+ repeated string resource_owners = 5;
+
+ // The user defined display name for this resource.
+ string resource_display_name = 6;
+
+ // The user defined display name for the parent of this resource.
+ string resource_parent_display_name = 7;
+
+ // The user defined display name for the project of this resource.
+ string resource_project_display_name = 8;
+
+ // Contains a Folder message for each folder in the assets ancestry.
+ // The first folder is the deepest nested folder, and the last folder is the
+ // folder directly under the Organization.
+ repeated Folder folders = 10;
+ }
+
+ // Cloud IAM Policy information associated with the Google Cloud resource
+ // described by the Security Command Center asset. This information is managed
+ // and defined by the Google Cloud resource and cannot be modified by the
+ // user.
+ message IamPolicy {
+ // The JSON representation of the Policy associated with the asset.
+ // See https://cloud.google.com/iam/reference/rest/v1/Policy for format
+ // details.
+ string policy_blob = 1;
+ }
+
+ // The relative resource name of this asset. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/assets/{asset_id}".
+ string name = 1;
+
+ // Security Command Center managed properties. These properties are managed by
+ // Security Command Center and cannot be modified by the user.
+ SecurityCenterProperties security_center_properties = 2;
+
+ // Resource managed properties. These properties are managed and defined by
+ // the Google Cloud resource and cannot be modified by the user.
+ map resource_properties = 7;
+
+ // User specified security marks. These marks are entirely managed by the user
+ // and come from the SecurityMarks resource that belongs to the asset.
+ SecurityMarks security_marks = 8;
+
+ // The time at which the asset was created in Security Command Center.
+ google.protobuf.Timestamp create_time = 9;
+
+ // The time at which the asset was last updated or added in Cloud SCC.
+ google.protobuf.Timestamp update_time = 10;
+
+ // Cloud IAM Policy information associated with the Google Cloud resource
+ // described by the Security Command Center asset. This information is managed
+ // and defined by the Google Cloud resource and cannot be modified by the
+ // user.
+ IamPolicy iam_policy = 11;
+
+ // The canonical name of the resource. It's either
+ // "organizations/{organization_id}/assets/{asset_id}",
+ // "folders/{folder_id}/assets/{asset_id}" or
+ // "projects/{project_number}/assets/{asset_id}", depending on the closest CRM
+ // ancestor of the resource.
+ string canonical_name = 13;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/bigquery_export.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/bigquery_export.proto
new file mode 100644
index 00000000000..850c66e5d03
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/bigquery_export.proto
@@ -0,0 +1,99 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "BigQueryExportProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Configures how to deliver Findings to BigQuery Instance.
+message BigQueryExport {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/BigQueryExport"
+ pattern: "organizations/{organization}/bigQueryExports/{export}"
+ pattern: "folders/{folder}/bigQueryExports/{export}"
+ pattern: "projects/{project}/bigQueryExports/{export}"
+ };
+
+ // The relative resource name of this export. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name.
+ // Example format:
+ // "organizations/{organization_id}/bigQueryExports/{export_id}" Example
+ // format: "folders/{folder_id}/bigQueryExports/{export_id}" Example format:
+ // "projects/{project_id}/bigQueryExports/{export_id}"
+ // This field is provided in responses, and is ignored when provided in create
+ // requests.
+ string name = 1;
+
+ // The description of the export (max of 1024 characters).
+ string description = 2;
+
+ // Expression that defines the filter to apply across create/update events
+ // of findings. The expression is a list of zero or more restrictions combined
+ // via logical operators `AND` and `OR`. Parentheses are supported, and `OR`
+ // has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a
+ // `-` character in front of them to indicate negation. The fields map to
+ // those defined in the corresponding resource.
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ string filter = 3;
+
+ // The dataset to write findings' updates to. Its format is
+ // "projects/[project_id]/datasets/[bigquery_dataset_id]".
+ // BigQuery Dataset unique ID must contain only letters (a-z, A-Z), numbers
+ // (0-9), or underscores (_).
+ string dataset = 4;
+
+ // Output only. The time at which the big query export was created.
+ // This field is set by the server and will be ignored if provided on export
+ // on creation.
+ google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. The most recent time at which the big export was updated.
+ // This field is set by the server and will be ignored if provided on export
+ // creation or update.
+ google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Email address of the user who last edited the big query export.
+ // This field is set by the server and will be ignored if provided on export
+ // creation or update.
+ string most_recent_editor = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. The service account that needs permission to create table, upload data to
+ // the big query dataset.
+ string principal = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/compliance.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/compliance.proto
new file mode 100644
index 00000000000..ca1353b69d0
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/compliance.proto
@@ -0,0 +1,39 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ComplianceProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Contains compliance information about a security standard indicating unmet
+// recommendations.
+message Compliance {
+ // Refers to industry wide standards or benchmarks e.g. "cis", "pci", "owasp",
+ // etc.
+ string standard = 1;
+
+ // Version of the standard/benchmark e.g. 1.1
+ string version = 2;
+
+ // Policies within the standard/benchmark e.g. A.12.4.1
+ repeated string ids = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/connection.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/connection.proto
new file mode 100644
index 00000000000..29e95546c72
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/connection.proto
@@ -0,0 +1,66 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ConnectionProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Contains information about the IP connection associated with the finding.
+message Connection {
+ // IANA Internet Protocol Number such as TCP(6) and UDP(17).
+ enum Protocol {
+ // Unspecified protocol (not HOPOPT).
+ PROTOCOL_UNSPECIFIED = 0;
+
+ // Internet Control Message Protocol.
+ ICMP = 1;
+
+ // Transmission Control Protocol.
+ TCP = 6;
+
+ // User Datagram Protocol.
+ UDP = 17;
+
+ // Generic Routing Encapsulation.
+ GRE = 47;
+
+ // Encap Security Payload.
+ ESP = 50;
+ }
+
+ // Destination IP address. Not present for sockets that are listening and not
+ // connected.
+ string destination_ip = 1;
+
+ // Destination port. Not present for sockets that are listening and not
+ // connected.
+ int32 destination_port = 2;
+
+ // Source IP address.
+ string source_ip = 3;
+
+ // Source port.
+ int32 source_port = 4;
+
+ // IANA Internet Protocol Number such as TCP(6) and UDP(17).
+ Protocol protocol = 5;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/contact_details.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/contact_details.proto
new file mode 100644
index 00000000000..c282d325b69
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/contact_details.proto
@@ -0,0 +1,37 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ContactDetailsProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// The details pertaining to specific contacts
+message ContactDetails {
+ // A list of contacts
+ repeated Contact contacts = 1;
+}
+
+// Representa a single contact's email address
+message Contact {
+ // An email address e.g. "person123@company.com"
+ string email = 1;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/container.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/container.proto
new file mode 100644
index 00000000000..65ca458cfc8
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/container.proto
@@ -0,0 +1,45 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/cloud/securitycenter/v1/label.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ContainerProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Container associated with the finding.
+message Container {
+ // Container name.
+ string name = 1;
+
+ // Container image URI provided when configuring a pod/container.
+ // May identify a container image version using mutable tags.
+ string uri = 2;
+
+ // Optional container image id, when provided by the container runtime.
+ // Uniquely identifies the container image launched using a container image
+ // digest.
+ string image_id = 3;
+
+ // Container labels, as provided by the container runtime.
+ repeated Label labels = 4;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/database.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/database.proto
new file mode 100644
index 00000000000..276b31004ee
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/database.proto
@@ -0,0 +1,52 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "DatabaseProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Represents database access information, such as queries.
+// A database may be a sub-resource of an instance (as in the case of CloudSQL
+// instances or Cloud Spanner instances), or the database instance itself.
+// Some database resources may not have the full resource name populated
+// because these resource types are not yet supported by Cloud Asset Inventory
+// (e.g. CloudSQL databases). In these cases only the display name will be
+// provided.
+message Database {
+ // The full resource name of the database the user connected to, if it is
+ // supported by CAI. (https://google.aip.dev/122#full-resource-names)
+ string name = 1;
+
+ // The human readable name of the database the user connected to.
+ string display_name = 2;
+
+ // The username used to connect to the DB. This may not necessarily be an IAM
+ // principal, and has no required format.
+ string user_name = 3;
+
+ // The SQL statement associated with the relevant access.
+ string query = 4;
+
+ // The target usernames/roles/groups of a SQL privilege grant (not an IAM
+ // policy change).
+ repeated string grantees = 5;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/exfiltration.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/exfiltration.proto
new file mode 100644
index 00000000000..14e644f6602
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/exfiltration.proto
@@ -0,0 +1,52 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ExfiltrationProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Exfiltration represents a data exfiltration attempt of one or more
+// sources to one or more targets. Sources represent the source
+// of data that is exfiltrated, and Targets represents the destination the
+// data was copied to.
+message Exfiltration {
+ // If there are multiple sources, then the data is considered "joined" between
+ // them. For instance, BigQuery can join multiple tables, and each
+ // table would be considered a source.
+ repeated ExfilResource sources = 1;
+
+ // If there are multiple targets, each target would get a complete copy of the
+ // "joined" source data.
+ repeated ExfilResource targets = 2;
+}
+
+// Resource that has been exfiltrated or exfiltrated_to.
+message ExfilResource {
+ // Resource's URI (https://google.aip.dev/122#full-resource-names)
+ string name = 1;
+
+ // Subcomponents of the asset that is exfiltrated - these could be
+ // URIs used during exfiltration, table names, databases, filenames, etc.
+ // For example, multiple tables may be exfiltrated from the same CloudSQL
+ // instance, or multiple files from the same Cloud Storage bucket.
+ repeated string components = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/external_system.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/external_system.proto
new file mode 100644
index 00000000000..8ba698138da
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/external_system.proto
@@ -0,0 +1,59 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/resource.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ExternalSystemProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Representation of third party SIEM/SOAR fields within SCC.
+message ExternalSystem {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/ExternalSystem"
+ pattern: "organizations/{organization}/sources/{source}/findings/{finding}/externalSystems/{externalsystem}"
+ pattern: "folders/{folder}/sources/{source}/findings/{finding}/externalSystems/{externalsystem}"
+ pattern: "projects/{project}/sources/{source}/findings/{finding}/externalSystems/{externalsystem}"
+ };
+
+ // External System Name e.g. jira, demisto, etc.
+ // e.g.:
+ // `organizations/1234/sources/5678/findings/123456/externalSystems/jira`
+ // `folders/1234/sources/5678/findings/123456/externalSystems/jira`
+ // `projects/1234/sources/5678/findings/123456/externalSystems/jira`
+ string name = 1;
+
+ // References primary/secondary etc assignees in the external system.
+ repeated string assignees = 2;
+
+ // Identifier that's used to track the given finding in the external system.
+ string external_uid = 3;
+
+ // Most recent status of the corresponding finding's ticket/tracker in the
+ // external system.
+ string status = 4;
+
+ // The most recent time when the corresponding finding's ticket/tracker was
+ // updated in the external system.
+ google.protobuf.Timestamp external_system_update_time = 5;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/file.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/file.proto
new file mode 100644
index 00000000000..d802dda6ebf
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/file.proto
@@ -0,0 +1,52 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "FileProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// File information about the related binary/library used by an executable, or
+// the script used by a script interpreter
+message File {
+ // Absolute path of the file as a JSON encoded string.
+ string path = 1;
+
+ // Size of the file in bytes.
+ int64 size = 2;
+
+ // SHA256 hash of the first hashed_size bytes of the file encoded as a
+ // hex string. If hashed_size == size, sha256 represents the SHA256 hash
+ // of the entire file.
+ string sha256 = 3;
+
+ // The length in bytes of the file prefix that was hashed. If
+ // hashed_size == size, any hashes reported represent the entire
+ // file.
+ int64 hashed_size = 4;
+
+ // True when the hash covers only a prefix of the file.
+ bool partially_hashed = 5;
+
+ // Prefix of the file contents as a JSON encoded string.
+ // (Currently only populated for Malicious Script Executed findings.)
+ string contents = 6;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/finding.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/finding.proto
new file mode 100644
index 00000000000..755b661772d
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/finding.proto
@@ -0,0 +1,339 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1/access.proto";
+import "google/cloud/securitycenter/v1/compliance.proto";
+import "google/cloud/securitycenter/v1/connection.proto";
+import "google/cloud/securitycenter/v1/contact_details.proto";
+import "google/cloud/securitycenter/v1/container.proto";
+import "google/cloud/securitycenter/v1/database.proto";
+import "google/cloud/securitycenter/v1/exfiltration.proto";
+import "google/cloud/securitycenter/v1/external_system.proto";
+import "google/cloud/securitycenter/v1/file.proto";
+import "google/cloud/securitycenter/v1/iam_binding.proto";
+import "google/cloud/securitycenter/v1/indicator.proto";
+import "google/cloud/securitycenter/v1/kubernetes.proto";
+import "google/cloud/securitycenter/v1/mitre_attack.proto";
+import "google/cloud/securitycenter/v1/process.proto";
+import "google/cloud/securitycenter/v1/security_marks.proto";
+import "google/cloud/securitycenter/v1/vulnerability.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Security Command Center finding.
+//
+// A finding is a record of assessment data like security, risk, health, or
+// privacy, that is ingested into Security Command Center for presentation,
+// notification, analysis, policy testing, and enforcement. For example, a
+// cross-site scripting (XSS) vulnerability in an App Engine application is a
+// finding.
+message Finding {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Finding"
+ pattern: "organizations/{organization}/sources/{source}/findings/{finding}"
+ pattern: "folders/{folder}/sources/{source}/findings/{finding}"
+ pattern: "projects/{project}/sources/{source}/findings/{finding}"
+ };
+
+ // The state of the finding.
+ enum State {
+ // Unspecified state.
+ STATE_UNSPECIFIED = 0;
+
+ // The finding requires attention and has not been addressed yet.
+ ACTIVE = 1;
+
+ // The finding has been fixed, triaged as a non-issue or otherwise addressed
+ // and is no longer active.
+ INACTIVE = 2;
+ }
+
+ // The severity of the finding.
+ enum Severity {
+ // This value is used for findings when a source doesn't write a severity
+ // value.
+ SEVERITY_UNSPECIFIED = 0;
+
+ // Vulnerability:
+ // A critical vulnerability is easily discoverable by an external actor,
+ // exploitable, and results in the direct ability to execute arbitrary code,
+ // exfiltrate data, and otherwise gain additional access and privileges to
+ // cloud resources and workloads. Examples include publicly accessible
+ // unprotected user data, public SSH access with weak or no passwords, etc.
+ //
+ // Threat:
+ // Indicates a threat that is able to access, modify, or delete data or
+ // execute unauthorized code within existing resources.
+ CRITICAL = 1;
+
+ // Vulnerability:
+ // A high risk vulnerability can be easily discovered and exploited in
+ // combination with other vulnerabilities in order to gain direct access and
+ // the ability to execute arbitrary code, exfiltrate data, and otherwise
+ // gain additional access and privileges to cloud resources and workloads.
+ // An example is a database with weak or no passwords that is only
+ // accessible internally. This database could easily be compromised by an
+ // actor that had access to the internal network.
+ //
+ // Threat:
+ // Indicates a threat that is able to create new computational resources in
+ // an environment but not able to access data or execute code in existing
+ // resources.
+ HIGH = 2;
+
+ // Vulnerability:
+ // A medium risk vulnerability could be used by an actor to gain access to
+ // resources or privileges that enable them to eventually (through multiple
+ // steps or a complex exploit) gain access and the ability to execute
+ // arbitrary code or exfiltrate data. An example is a service account with
+ // access to more projects than it should have. If an actor gains access to
+ // the service account, they could potentially use that access to manipulate
+ // a project the service account was not intended to.
+ //
+ // Threat:
+ // Indicates a threat that is able to cause operational impact but may not
+ // access data or execute unauthorized code.
+ MEDIUM = 3;
+
+ // Vulnerability:
+ // A low risk vulnerability hampers a security organization's ability to
+ // detect vulnerabilities or active threats in their deployment, or prevents
+ // the root cause investigation of security issues. An example is monitoring
+ // and logs being disabled for resource configurations and access.
+ //
+ // Threat:
+ // Indicates a threat that has obtained minimal access to an environment but
+ // is not able to access data, execute code, or create resources.
+ LOW = 4;
+ }
+
+ // Mute state a finding can be in.
+ enum Mute {
+ // Unspecified.
+ MUTE_UNSPECIFIED = 0;
+
+ // Finding has been muted.
+ MUTED = 1;
+
+ // Finding has been unmuted.
+ UNMUTED = 2;
+
+ // Finding has never been muted/unmuted.
+ UNDEFINED = 4;
+ }
+
+ // Represents what kind of Finding it is.
+ enum FindingClass {
+ // Unspecified finding class.
+ FINDING_CLASS_UNSPECIFIED = 0;
+
+ // Describes unwanted or malicious activity.
+ THREAT = 1;
+
+ // Describes a potential weakness in software that increases risk to
+ // Confidentiality & Integrity & Availability.
+ VULNERABILITY = 2;
+
+ // Describes a potential weakness in cloud resource/asset configuration that
+ // increases risk.
+ MISCONFIGURATION = 3;
+
+ // Describes a security observation that is for informational purposes.
+ OBSERVATION = 4;
+
+ // Describes an error that prevents some SCC functionality.
+ SCC_ERROR = 5;
+ }
+
+ // The relative resource name of this finding. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
+ string name = 1;
+
+ // The relative resource name of the source the finding belongs to. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // This field is immutable after creation time.
+ // For example:
+ // "organizations/{organization_id}/sources/{source_id}"
+ string parent = 2;
+
+ // For findings on Google Cloud resources, the full resource
+ // name of the Google Cloud resource this finding is for. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ // When the finding is for a non-Google Cloud resource, the resourceName can
+ // be a customer or partner defined string. This field is immutable after
+ // creation time.
+ string resource_name = 3;
+
+ // The state of the finding.
+ State state = 4;
+
+ // The additional taxonomy group within findings from a given source.
+ // This field is immutable after creation time.
+ // Example: "XSS_FLASH_INJECTION"
+ string category = 5;
+
+ // The URI that, if available, points to a web page outside of Security
+ // Command Center where additional information about the finding can be found.
+ // This field is guaranteed to be either empty or a well formed URL.
+ string external_uri = 6;
+
+ // Source specific properties. These properties are managed by the source
+ // that writes the finding. The key names in the source_properties map must be
+ // between 1 and 255 characters, and must start with a letter and contain
+ // alphanumeric characters or underscores only.
+ map source_properties = 7;
+
+ // Output only. User specified security marks. These marks are entirely
+ // managed by the user and come from the SecurityMarks resource that belongs
+ // to the finding.
+ SecurityMarks security_marks = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The time the finding was first detected. If an existing finding is updated,
+ // then this is the time the update occurred.
+ // For example, if the finding represents an open firewall, this property
+ // captures the time the detector believes the firewall became open. The
+ // accuracy is determined by the detector. If the finding is later resolved,
+ // then this time reflects when the finding was resolved. This must not
+ // be set to a value greater than the current timestamp.
+ google.protobuf.Timestamp event_time = 9;
+
+ // The time at which the finding was created in Security Command Center.
+ google.protobuf.Timestamp create_time = 10;
+
+ // The severity of the finding. This field is managed by the source that
+ // writes the finding.
+ Severity severity = 12;
+
+ // The canonical name of the finding. It's either
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}",
+ // "folders/{folder_id}/sources/{source_id}/findings/{finding_id}" or
+ // "projects/{project_number}/sources/{source_id}/findings/{finding_id}",
+ // depending on the closest CRM ancestor of the resource associated with the
+ // finding.
+ string canonical_name = 14;
+
+ // Indicates the mute state of a finding (either muted, unmuted
+ // or undefined). Unlike other attributes of a finding, a finding provider
+ // shouldn't set the value of mute.
+ Mute mute = 15;
+
+ // The class of the finding.
+ FindingClass finding_class = 17;
+
+ // Represents what's commonly known as an Indicator of compromise (IoC) in
+ // computer forensics. This is an artifact observed on a network or in an
+ // operating system that, with high confidence, indicates a computer
+ // intrusion.
+ // Reference: https://en.wikipedia.org/wiki/Indicator_of_compromise
+ Indicator indicator = 18;
+
+ // Represents vulnerability specific fields like cve, cvss scores etc.
+ // CVE stands for Common Vulnerabilities and Exposures
+ // (https://cve.mitre.org/about/)
+ Vulnerability vulnerability = 20;
+
+ // Output only. The most recent time this finding was muted or unmuted.
+ google.protobuf.Timestamp mute_update_time = 21 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Third party SIEM/SOAR fields within SCC, contains external system
+ // information and external system finding fields.
+ map external_systems = 22 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // MITRE ATT&CK tactics and techniques related to this finding.
+ // See: https://attack.mitre.org
+ MitreAttack mitre_attack = 25;
+
+ // Access details associated to the Finding, such as more information on the
+ // caller, which method was accessed, from where, etc.
+ Access access = 26;
+
+ // Contains information about the IP connection associated with the finding.
+ repeated Connection connections = 31;
+
+ // First known as mute_annotation. Records additional information about the
+ // mute operation e.g. mute config that muted the finding, user who muted the
+ // finding, etc. Unlike other attributes of a finding, a finding provider
+ // shouldn't set the value of mute.
+ string mute_initiator = 28;
+
+ // Represents operating system processes associated with the Finding.
+ repeated Process processes = 30;
+
+ // Output only. Map containing the points of contact for the given finding. The key
+ // represents the type of contact, while the value contains a list of all the
+ // contacts that pertain. Please refer to:
+ // https://cloud.google.com/resource-manager/docs/managing-notification-contacts#notification-categories
+ //
+ // {
+ // "security": {
+ // "contacts": [
+ // {
+ // "email": "person1@company.com"
+ // },
+ // {
+ // "email": "person2@company.com"
+ // }
+ // ]
+ // }
+ // }
+ map contacts = 33 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Contains compliance information for security standards associated to the
+ // finding.
+ repeated Compliance compliances = 34;
+
+ // Output only. The human readable display name of the finding source such as
+ // "Event Threat Detection" or "Security Health Analytics".
+ string parent_display_name = 36 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Contains more detail about the finding.
+ string description = 37;
+
+ // Represents exfiltration associated with the Finding.
+ Exfiltration exfiltration = 38;
+
+ // Represents IAM bindings associated with the Finding.
+ repeated IamBinding iam_bindings = 39;
+
+ // Next steps associate to the finding.
+ string next_steps = 40;
+
+ // Containers associated with the finding. containers provides information
+ // for both Kubernetes and non-Kubernetes containers.
+ repeated Container containers = 42;
+
+ // Kubernetes resources associated with the finding.
+ Kubernetes kubernetes = 43;
+
+ // Database associated with the finding.
+ Database database = 44;
+
+ // File associated with the finding.
+ repeated File files = 46;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/folder.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/folder.proto
new file mode 100644
index 00000000000..4078a527b33
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/folder.proto
@@ -0,0 +1,36 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "FolderProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Message that contains the resource name and display name of a folder
+// resource.
+message Folder {
+ // Full resource name of this folder. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_folder = 1;
+
+ // The user defined display name for this folder.
+ string resource_folder_display_name = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/iam_binding.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/iam_binding.proto
new file mode 100644
index 00000000000..c1e57a37382
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/iam_binding.proto
@@ -0,0 +1,52 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "IamBindingProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Represents a particular IAM binding, which captures a member's role addition,
+// removal, or state.
+message IamBinding {
+ // The type of action performed on a Binding in a policy.
+ enum Action {
+ // Unspecified.
+ ACTION_UNSPECIFIED = 0;
+
+ // Addition of a Binding.
+ ADD = 1;
+
+ // Removal of a Binding.
+ REMOVE = 2;
+ }
+
+ // The action that was performed on a Binding.
+ Action action = 1;
+
+ // Role that is assigned to "members".
+ // For example, "roles/viewer", "roles/editor", or "roles/owner".
+ string role = 2;
+
+ // A single identity requesting access for a Cloud Platform resource,
+ // e.g. "foo@google.com".
+ string member = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/indicator.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/indicator.proto
new file mode 100644
index 00000000000..1cbfdfa2c9a
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/indicator.proto
@@ -0,0 +1,82 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "IndicatorProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Represents what's commonly known as an Indicator of compromise (IoC) in
+// computer forensics. This is an artifact observed on a network or in an
+// operating system that, with high confidence, indicates a computer intrusion.
+// Reference: https://en.wikipedia.org/wiki/Indicator_of_compromise
+message Indicator {
+ // Indicates what signature matched this process.
+ message ProcessSignature {
+ // A signature corresponding to memory page hashes.
+ message MemoryHashSignature {
+ // Memory hash detection contributing to the binary family match.
+ message Detection {
+ // The name of the binary associated with the memory hash
+ // signature detection.
+ string binary = 2;
+
+ // The percentage of memory page hashes in the signature
+ // that were matched.
+ double percent_pages_matched = 3;
+ }
+
+ // The binary family.
+ string binary_family = 1;
+
+ // The list of memory hash detections contributing to the binary family
+ // match.
+ repeated Detection detections = 4;
+ }
+
+ // A signature corresponding to a YARA rule.
+ message YaraRuleSignature {
+ // The name of the YARA rule.
+ string yara_rule = 5;
+ }
+
+ oneof signature {
+ // Signature indicating that a binary family was matched.
+ MemoryHashSignature memory_hash_signature = 6;
+
+ // Signature indicating that a YARA rule was matched.
+ YaraRuleSignature yara_rule_signature = 7;
+ }
+ }
+
+ // List of ip addresses associated to the Finding.
+ repeated string ip_addresses = 1;
+
+ // List of domains associated to the Finding.
+ repeated string domains = 2;
+
+ // The list of matched signatures indicating that the given
+ // process is present in the environment.
+ repeated ProcessSignature signatures = 3;
+
+ // The list of URIs associated to the Findings.
+ repeated string uris = 4;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/kubernetes.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/kubernetes.proto
new file mode 100644
index 00000000000..bf3bc3608c5
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/kubernetes.proto
@@ -0,0 +1,181 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/cloud/securitycenter/v1/container.proto";
+import "google/cloud/securitycenter/v1/label.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "KubernetesProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Kubernetes related attributes.
+message Kubernetes {
+ // Kubernetes Pod.
+ message Pod {
+ // Kubernetes Pod namespace.
+ string ns = 1;
+
+ // Kubernetes Pod name.
+ string name = 2;
+
+ // Pod labels. For Kubernetes containers, these are applied to the
+ // container.
+ repeated Label labels = 3;
+
+ // Pod containers associated with this finding, if any.
+ repeated Container containers = 4;
+ }
+
+ // Kubernetes Nodes associated with the finding.
+ message Node {
+ // Full Resource name of the Compute Engine VM running the
+ // cluster node.
+ string name = 1;
+ }
+
+ // Provides GKE Node Pool information.
+ message NodePool {
+ // Kubernetes Node pool name.
+ string name = 1;
+
+ // Nodes associated with the finding.
+ repeated Node nodes = 2;
+ }
+
+ // Kubernetes Role or ClusterRole.
+ message Role {
+ // Types of Kubernetes roles.
+ enum Kind {
+ // Role type is not specified.
+ KIND_UNSPECIFIED = 0;
+
+ // Kubernetes Role.
+ ROLE = 1;
+
+ // Kubernetes ClusterRole.
+ CLUSTER_ROLE = 2;
+ }
+
+ // Role type.
+ Kind kind = 1;
+
+ // Role namespace.
+ string ns = 2;
+
+ // Role name.
+ string name = 3;
+ }
+
+ // Represents a Kubernetes RoleBinding or ClusterRoleBinding.
+ message Binding {
+ // Namespace for binding.
+ string ns = 1;
+
+ // Name for binding.
+ string name = 2;
+
+ // The Role or ClusterRole referenced by the binding.
+ Role role = 3;
+
+ // Represents the subjects(s) bound to the role. Not always available
+ // for PATCH requests.
+ repeated Subject subjects = 4;
+ }
+
+ // Represents a Kubernetes Subject.
+ message Subject {
+ // Auth types that can be used for Subject's kind field.
+ enum AuthType {
+ // Authentication is not specified.
+ AUTH_TYPE_UNSPECIFIED = 0;
+
+ // User with valid certificate.
+ USER = 1;
+
+ // Users managed by Kubernetes API with credentials stored as Secrets.
+ SERVICEACCOUNT = 2;
+
+ // Collection of users.
+ GROUP = 3;
+ }
+
+ // Authentication type for subject.
+ AuthType kind = 1;
+
+ // Namespace for subject.
+ string ns = 2;
+
+ // Name for subject.
+ string name = 3;
+ }
+
+ // Conveys information about a Kubernetes access review (e.g. kubectl auth
+ // can-i ...) that was involved in a finding.
+ message AccessReview {
+ // Group is the API Group of the Resource. "*" means all.
+ string group = 1;
+
+ // Namespace of the action being requested. Currently, there is no
+ // distinction between no namespace and all namespaces. Both
+ // are represented by "" (empty).
+ string ns = 2;
+
+ // Name is the name of the resource being requested. Empty means all.
+ string name = 3;
+
+ // Resource is the optional resource type requested. "*" means all.
+ string resource = 4;
+
+ // Subresource is the optional subresource type.
+ string subresource = 5;
+
+ // Verb is a Kubernetes resource API verb, like: get, list, watch, create,
+ // update, delete, proxy. "*" means all.
+ string verb = 6;
+
+ // Version is the API Version of the Resource. "*" means all.
+ string version = 7;
+ }
+
+ // Kubernetes Pods associated with the finding. This field will contain Pod
+ // records for each container that is owned by a Pod.
+ repeated Pod pods = 1;
+
+ // Provides Kubernetes Node information.
+ repeated Node nodes = 2;
+
+ // GKE Node Pools associated with the finding. This field will
+ // contain NodePool information for each Node, when it is available.
+ repeated NodePool node_pools = 3;
+
+ // Provides Kubernetes role information for findings that involve
+ // Roles or ClusterRoles.
+ repeated Role roles = 4;
+
+ // Provides Kubernetes role binding information for findings that involve
+ // RoleBindings or ClusterRoleBindings.
+ repeated Binding bindings = 5;
+
+ // Provides information on any Kubernetes access reviews (i.e. privilege
+ // checks) relevant to the finding.
+ repeated AccessReview access_reviews = 6;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/label.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/label.proto
new file mode 100644
index 00000000000..30321d90718
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/label.proto
@@ -0,0 +1,35 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "LabelProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Label represents a generic name=value label. Label has separate name and
+// value fields to support filtering with contains().
+message Label {
+ // Label name.
+ string name = 1;
+
+ // Label value.
+ string value = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/mitre_attack.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/mitre_attack.proto
new file mode 100644
index 00000000000..ab8262ccfbb
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/mitre_attack.proto
@@ -0,0 +1,211 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "MitreAttackProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// MITRE ATT&CK tactics and techniques related to this finding.
+// See: https://attack.mitre.org
+message MitreAttack {
+ // MITRE ATT&CK tactics that can be referenced by SCC findings.
+ // See: https://attack.mitre.org/tactics/enterprise/
+ enum Tactic {
+ // Unspecified value.
+ TACTIC_UNSPECIFIED = 0;
+
+ // TA0043
+ RECONNAISSANCE = 1;
+
+ // TA0042
+ RESOURCE_DEVELOPMENT = 2;
+
+ // TA0001
+ INITIAL_ACCESS = 5;
+
+ // TA0002
+ EXECUTION = 3;
+
+ // TA0003
+ PERSISTENCE = 6;
+
+ // TA0004
+ PRIVILEGE_ESCALATION = 8;
+
+ // TA0005
+ DEFENSE_EVASION = 7;
+
+ // TA0006
+ CREDENTIAL_ACCESS = 9;
+
+ // TA0007
+ DISCOVERY = 10;
+
+ // TA0008
+ LATERAL_MOVEMENT = 11;
+
+ // TA0009
+ COLLECTION = 12;
+
+ // TA0011
+ COMMAND_AND_CONTROL = 4;
+
+ // TA0010
+ EXFILTRATION = 13;
+
+ // TA0040
+ IMPACT = 14;
+ }
+
+ // MITRE ATT&CK techniques that can be referenced by SCC findings.
+ // See: https://attack.mitre.org/techniques/enterprise/
+ enum Technique {
+ // Unspecified value.
+ TECHNIQUE_UNSPECIFIED = 0;
+
+ // T1595
+ ACTIVE_SCANNING = 1;
+
+ // T1595.001
+ SCANNING_IP_BLOCKS = 2;
+
+ // T1105
+ INGRESS_TOOL_TRANSFER = 3;
+
+ // T1106
+ NATIVE_API = 4;
+
+ // T1129
+ SHARED_MODULES = 5;
+
+ // T1059
+ COMMAND_AND_SCRIPTING_INTERPRETER = 6;
+
+ // T1059.004
+ UNIX_SHELL = 7;
+
+ // T1496
+ RESOURCE_HIJACKING = 8;
+
+ // T1090
+ PROXY = 9;
+
+ // T1090.002
+ EXTERNAL_PROXY = 10;
+
+ // T1090.003
+ MULTI_HOP_PROXY = 11;
+
+ // T1568
+ DYNAMIC_RESOLUTION = 12;
+
+ // T1552
+ UNSECURED_CREDENTIALS = 13;
+
+ // T1078
+ VALID_ACCOUNTS = 14;
+
+ // T1078.003
+ LOCAL_ACCOUNTS = 15;
+
+ // T1078.004
+ CLOUD_ACCOUNTS = 16;
+
+ // T1498
+ NETWORK_DENIAL_OF_SERVICE = 17;
+
+ // T1069
+ PERMISSION_GROUPS_DISCOVERY = 18;
+
+ // T1069.003
+ CLOUD_GROUPS = 19;
+
+ // T1567
+ EXFILTRATION_OVER_WEB_SERVICE = 20;
+
+ // T1567.002
+ EXFILTRATION_TO_CLOUD_STORAGE = 21;
+
+ // T1098
+ ACCOUNT_MANIPULATION = 22;
+
+ // T1098.004
+ SSH_AUTHORIZED_KEYS = 23;
+
+ // T1543
+ CREATE_OR_MODIFY_SYSTEM_PROCESS = 24;
+
+ // T1539
+ STEAL_WEB_SESSION_COOKIE = 25;
+
+ // T1578
+ MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE = 26;
+
+ // T1190
+ EXPLOIT_PUBLIC_FACING_APPLICATION = 27;
+
+ // T1556
+ MODIFY_AUTHENTICATION_PROCESS = 28;
+
+ // T1485
+ DATA_DESTRUCTION = 29;
+
+ // T1484
+ DOMAIN_POLICY_MODIFICATION = 30;
+
+ // T1562
+ IMPAIR_DEFENSES = 31;
+
+ // T1046
+ NETWORK_SERVICE_DISCOVERY = 32;
+
+ // T1134
+ ACCESS_TOKEN_MANIPULATION = 33;
+
+ // T1548
+ ABUSE_ELEVATION_CONTROL_MECHANISM = 34;
+
+ // T1078.001
+ DEFAULT_ACCOUNTS = 35;
+ }
+
+ // The MITRE ATT&CK tactic most closely represented by this finding, if any.
+ Tactic primary_tactic = 1;
+
+ // The MITRE ATT&CK technique most closely represented by this finding, if
+ // any. primary_techniques is a repeated field because there are multiple
+ // levels of MITRE ATT&CK techniques. If the technique most closely
+ // represented by this finding is a sub-technique (e.g. `SCANNING_IP_BLOCKS`),
+ // both the sub-technique and its parent technique(s) will be listed (e.g.
+ // `SCANNING_IP_BLOCKS`, `ACTIVE_SCANNING`).
+ repeated Technique primary_techniques = 2;
+
+ // Additional MITRE ATT&CK tactics related to this finding, if any.
+ repeated Tactic additional_tactics = 3;
+
+ // Additional MITRE ATT&CK techniques related to this finding, if any, along
+ // with any of their respective parent techniques.
+ repeated Technique additional_techniques = 4;
+
+ // The MITRE ATT&CK version referenced by the above fields. E.g. "8".
+ string version = 5;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/mute_config.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/mute_config.proto
new file mode 100644
index 00000000000..74426957b7c
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/mute_config.proto
@@ -0,0 +1,89 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "MuteConfigProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// A mute config is a Cloud SCC resource that contains the configuration
+// to mute create/update events of findings.
+message MuteConfig {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/MuteConfig"
+ pattern: "organizations/{organization}/muteConfigs/{mute_config}"
+ pattern: "folders/{folder}/muteConfigs/{mute_config}"
+ pattern: "projects/{project}/muteConfigs/{mute_config}"
+ };
+
+ // This field will be ignored if provided on config creation. Format
+ // "organizations/{organization}/muteConfigs/{mute_config}"
+ // "folders/{folder}/muteConfigs/{mute_config}"
+ // "projects/{project}/muteConfigs/{mute_config}"
+ string name = 1;
+
+ // The human readable name to be displayed for the mute config.
+ string display_name = 2 [deprecated = true];
+
+ // A description of the mute config.
+ string description = 3;
+
+ // Required. An expression that defines the filter to apply across create/update events
+ // of findings. While creating a filter string, be mindful of the
+ // scope in which the mute configuration is being created. E.g., If a filter
+ // contains project = X but is created under the project = Y scope, it might
+ // not match any findings.
+ //
+ // The following field and operator combinations are supported:
+ //
+ // * severity: `=`, `:`
+ // * category: `=`, `:`
+ // * resource.name: `=`, `:`
+ // * resource.project_name: `=`, `:`
+ // * resource.project_display_name: `=`, `:`
+ // * resource.folders.resource_folder: `=`, `:`
+ // * resource.parent_name: `=`, `:`
+ // * resource.parent_display_name: `=`, `:`
+ // * resource.type: `=`, `:`
+ // * finding_class: `=`, `:`
+ // * indicator.ip_addresses: `=`, `:`
+ // * indicator.domains: `=`, `:`
+ string filter = 4 [(google.api.field_behavior) = REQUIRED];
+
+ // Output only. The time at which the mute config was created.
+ // This field is set by the server and will be ignored if provided on config
+ // creation.
+ google.protobuf.Timestamp create_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. The most recent time at which the mute config was updated.
+ // This field is set by the server and will be ignored if provided on config
+ // creation or update.
+ google.protobuf.Timestamp update_time = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // Output only. Email address of the user who last edited the mute config.
+ // This field is set by the server and will be ignored if provided on config
+ // creation or update.
+ string most_recent_editor = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/notification_config.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/notification_config.proto
new file mode 100644
index 00000000000..ee1e9546078
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/notification_config.proto
@@ -0,0 +1,97 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "NotificationConfigProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+option (google.api.resource_definition) = {
+ type: "pubsub.googleapis.com/Topic"
+ pattern: "projects/{project}/topics/{topic}"
+};
+
+// Cloud Security Command Center (Cloud SCC) notification configs.
+//
+// A notification config is a Cloud SCC resource that contains the configuration
+// to send notifications for create/update events of findings, assets and etc.
+message NotificationConfig {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/NotificationConfig"
+ pattern: "organizations/{organization}/notificationConfigs/{notification_config}"
+ pattern: "folders/{folder}/notificationConfigs/{notification_config}"
+ pattern: "projects/{project}/notificationConfigs/{notification_config}"
+ };
+
+ // The config for streaming-based notifications, which send each event as soon
+ // as it is detected.
+ message StreamingConfig {
+ // Expression that defines the filter to apply across create/update events
+ // of assets or findings as specified by the event type. The expression is a
+ // list of zero or more restrictions combined via logical operators `AND`
+ // and `OR`. Parentheses are supported, and `OR` has higher precedence than
+ // `AND`.
+ //
+ // Restrictions have the form ` ` and may have a
+ // `-` character in front of them to indicate negation. The fields map to
+ // those defined in the corresponding resource.
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ string filter = 1;
+ }
+
+ // The relative resource name of this notification config. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/notificationConfigs/notify_public_bucket".
+ string name = 1;
+
+ // The description of the notification config (max of 1024 characters).
+ string description = 2;
+
+ // The Pub/Sub topic to send notifications to. Its format is
+ // "projects/[project_id]/topics/[topic]".
+ string pubsub_topic = 3 [(google.api.resource_reference) = {
+ type: "pubsub.googleapis.com/Topic"
+ }];
+
+ // Output only. The service account that needs "pubsub.topics.publish"
+ // permission to publish to the Pub/Sub topic.
+ string service_account = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The config for triggering notifications.
+ oneof notify_config {
+ // The config for triggering streaming-based notifications.
+ StreamingConfig streaming_config = 5;
+ }
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/notification_message.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/notification_message.proto
new file mode 100644
index 00000000000..3605dfbefae
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/notification_message.proto
@@ -0,0 +1,44 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/cloud/securitycenter/v1/finding.proto";
+import "google/cloud/securitycenter/v1/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "NotificationMessageProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Cloud SCC's Notification
+message NotificationMessage {
+ // Name of the notification config that generated current notification.
+ string notification_config_name = 1;
+
+ // Notification Event.
+ oneof event {
+ // If it's a Finding based notification config, this field will be
+ // populated.
+ Finding finding = 2;
+ }
+
+ // The Cloud resource tied to this notification's Finding.
+ Resource resource = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/organization_settings.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/organization_settings.proto
new file mode 100644
index 00000000000..e8bc9687d02
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/organization_settings.proto
@@ -0,0 +1,85 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// User specified settings that are attached to the Security Command
+// Center organization.
+message OrganizationSettings {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/OrganizationSettings"
+ pattern: "organizations/{organization}/organizationSettings"
+ };
+
+ // The configuration used for Asset Discovery runs.
+ message AssetDiscoveryConfig {
+ // The mode of inclusion when running Asset Discovery.
+ // Asset discovery can be limited by explicitly identifying projects to be
+ // included or excluded. If INCLUDE_ONLY is set, then only those projects
+ // within the organization and their children are discovered during asset
+ // discovery. If EXCLUDE is set, then projects that don't match those
+ // projects are discovered during asset discovery. If neither are set, then
+ // all projects within the organization are discovered during asset
+ // discovery.
+ enum InclusionMode {
+ // Unspecified. Setting the mode with this value will disable
+ // inclusion/exclusion filtering for Asset Discovery.
+ INCLUSION_MODE_UNSPECIFIED = 0;
+
+ // Asset Discovery will capture only the resources within the projects
+ // specified. All other resources will be ignored.
+ INCLUDE_ONLY = 1;
+
+ // Asset Discovery will ignore all resources under the projects specified.
+ // All other resources will be retrieved.
+ EXCLUDE = 2;
+ }
+
+ // The project ids to use for filtering asset discovery.
+ repeated string project_ids = 1;
+
+ // The mode to use for filtering asset discovery.
+ InclusionMode inclusion_mode = 2;
+
+ // The folder ids to use for filtering asset discovery.
+ // It consists of only digits, e.g., 756619654966.
+ repeated string folder_ids = 3;
+ }
+
+ // The relative resource name of the settings. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/organizationSettings".
+ string name = 1;
+
+ // A flag that indicates if Asset Discovery should be enabled. If the flag is
+ // set to `true`, then discovery of assets will occur. If it is set to `false,
+ // all historical assets will remain, but discovery of future assets will not
+ // occur.
+ bool enable_asset_discovery = 2;
+
+ // The configuration used for Asset Discovery runs.
+ AssetDiscoveryConfig asset_discovery_config = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/process.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/process.proto
new file mode 100644
index 00000000000..480714be47d
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/process.proto
@@ -0,0 +1,74 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/cloud/securitycenter/v1/file.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ProcessProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Represents an operating system process.
+message Process {
+ // The process name visible in utilities like `top` and `ps`; it can
+ // be accessed via `/proc/[pid]/comm` and changed with `prctl(PR_SET_NAME)`.
+ string name = 12;
+
+ // File information for the process executable.
+ File binary = 3;
+
+ // File information for libraries loaded by the process.
+ repeated File libraries = 4;
+
+ // When the process represents the invocation of a script,
+ // `binary` provides information about the interpreter while `script`
+ // provides information about the script file provided to the
+ // interpreter.
+ File script = 5;
+
+ // Process arguments as JSON encoded strings.
+ repeated string args = 6;
+
+ // True if `args` is incomplete.
+ bool arguments_truncated = 7;
+
+ // Process environment variables.
+ repeated EnvironmentVariable env_variables = 8;
+
+ // True if `env_variables` is incomplete.
+ bool env_variables_truncated = 9;
+
+ // The process id.
+ int64 pid = 10;
+
+ // The parent process id.
+ int64 parent_pid = 11;
+}
+
+// EnvironmentVariable is a name-value pair to store environment variables for
+// Process.
+message EnvironmentVariable {
+ // Environment variable name as a JSON encoded string.
+ string name = 1;
+
+ // Environment variable value as a JSON encoded string.
+ string val = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/resource.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/resource.proto
new file mode 100644
index 00000000000..ab241d8bf3f
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/resource.proto
@@ -0,0 +1,58 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/field_behavior.proto";
+import "google/cloud/securitycenter/v1/folder.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ResourceProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Information related to the Google Cloud resource.
+message Resource {
+ // The full resource name of the resource. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string name = 1;
+
+ // The human readable name of the resource.
+ string display_name = 8;
+
+ // The full resource type of the resource.
+ string type = 6;
+
+ // The full resource name of project that the resource belongs to.
+ string project = 2;
+
+ // The project ID that the resource belongs to.
+ string project_display_name = 3;
+
+ // The full resource name of resource's parent.
+ string parent = 4;
+
+ // The human readable name of resource's parent.
+ string parent_display_name = 5;
+
+ // Output only. Contains a Folder message for each folder in the assets ancestry.
+ // The first folder is the deepest nested folder, and the last folder is the
+ // folder directly under the Organization.
+ repeated Folder folders = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/run_asset_discovery_response.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/run_asset_discovery_response.proto
new file mode 100644
index 00000000000..70088c06a64
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/run_asset_discovery_response.proto
@@ -0,0 +1,51 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/protobuf/duration.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Response of asset discovery run
+message RunAssetDiscoveryResponse {
+ // The state of an asset discovery run.
+ enum State {
+ // Asset discovery run state was unspecified.
+ STATE_UNSPECIFIED = 0;
+
+ // Asset discovery run completed successfully.
+ COMPLETED = 1;
+
+ // Asset discovery run was cancelled with tasks still pending, as another
+ // run for the same organization was started with a higher priority.
+ SUPERSEDED = 2;
+
+ // Asset discovery run was killed and terminated.
+ TERMINATED = 3;
+ }
+
+ // The state of an asset discovery run.
+ State state = 1;
+
+ // The duration between asset discovery run start and end
+ google.protobuf.Duration duration = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/security_marks.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/security_marks.proto
new file mode 100644
index 00000000000..15c9769f226
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/security_marks.proto
@@ -0,0 +1,69 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// User specified security marks that are attached to the parent Security
+// Command Center resource. Security marks are scoped within a Security Command
+// Center organization -- they can be modified and viewed by all users who have
+// proper permissions on the organization.
+message SecurityMarks {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/SecurityMarks"
+ pattern: "organizations/{organization}/assets/{asset}/securityMarks"
+ pattern: "organizations/{organization}/sources/{source}/findings/{finding}/securityMarks"
+ pattern: "folders/{folder}/assets/{asset}/securityMarks"
+ pattern: "projects/{project}/assets/{asset}/securityMarks"
+ pattern: "folders/{folder}/sources/{source}/findings/{finding}/securityMarks"
+ pattern: "projects/{project}/sources/{source}/findings/{finding}/securityMarks"
+ };
+
+ // The relative resource name of the SecurityMarks. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Examples:
+ // "organizations/{organization_id}/assets/{asset_id}/securityMarks"
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks".
+ string name = 1;
+
+ // Mutable user specified security marks belonging to the parent resource.
+ // Constraints are as follows:
+ //
+ // * Keys and values are treated as case insensitive
+ // * Keys must be between 1 - 256 characters (inclusive)
+ // * Keys must be letters, numbers, underscores, or dashes
+ // * Values have leading and trailing whitespace trimmed, remaining
+ // characters must be between 1 - 4096 characters (inclusive)
+ map marks = 2;
+
+ // The canonical name of the marks.
+ // Examples:
+ // "organizations/{organization_id}/assets/{asset_id}/securityMarks"
+ // "folders/{folder_id}/assets/{asset_id}/securityMarks"
+ // "projects/{project_number}/assets/{asset_id}/securityMarks"
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks"
+ // "folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks"
+ // "projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks"
+ string canonical_name = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/securitycenter_service.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/securitycenter_service.proto
new file mode 100644
index 00000000000..24e5e27e610
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/securitycenter_service.proto
@@ -0,0 +1,1880 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import public "google/cloud/securitycenter/v1/run_asset_discovery_response.proto";
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1/asset.proto";
+import "google/cloud/securitycenter/v1/bigquery_export.proto";
+import "google/cloud/securitycenter/v1/external_system.proto";
+import "google/cloud/securitycenter/v1/finding.proto";
+import "google/cloud/securitycenter/v1/folder.proto";
+import "google/cloud/securitycenter/v1/mute_config.proto";
+import "google/cloud/securitycenter/v1/notification_config.proto";
+import "google/cloud/securitycenter/v1/organization_settings.proto";
+import "google/cloud/securitycenter/v1/security_marks.proto";
+import "google/cloud/securitycenter/v1/source.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/duration.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// V1 APIs for Security Center service.
+service SecurityCenter {
+ option (google.api.default_host) = "securitycenter.googleapis.com";
+ option (google.api.oauth_scopes) =
+ "https://www.googleapis.com/auth/cloud-platform";
+
+ // Kicks off an LRO to bulk mute findings for a parent based on a filter. The
+ // parent can be either an organization, folder or project. The findings
+ // matched by the filter will be muted after the LRO is done.
+ rpc BulkMuteFindings(BulkMuteFindingsRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/findings:bulkMute"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{parent=folders/*}/findings:bulkMute"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/findings:bulkMute"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "parent";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.cloud.securitycenter.v1.BulkMuteFindingsResponse"
+ metadata_type: "google.protobuf.Empty"
+ };
+ }
+
+ // Creates a source.
+ rpc CreateSource(CreateSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/sources"
+ body: "source"
+ };
+ option (google.api.method_signature) = "parent,source";
+ }
+
+ // Creates a finding. The corresponding source must exist for finding creation
+ // to succeed.
+ rpc CreateFinding(CreateFindingRequest) returns (Finding) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*/sources/*}/findings"
+ body: "finding"
+ };
+ option (google.api.method_signature) = "parent,finding_id,finding";
+ }
+
+ // Creates a mute config.
+ rpc CreateMuteConfig(CreateMuteConfigRequest) returns (MuteConfig) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/muteConfigs"
+ body: "mute_config"
+ additional_bindings {
+ post: "/v1/{parent=folders/*}/muteConfigs"
+ body: "mute_config"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/muteConfigs"
+ body: "mute_config"
+ }
+ };
+ option (google.api.method_signature) = "parent,mute_config";
+ option (google.api.method_signature) = "parent,mute_config,mute_config_id";
+ }
+
+ // Creates a notification config.
+ rpc CreateNotificationConfig(CreateNotificationConfigRequest)
+ returns (NotificationConfig) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/notificationConfigs"
+ body: "notification_config"
+ additional_bindings {
+ post: "/v1/{parent=folders/*}/notificationConfigs"
+ body: "notification_config"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/notificationConfigs"
+ body: "notification_config"
+ }
+ };
+ option (google.api.method_signature) =
+ "parent,config_id,notification_config";
+ option (google.api.method_signature) = "parent,notification_config";
+ }
+
+ // Deletes an existing mute config.
+ rpc DeleteMuteConfig(DeleteMuteConfigRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=organizations/*/muteConfigs/*}"
+ additional_bindings { delete: "/v1/{name=folders/*/muteConfigs/*}" }
+ additional_bindings { delete: "/v1/{name=projects/*/muteConfigs/*}" }
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Deletes a notification config.
+ rpc DeleteNotificationConfig(DeleteNotificationConfigRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=organizations/*/notificationConfigs/*}"
+ additional_bindings {
+ delete: "/v1/{name=folders/*/notificationConfigs/*}"
+ }
+ additional_bindings {
+ delete: "/v1/{name=projects/*/notificationConfigs/*}"
+ }
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets a big query export.
+ rpc GetBigQueryExport(GetBigQueryExportRequest) returns (BigQueryExport) {
+ option (google.api.http) = {
+ get: "/v1/{name=organizations/*/bigQueryExports/*}"
+ additional_bindings { get: "/v1/{name=folders/*/bigQueryExports/*}" }
+ additional_bindings { get: "/v1/{name=projects/*/bigQueryExports/*}" }
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets the access control policy on the specified Source.
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest)
+ returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=organizations/*/sources/*}:getIamPolicy"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource";
+ }
+
+ // Gets a mute config.
+ rpc GetMuteConfig(GetMuteConfigRequest) returns (MuteConfig) {
+ option (google.api.http) = {
+ get: "/v1/{name=organizations/*/muteConfigs/*}"
+ additional_bindings { get: "/v1/{name=folders/*/muteConfigs/*}" }
+ additional_bindings { get: "/v1/{name=projects/*/muteConfigs/*}" }
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets a notification config.
+ rpc GetNotificationConfig(GetNotificationConfigRequest)
+ returns (NotificationConfig) {
+ option (google.api.http) = {
+ get: "/v1/{name=organizations/*/notificationConfigs/*}"
+ additional_bindings { get: "/v1/{name=folders/*/notificationConfigs/*}" }
+ additional_bindings { get: "/v1/{name=projects/*/notificationConfigs/*}" }
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets the settings for an organization.
+ rpc GetOrganizationSettings(GetOrganizationSettingsRequest)
+ returns (OrganizationSettings) {
+ option (google.api.http) = {
+ get: "/v1/{name=organizations/*/organizationSettings}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets a source.
+ rpc GetSource(GetSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ get: "/v1/{name=organizations/*/sources/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Filters an organization's assets and groups them by their specified
+ // properties.
+ rpc GroupAssets(GroupAssetsRequest) returns (GroupAssetsResponse) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/assets:group"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{parent=folders/*}/assets:group"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/assets:group"
+ body: "*"
+ }
+ };
+ }
+
+ // Filters an organization or source's findings and groups them by their
+ // specified properties.
+ //
+ // To group across all sources provide a `-` as the source id.
+ // Example: /v1/organizations/{organization_id}/sources/-/findings,
+ // /v1/folders/{folder_id}/sources/-/findings,
+ // /v1/projects/{project_id}/sources/-/findings
+ rpc GroupFindings(GroupFindingsRequest) returns (GroupFindingsResponse) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*/sources/*}/findings:group"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{parent=folders/*/sources/*}/findings:group"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*/sources/*}/findings:group"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "parent,group_by";
+ }
+
+ // Lists an organization's assets.
+ rpc ListAssets(ListAssetsRequest) returns (ListAssetsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=organizations/*}/assets"
+ additional_bindings { get: "/v1/{parent=folders/*}/assets" }
+ additional_bindings { get: "/v1/{parent=projects/*}/assets" }
+ };
+ }
+
+ // Lists an organization or source's findings.
+ //
+ // To list across all sources provide a `-` as the source id.
+ // Example: /v1/organizations/{organization_id}/sources/-/findings
+ rpc ListFindings(ListFindingsRequest) returns (ListFindingsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=organizations/*/sources/*}/findings"
+ additional_bindings { get: "/v1/{parent=folders/*/sources/*}/findings" }
+ additional_bindings { get: "/v1/{parent=projects/*/sources/*}/findings" }
+ };
+ }
+
+ // Lists mute configs.
+ rpc ListMuteConfigs(ListMuteConfigsRequest)
+ returns (ListMuteConfigsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=organizations/*}/muteConfigs"
+ additional_bindings { get: "/v1/{parent=folders/*}/muteConfigs" }
+ additional_bindings { get: "/v1/{parent=projects/*}/muteConfigs" }
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Lists notification configs.
+ rpc ListNotificationConfigs(ListNotificationConfigsRequest)
+ returns (ListNotificationConfigsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=organizations/*}/notificationConfigs"
+ additional_bindings { get: "/v1/{parent=folders/*}/notificationConfigs" }
+ additional_bindings { get: "/v1/{parent=projects/*}/notificationConfigs" }
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Lists all sources belonging to an organization.
+ rpc ListSources(ListSourcesRequest) returns (ListSourcesResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=organizations/*}/sources"
+ additional_bindings { get: "/v1/{parent=folders/*}/sources" }
+ additional_bindings { get: "/v1/{parent=projects/*}/sources" }
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Runs asset discovery. The discovery is tracked with a long-running
+ // operation.
+ //
+ // This API can only be called with limited frequency for an organization. If
+ // it is called too frequently the caller will receive a TOO_MANY_REQUESTS
+ // error.
+ rpc RunAssetDiscovery(RunAssetDiscoveryRequest)
+ returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/assets:runDiscovery"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.cloud.securitycenter.v1.RunAssetDiscoveryResponse"
+ metadata_type: "google.protobuf.Empty"
+ };
+ }
+
+ // Updates the state of a finding.
+ rpc SetFindingState(SetFindingStateRequest) returns (Finding) {
+ option (google.api.http) = {
+ post: "/v1/{name=organizations/*/sources/*/findings/*}:setState"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{name=folders/*/sources/*/findings/*}:setState"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{name=projects/*/sources/*/findings/*}:setState"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "name,state,start_time";
+ }
+
+ // Updates the mute state of a finding.
+ rpc SetMute(SetMuteRequest) returns (Finding) {
+ option (google.api.http) = {
+ post: "/v1/{name=organizations/*/sources/*/findings/*}:setMute"
+ body: "*"
+ additional_bindings {
+ post: "/v1/{name=folders/*/sources/*/findings/*}:setMute"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1/{name=projects/*/sources/*/findings/*}:setMute"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "name,mute";
+ }
+
+ // Sets the access control policy on the specified Source.
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest)
+ returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1/{resource=organizations/*/sources/*}:setIamPolicy"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource,policy";
+ }
+
+ // Returns the permissions that a caller has on the specified source.
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest)
+ returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1/{resource=organizations/*/sources/*}:testIamPermissions"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource,permissions";
+ }
+
+ // Updates external system. This is for a given finding.
+ rpc UpdateExternalSystem(UpdateExternalSystemRequest)
+ returns (ExternalSystem) {
+ option (google.api.http) = {
+ patch: "/v1/{external_system.name=organizations/*/sources/*/findings/*/externalSystems/*}"
+ body: "external_system"
+ additional_bindings {
+ patch: "/v1/{external_system.name=folders/*/sources/*/findings/*/externalSystems/*}"
+ body: "external_system"
+ }
+ additional_bindings {
+ patch: "/v1/{external_system.name=projects/*/sources/*/findings/*/externalSystems/*}"
+ body: "external_system"
+ }
+ };
+ option (google.api.method_signature) = "external_system,update_mask";
+ }
+
+ // Creates or updates a finding. The corresponding source must exist for a
+ // finding creation to succeed.
+ rpc UpdateFinding(UpdateFindingRequest) returns (Finding) {
+ option (google.api.http) = {
+ patch: "/v1/{finding.name=organizations/*/sources/*/findings/*}"
+ body: "finding"
+ additional_bindings {
+ patch: "/v1/{finding.name=folders/*/sources/*/findings/*}"
+ body: "finding"
+ }
+ additional_bindings {
+ patch: "/v1/{finding.name=projects/*/sources/*/findings/*}"
+ body: "finding"
+ }
+ };
+ option (google.api.method_signature) = "finding";
+ }
+
+ // Updates a mute config.
+ rpc UpdateMuteConfig(UpdateMuteConfigRequest) returns (MuteConfig) {
+ option (google.api.http) = {
+ patch: "/v1/{mute_config.name=organizations/*/muteConfigs/*}"
+ body: "mute_config"
+ additional_bindings {
+ patch: "/v1/{mute_config.name=folders/*/muteConfigs/*}"
+ body: "mute_config"
+ }
+ additional_bindings {
+ patch: "/v1/{mute_config.name=projects/*/muteConfigs/*}"
+ body: "mute_config"
+ }
+ };
+ option (google.api.method_signature) = "mute_config,update_mask";
+ }
+
+ //
+ // Updates a notification config. The following update
+ // fields are allowed: description, pubsub_topic, streaming_config.filter
+ rpc UpdateNotificationConfig(UpdateNotificationConfigRequest)
+ returns (NotificationConfig) {
+ option (google.api.http) = {
+ patch: "/v1/{notification_config.name=organizations/*/notificationConfigs/*}"
+ body: "notification_config"
+ additional_bindings {
+ patch: "/v1/{notification_config.name=folders/*/notificationConfigs/*}"
+ body: "notification_config"
+ }
+ additional_bindings {
+ patch: "/v1/{notification_config.name=projects/*/notificationConfigs/*}"
+ body: "notification_config"
+ }
+ };
+ option (google.api.method_signature) = "notification_config";
+ option (google.api.method_signature) = "notification_config,update_mask";
+ }
+
+ // Updates an organization's settings.
+ rpc UpdateOrganizationSettings(UpdateOrganizationSettingsRequest)
+ returns (OrganizationSettings) {
+ option (google.api.http) = {
+ patch: "/v1/{organization_settings.name=organizations/*/organizationSettings}"
+ body: "organization_settings"
+ };
+ option (google.api.method_signature) = "organization_settings";
+ }
+
+ // Updates a source.
+ rpc UpdateSource(UpdateSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ patch: "/v1/{source.name=organizations/*/sources/*}"
+ body: "source"
+ };
+ option (google.api.method_signature) = "source";
+ }
+
+ // Updates security marks.
+ rpc UpdateSecurityMarks(UpdateSecurityMarksRequest) returns (SecurityMarks) {
+ option (google.api.http) = {
+ patch: "/v1/{security_marks.name=organizations/*/assets/*/securityMarks}"
+ body: "security_marks"
+ additional_bindings {
+ patch: "/v1/{security_marks.name=folders/*/assets/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1/{security_marks.name=projects/*/assets/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1/{security_marks.name=folders/*/sources/*/findings/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1/{security_marks.name=projects/*/sources/*/findings/*/securityMarks}"
+ body: "security_marks"
+ }
+ };
+ option (google.api.method_signature) = "security_marks";
+ }
+
+ // Creates a big query export.
+ rpc CreateBigQueryExport(CreateBigQueryExportRequest)
+ returns (BigQueryExport) {
+ option (google.api.http) = {
+ post: "/v1/{parent=organizations/*}/bigQueryExports"
+ body: "big_query_export"
+ additional_bindings {
+ post: "/v1/{parent=folders/*}/bigQueryExports"
+ body: "big_query_export"
+ }
+ additional_bindings {
+ post: "/v1/{parent=projects/*}/bigQueryExports"
+ body: "big_query_export"
+ }
+ };
+ option (google.api.method_signature) =
+ "parent,big_query_export,big_query_export_id";
+ }
+
+ // Deletes an existing big query export.
+ rpc DeleteBigQueryExport(DeleteBigQueryExportRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=organizations/*/bigQueryExports/*}"
+ additional_bindings { delete: "/v1/{name=folders/*/bigQueryExports/*}" }
+ additional_bindings { delete: "/v1/{name=projects/*/bigQueryExports/*}" }
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Updates a BigQuery export.
+ rpc UpdateBigQueryExport(UpdateBigQueryExportRequest)
+ returns (BigQueryExport) {
+ option (google.api.http) = {
+ patch: "/v1/{big_query_export.name=organizations/*/bigQueryExports/*}"
+ body: "big_query_export"
+ additional_bindings {
+ patch: "/v1/{big_query_export.name=folders/*/bigQueryExports/*}"
+ body: "big_query_export"
+ }
+ additional_bindings {
+ patch: "/v1/{big_query_export.name=projects/*/bigQueryExports/*}"
+ body: "big_query_export"
+ }
+ };
+ option (google.api.method_signature) = "big_query_export,update_mask";
+ }
+
+ // Lists BigQuery exports. Note that when requesting BigQuery exports at a
+ // given level all exports under that level are also returned e.g. if
+ // requesting BigQuery exports under a folder, then all BigQuery exports
+ // immediately under the folder plus the ones created under the projects
+ // within the folder are returned.
+ rpc ListBigQueryExports(ListBigQueryExportsRequest)
+ returns (ListBigQueryExportsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=organizations/*}/bigQueryExports"
+ additional_bindings { get: "/v1/{parent=folders/*}/bigQueryExports" }
+ additional_bindings { get: "/v1/{parent=projects/*}/bigQueryExports" }
+ };
+ option (google.api.method_signature) = "parent";
+ }
+}
+
+// Request message for bulk findings update.
+//
+// Note:
+// 1. If multiple bulk update requests match the same resource, the order in
+// which they get executed is not defined.
+// 2. Once a bulk operation is started, there is no way to stop it.
+message BulkMuteFindingsRequest {
+ // Required. The parent, at which bulk action needs to be applied. Its format
+ // is "organizations/[organization_id]", "folders/[folder_id]",
+ // "projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "*" }
+ ];
+
+ // Expression that identifies findings that should be updated.
+ // The expression is a list of zero or more restrictions combined
+ // via logical operators `AND` and `OR`. Parentheses are supported, and `OR`
+ // has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a
+ // `-` character in front of them to indicate negation. The fields map to
+ // those defined in the corresponding resource.
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ string filter = 2;
+
+ // This can be a mute configuration name or any identifier for mute/unmute
+ // of findings based on the filter.
+ string mute_annotation = 3 [deprecated = true];
+}
+
+// The response to a BulkMute request. Contains the LRO information.
+message BulkMuteFindingsResponse {}
+
+// Request message for creating a finding.
+message CreateFindingRequest {
+ // Required. Resource name of the new finding's parent. Its format should be
+ // "organizations/[organization_id]/sources/[source_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Required. Unique identifier provided by the client within the parent scope.
+ // It must be alphanumeric and less than or equal to 32 characters and
+ // greater than 0 characters in length.
+ string finding_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The Finding being created. The name and security_marks will be
+ // ignored as they are both output only fields on this resource.
+ Finding finding = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for creating a mute config.
+message CreateMuteConfigRequest {
+ // Required. Resource name of the new mute configs's parent. Its format is
+ // "organizations/[organization_id]", "folders/[folder_id]", or
+ // "projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/MuteConfig"
+ }
+ ];
+
+ // Required. The mute config being created.
+ MuteConfig mute_config = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Unique identifier provided by the client within the parent scope.
+ // It must consist of lower case letters, numbers, and hyphen, with the first
+ // character a letter, the last a letter or a number, and a 63 character
+ // maximum.
+ string mute_config_id = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for creating a notification config.
+message CreateNotificationConfigRequest {
+ // Required. Resource name of the new notification config's parent. Its format
+ // is "organizations/[organization_id]", "folders/[folder_id]", or
+ // "projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/NotificationConfig"
+ }
+ ];
+
+ // Required.
+ // Unique identifier provided by the client within the parent scope.
+ // It must be between 1 and 128 characters, and contains alphanumeric
+ // characters, underscores or hyphens only.
+ string config_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The notification config being created. The name and the service
+ // account will be ignored as they are both output only fields on this
+ // resource.
+ NotificationConfig notification_config = 3
+ [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for creating a source.
+message CreateSourceRequest {
+ // Required. Resource name of the new source's parent. Its format should be
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Required. The Source being created, only the display_name and description
+ // will be used. All other fields will be ignored.
+ Source source = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for deleting a mute config.
+message DeleteMuteConfigRequest {
+ // Required. Name of the mute config to delete. Its format is
+ // organizations/{organization}/muteConfigs/{config_id},
+ // folders/{folder}/muteConfigs/{config_id}, or
+ // projects/{project}/muteConfigs/{config_id}
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/MuteConfig"
+ }
+ ];
+}
+
+// Request message for deleting a notification config.
+message DeleteNotificationConfigRequest {
+ // Required. Name of the notification config to delete. Its format is
+ // "organizations/[organization_id]/notificationConfigs/[config_id]".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/NotificationConfig"
+ }
+ ];
+}
+
+// Request message for retrieving a big query export.
+message GetBigQueryExportRequest {
+ // Required. Name of the big query export to retrieve. Its format is
+ // organizations/{organization}/bigQueryExports/{export_id},
+ // folders/{folder}/bigQueryExports/{export_id}, or
+ // projects/{project}/bigQueryExports/{export_id}
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/BigQueryExport"
+ }
+ ];
+}
+
+// Request message for retrieving a mute config.
+message GetMuteConfigRequest {
+ // Required. Name of the mute config to retrieve. Its format is
+ // organizations/{organization}/muteConfigs/{config_id},
+ // folders/{folder}/muteConfigs/{config_id}, or
+ // projects/{project}/muteConfigs/{config_id}
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/MuteConfig"
+ }
+ ];
+}
+
+// Request message for getting a notification config.
+message GetNotificationConfigRequest {
+ // Required. Name of the notification config to get. Its format is
+ // "organizations/[organization_id]/notificationConfigs/[config_id]".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/NotificationConfig"
+ }
+ ];
+}
+
+// Request message for getting organization settings.
+message GetOrganizationSettingsRequest {
+ // Required. Name of the organization to get organization settings for. Its
+ // format is "organizations/[organization_id]/organizationSettings".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/OrganizationSettings"
+ }
+ ];
+}
+
+// Request message for getting a source.
+message GetSourceRequest {
+ // Required. Relative resource name of the source. Its format is
+ // "organizations/[organization_id]/source/[source_id]".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+}
+
+// Request message for grouping by assets.
+message GroupAssetsRequest {
+ // Required. Name of the organization to groupBy. Its format is
+ // "organizations/[organization_id], folders/[folder_id], or
+ // projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/Asset"
+ }
+ ];
+
+ // Expression that defines the filter to apply across assets.
+ // The expression is a list of zero or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. The fields map to those
+ // defined in the Asset resource. Examples include:
+ //
+ // * name
+ // * security_center_properties.resource_name
+ // * resource_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following field and operator combinations are supported:
+ //
+ // * name: `=`
+ // * update_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `update_time = "2019-06-10T16:07:18-07:00"`
+ // `update_time = 1560208038000`
+ //
+ // * create_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `create_time = "2019-06-10T16:07:18-07:00"`
+ // `create_time = 1560208038000`
+ //
+ // * iam_policy.policy_blob: `=`, `:`
+ // * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ // * security_marks.marks: `=`, `:`
+ // * security_center_properties.resource_name: `=`, `:`
+ // * security_center_properties.resource_display_name: `=`, `:`
+ // * security_center_properties.resource_type: `=`, `:`
+ // * security_center_properties.resource_parent: `=`, `:`
+ // * security_center_properties.resource_parent_display_name: `=`, `:`
+ // * security_center_properties.resource_project: `=`, `:`
+ // * security_center_properties.resource_project_display_name: `=`, `:`
+ // * security_center_properties.resource_owners: `=`, `:`
+ //
+ // For example, `resource_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `resource_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-resource_properties.my_property : ""`
+ string filter = 2;
+
+ // Required. Expression that defines what assets fields to use for grouping.
+ // The string value should follow SQL syntax: comma separated list of fields.
+ // For example:
+ // "security_center_properties.resource_project,security_center_properties.project".
+ //
+ // The following fields are supported when compare_duration is not set:
+ //
+ // * security_center_properties.resource_project
+ // * security_center_properties.resource_project_display_name
+ // * security_center_properties.resource_type
+ // * security_center_properties.resource_parent
+ // * security_center_properties.resource_parent_display_name
+ //
+ // The following fields are supported when compare_duration is set:
+ //
+ // * security_center_properties.resource_type
+ // * security_center_properties.resource_project_display_name
+ // * security_center_properties.resource_parent_display_name
+ string group_by = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // When compare_duration is set, the GroupResult's "state_change" property is
+ // updated to indicate whether the asset was added, removed, or remained
+ // present during the compare_duration period of time that precedes the
+ // read_time. This is the time between (read_time - compare_duration) and
+ // read_time.
+ //
+ // The state change value is derived based on the presence of the asset at the
+ // two points in time. Intermediate state changes between the two times don't
+ // affect the result. For example, the results aren't affected if the asset is
+ // removed and re-created again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "ADDED": indicates that the asset was not present at the start of
+ // compare_duration, but present at reference_time.
+ // * "REMOVED": indicates that the asset was present at the start of
+ // compare_duration, but not present at reference_time.
+ // * "ACTIVE": indicates that the asset was present at both the
+ // start and the end of the time period defined by
+ // compare_duration and reference_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all assets present at
+ // read_time.
+ //
+ // If this field is set then `state_change` must be a specified field in
+ // `group_by`.
+ google.protobuf.Duration compare_duration = 4;
+
+ // Time used as a reference point when filtering assets. The filter is limited
+ // to assets existing at the supplied time and their values are those at that
+ // specific time. Absence of this field will default to the API's version of
+ // NOW.
+ google.protobuf.Timestamp read_time = 5;
+
+ // The value returned by the last `GroupAssetsResponse`; indicates
+ // that this is a continuation of a prior `GroupAssets` call, and that the
+ // system should return the next page of data.
+ string page_token = 7;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 8;
+}
+
+// Response message for grouping by assets.
+message GroupAssetsResponse {
+ // Group results. There exists an element for each existing unique
+ // combination of property/values. The element contains a count for the number
+ // of times those specific property/values appear.
+ repeated GroupResult group_by_results = 1;
+
+ // Time used for executing the groupBy request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of results matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for grouping by findings.
+message GroupFindingsRequest {
+ // Required. Name of the source to groupBy. Its format is
+ // "organizations/[organization_id]/sources/[source_id]",
+ // folders/[folder_id]/sources/[source_id], or
+ // projects/[project_id]/sources/[source_id]. To groupBy across all sources
+ // provide a source_id of `-`. For example:
+ // organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-,
+ // or projects/{project_id}/sources/-
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Expression that defines the filter to apply across findings.
+ // The expression is a list of one or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. Examples include:
+ //
+ // * name
+ // * source_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following field and operator combinations are supported:
+ //
+ // * name: `=`
+ // * parent: `=`, `:`
+ // * resource_name: `=`, `:`
+ // * state: `=`, `:`
+ // * category: `=`, `:`
+ // * external_uri: `=`, `:`
+ // * event_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `event_time = "2019-06-10T16:07:18-07:00"`
+ // `event_time = 1560208038000`
+ //
+ // * severity: `=`, `:`
+ // * workflow_state: `=`, `:`
+ // * security_marks.marks: `=`, `:`
+ // * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ //
+ // For example, `source_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `source_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-source_properties.my_property : ""`
+ //
+ // * resource:
+ // * resource.name: `=`, `:`
+ // * resource.parent_name: `=`, `:`
+ // * resource.parent_display_name: `=`, `:`
+ // * resource.project_name: `=`, `:`
+ // * resource.project_display_name: `=`, `:`
+ // * resource.type: `=`, `:`
+ string filter = 2;
+
+ // Required. Expression that defines what assets fields to use for grouping
+ // (including `state_change`). The string value should follow SQL syntax:
+ // comma separated list of fields. For example: "parent,resource_name".
+ //
+ // The following fields are supported:
+ //
+ // * resource_name
+ // * category
+ // * state
+ // * parent
+ // * severity
+ //
+ // The following fields are supported when compare_duration is set:
+ //
+ // * state_change
+ string group_by = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // Time used as a reference point when filtering findings. The filter is
+ // limited to findings existing at the supplied time and their values are
+ // those at that specific time. Absence of this field will default to the
+ // API's version of NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // When compare_duration is set, the GroupResult's "state_change" attribute is
+ // updated to indicate whether the finding had its state changed, the
+ // finding's state remained unchanged, or if the finding was added during the
+ // compare_duration period of time that precedes the read_time. This is the
+ // time between (read_time - compare_duration) and read_time.
+ //
+ // The state_change value is derived based on the presence and state of the
+ // finding at the two points in time. Intermediate state changes between the
+ // two times don't affect the result. For example, the results aren't affected
+ // if the finding is made inactive and then active again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "CHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration, but changed its
+ // state at read_time.
+ // * "UNCHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration and did not change
+ // state at read_time.
+ // * "ADDED": indicates that the finding did not match the given filter or
+ // was not present at the start of compare_duration, but was
+ // present at read_time.
+ // * "REMOVED": indicates that the finding was present and matched the
+ // filter at the start of compare_duration, but did not match
+ // the filter at read_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all findings present
+ // at read_time.
+ //
+ // If this field is set then `state_change` must be a specified field in
+ // `group_by`.
+ google.protobuf.Duration compare_duration = 5;
+
+ // The value returned by the last `GroupFindingsResponse`; indicates
+ // that this is a continuation of a prior `GroupFindings` call, and
+ // that the system should return the next page of data.
+ string page_token = 7;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 8;
+}
+
+// Response message for group by findings.
+message GroupFindingsResponse {
+ // Group results. There exists an element for each existing unique
+ // combination of property/values. The element contains a count for the number
+ // of times those specific property/values appear.
+ repeated GroupResult group_by_results = 1;
+
+ // Time used for executing the groupBy request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of results matching the query.
+ int32 total_size = 4;
+}
+
+// Result containing the properties and count of a groupBy request.
+message GroupResult {
+ // Properties matching the groupBy fields in the request.
+ map properties = 1;
+
+ // Total count of resources for the given properties.
+ int64 count = 2;
+}
+
+// Request message for listing mute configs at a given scope e.g. organization,
+// folder or project.
+message ListMuteConfigsRequest {
+ // Required. The parent, which owns the collection of mute configs. Its format
+ // is "organizations/[organization_id]", "folders/[folder_id]",
+ // "projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/MuteConfig"
+ }
+ ];
+
+ // The maximum number of configs to return. The service may return fewer than
+ // this value.
+ // If unspecified, at most 10 configs will be returned.
+ // The maximum value is 1000; values above 1000 will be coerced to 1000.
+ int32 page_size = 2;
+
+ // A page token, received from a previous `ListMuteConfigs` call.
+ // Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to `ListMuteConfigs` must
+ // match the call that provided the page token.
+ string page_token = 3;
+}
+
+// Response message for listing mute configs.
+message ListMuteConfigsResponse {
+ // The mute configs from the specified parent.
+ repeated MuteConfig mute_configs = 1;
+
+ // A token, which can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ string next_page_token = 2;
+}
+
+// Request message for listing notification configs.
+message ListNotificationConfigsRequest {
+ // Required. Name of the organization to list notification configs. Its format
+ // is "organizations/[organization_id]", "folders/[folder_id]", or
+ // "projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/NotificationConfig"
+ }
+ ];
+
+ // The value returned by the last `ListNotificationConfigsResponse`; indicates
+ // that this is a continuation of a prior `ListNotificationConfigs` call, and
+ // that the system should return the next page of data.
+ string page_token = 2;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 3;
+}
+
+// Response message for listing notification configs.
+message ListNotificationConfigsResponse {
+ // Notification configs belonging to the requested parent.
+ repeated NotificationConfig notification_configs = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request message for listing sources.
+message ListSourcesRequest {
+ // Required. Resource name of the parent of sources to list. Its format should
+ // be "organizations/[organization_id], folders/[folder_id], or
+ // projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // The value returned by the last `ListSourcesResponse`; indicates
+ // that this is a continuation of a prior `ListSources` call, and
+ // that the system should return the next page of data.
+ string page_token = 2;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 7;
+}
+
+// Response message for listing sources.
+message ListSourcesResponse {
+ // Sources belonging to the requested parent.
+ repeated Source sources = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request message for listing assets.
+message ListAssetsRequest {
+ // Required. Name of the organization assets should belong to. Its format is
+ // "organizations/[organization_id], folders/[folder_id], or
+ // projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/Asset"
+ }
+ ];
+
+ // Expression that defines the filter to apply across assets.
+ // The expression is a list of zero or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. The fields map to those
+ // defined in the Asset resource. Examples include:
+ //
+ // * name
+ // * security_center_properties.resource_name
+ // * resource_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following are the allowed field and operator combinations:
+ //
+ // * name: `=`
+ // * update_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `update_time = "2019-06-10T16:07:18-07:00"`
+ // `update_time = 1560208038000`
+ //
+ // * create_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `create_time = "2019-06-10T16:07:18-07:00"`
+ // `create_time = 1560208038000`
+ //
+ // * iam_policy.policy_blob: `=`, `:`
+ // * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ // * security_marks.marks: `=`, `:`
+ // * security_center_properties.resource_name: `=`, `:`
+ // * security_center_properties.resource_display_name: `=`, `:`
+ // * security_center_properties.resource_type: `=`, `:`
+ // * security_center_properties.resource_parent: `=`, `:`
+ // * security_center_properties.resource_parent_display_name: `=`, `:`
+ // * security_center_properties.resource_project: `=`, `:`
+ // * security_center_properties.resource_project_display_name: `=`, `:`
+ // * security_center_properties.resource_owners: `=`, `:`
+ //
+ // For example, `resource_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `resource_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-resource_properties.my_property : ""`
+ string filter = 2;
+
+ // Expression that defines what fields and order to use for sorting. The
+ // string value should follow SQL syntax: comma separated list of fields. For
+ // example: "name,resource_properties.a_property". The default sorting order
+ // is ascending. To specify descending order for a field, a suffix " desc"
+ // should be appended to the field name. For example: "name
+ // desc,resource_properties.a_property". Redundant space characters in the
+ // syntax are insignificant. "name desc,resource_properties.a_property" and "
+ // name desc , resource_properties.a_property " are equivalent.
+ //
+ // The following fields are supported:
+ // name
+ // update_time
+ // resource_properties
+ // security_marks.marks
+ // security_center_properties.resource_name
+ // security_center_properties.resource_display_name
+ // security_center_properties.resource_parent
+ // security_center_properties.resource_parent_display_name
+ // security_center_properties.resource_project
+ // security_center_properties.resource_project_display_name
+ // security_center_properties.resource_type
+ string order_by = 3;
+
+ // Time used as a reference point when filtering assets. The filter is limited
+ // to assets existing at the supplied time and their values are those at that
+ // specific time. Absence of this field will default to the API's version of
+ // NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // When compare_duration is set, the ListAssetsResult's "state_change"
+ // attribute is updated to indicate whether the asset was added, removed, or
+ // remained present during the compare_duration period of time that precedes
+ // the read_time. This is the time between (read_time - compare_duration) and
+ // read_time.
+ //
+ // The state_change value is derived based on the presence of the asset at the
+ // two points in time. Intermediate state changes between the two times don't
+ // affect the result. For example, the results aren't affected if the asset is
+ // removed and re-created again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "ADDED": indicates that the asset was not present at the start of
+ // compare_duration, but present at read_time.
+ // * "REMOVED": indicates that the asset was present at the start of
+ // compare_duration, but not present at read_time.
+ // * "ACTIVE": indicates that the asset was present at both the
+ // start and the end of the time period defined by
+ // compare_duration and read_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all assets present at
+ // read_time.
+ google.protobuf.Duration compare_duration = 5;
+
+ // A field mask to specify the ListAssetsResult fields to be listed in the
+ // response.
+ // An empty field mask will list all fields.
+ google.protobuf.FieldMask field_mask = 7;
+
+ // The value returned by the last `ListAssetsResponse`; indicates
+ // that this is a continuation of a prior `ListAssets` call, and
+ // that the system should return the next page of data.
+ string page_token = 8;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 9;
+}
+
+// Response message for listing assets.
+message ListAssetsResponse {
+ // Result containing the Asset and its State.
+ message ListAssetsResult {
+ // The change in state of the asset.
+ //
+ // When querying across two points in time this describes
+ // the change between the two points: ADDED, REMOVED, or ACTIVE.
+ // If there was no compare_duration supplied in the request the state change
+ // will be: UNUSED
+ enum StateChange {
+ // State change is unused, this is the canonical default for this enum.
+ UNUSED = 0;
+
+ // Asset was added between the points in time.
+ ADDED = 1;
+
+ // Asset was removed between the points in time.
+ REMOVED = 2;
+
+ // Asset was present at both point(s) in time.
+ ACTIVE = 3;
+ }
+
+ // Asset matching the search request.
+ Asset asset = 1;
+
+ // State change of the asset between the points in time.
+ StateChange state_change = 2;
+ }
+
+ // Assets matching the list request.
+ repeated ListAssetsResult list_assets_results = 1;
+
+ // Time used for executing the list request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of assets matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for listing findings.
+message ListFindingsRequest {
+ // Required. Name of the source the findings belong to. Its format is
+ // "organizations/[organization_id]/sources/[source_id],
+ // folders/[folder_id]/sources/[source_id], or
+ // projects/[project_id]/sources/[source_id]". To list across all sources
+ // provide a source_id of `-`. For example:
+ // organizations/{organization_id}/sources/-, folders/{folder_id}/sources/- or
+ // projects/{projects_id}/sources/-
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Expression that defines the filter to apply across findings.
+ // The expression is a list of one or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. Examples include:
+ //
+ // * name
+ // * source_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following field and operator combinations are supported:
+ //
+ // * name: `=`
+ // * parent: `=`, `:`
+ // * resource_name: `=`, `:`
+ // * state: `=`, `:`
+ // * category: `=`, `:`
+ // * external_uri: `=`, `:`
+ // * event_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `event_time = "2019-06-10T16:07:18-07:00"`
+ // `event_time = 1560208038000`
+ //
+ // * severity: `=`, `:`
+ // * workflow_state: `=`, `:`
+ // * security_marks.marks: `=`, `:`
+ // * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ //
+ // For example, `source_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `source_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-source_properties.my_property : ""`
+ //
+ // * resource:
+ // * resource.name: `=`, `:`
+ // * resource.parent_name: `=`, `:`
+ // * resource.parent_display_name: `=`, `:`
+ // * resource.project_name: `=`, `:`
+ // * resource.project_display_name: `=`, `:`
+ // * resource.type: `=`, `:`
+ // * resource.folders.resource_folder: `=`, `:`
+ // * resource.display_name: `=`, `:`
+ string filter = 2;
+
+ // Expression that defines what fields and order to use for sorting. The
+ // string value should follow SQL syntax: comma separated list of fields. For
+ // example: "name,resource_properties.a_property". The default sorting order
+ // is ascending. To specify descending order for a field, a suffix " desc"
+ // should be appended to the field name. For example: "name
+ // desc,source_properties.a_property". Redundant space characters in the
+ // syntax are insignificant. "name desc,source_properties.a_property" and "
+ // name desc , source_properties.a_property " are equivalent.
+ //
+ // The following fields are supported:
+ // name
+ // parent
+ // state
+ // category
+ // resource_name
+ // event_time
+ // source_properties
+ // security_marks.marks
+ string order_by = 3;
+
+ // Time used as a reference point when filtering findings. The filter is
+ // limited to findings existing at the supplied time and their values are
+ // those at that specific time. Absence of this field will default to the
+ // API's version of NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // When compare_duration is set, the ListFindingsResult's "state_change"
+ // attribute is updated to indicate whether the finding had its state changed,
+ // the finding's state remained unchanged, or if the finding was added in any
+ // state during the compare_duration period of time that precedes the
+ // read_time. This is the time between (read_time - compare_duration) and
+ // read_time.
+ //
+ // The state_change value is derived based on the presence and state of the
+ // finding at the two points in time. Intermediate state changes between the
+ // two times don't affect the result. For example, the results aren't affected
+ // if the finding is made inactive and then active again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "CHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration, but changed its
+ // state at read_time.
+ // * "UNCHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration and did not change
+ // state at read_time.
+ // * "ADDED": indicates that the finding did not match the given filter or
+ // was not present at the start of compare_duration, but was
+ // present at read_time.
+ // * "REMOVED": indicates that the finding was present and matched the
+ // filter at the start of compare_duration, but did not match
+ // the filter at read_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all findings present at
+ // read_time.
+ google.protobuf.Duration compare_duration = 5;
+
+ // A field mask to specify the Finding fields to be listed in the response.
+ // An empty field mask will list all fields.
+ google.protobuf.FieldMask field_mask = 7;
+
+ // The value returned by the last `ListFindingsResponse`; indicates
+ // that this is a continuation of a prior `ListFindings` call, and
+ // that the system should return the next page of data.
+ string page_token = 8;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 9;
+}
+
+// Response message for listing findings.
+message ListFindingsResponse {
+ // Result containing the Finding and its StateChange.
+ message ListFindingsResult {
+ // The change in state of the finding.
+ //
+ // When querying across two points in time this describes
+ // the change in the finding between the two points: CHANGED, UNCHANGED,
+ // ADDED, or REMOVED. Findings can not be deleted, so REMOVED implies that
+ // the finding at timestamp does not match the filter specified, but it did
+ // at timestamp - compare_duration. If there was no compare_duration
+ // supplied in the request the state change will be: UNUSED
+ enum StateChange {
+ // State change is unused, this is the canonical default for this enum.
+ UNUSED = 0;
+
+ // The finding has changed state in some way between the points in time
+ // and existed at both points.
+ CHANGED = 1;
+
+ // The finding has not changed state between the points in time and
+ // existed at both points.
+ UNCHANGED = 2;
+
+ // The finding was created between the points in time.
+ ADDED = 3;
+
+ // The finding at timestamp does not match the filter specified, but it
+ // did at timestamp - compare_duration.
+ REMOVED = 4;
+ }
+
+ // Information related to the Google Cloud resource that is
+ // associated with this finding.
+ message Resource {
+ // The full resource name of the resource. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string name = 1;
+
+ // The human readable name of the resource.
+ string display_name = 8;
+
+ // The full resource type of the resource.
+ string type = 6;
+
+ // The full resource name of project that the resource belongs to.
+ string project_name = 2;
+
+ // The project ID that the resource belongs to.
+ string project_display_name = 3;
+
+ // The full resource name of resource's parent.
+ string parent_name = 4;
+
+ // The human readable name of resource's parent.
+ string parent_display_name = 5;
+
+ // Contains a Folder message for each folder in the assets ancestry.
+ // The first folder is the deepest nested folder, and the last folder is
+ // the folder directly under the Organization.
+ repeated Folder folders = 7;
+ }
+
+ // Finding matching the search request.
+ Finding finding = 1;
+
+ // State change of the finding between the points in time.
+ StateChange state_change = 2;
+
+ // Output only. Resource that is associated with this finding.
+ Resource resource = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+ }
+
+ // Findings matching the list request.
+ repeated ListFindingsResult list_findings_results = 1;
+
+ // Time used for executing the list request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of findings matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for updating a finding's state.
+message SetFindingStateRequest {
+ // Required. The relative resource name of the finding. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Finding"
+ }
+ ];
+
+ // Required. The desired State of the finding.
+ Finding.State state = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The time at which the updated state takes effect.
+ google.protobuf.Timestamp start_time = 3
+ [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for updating a finding's mute status.
+message SetMuteRequest {
+ // Required. The relative resource name of the finding. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}",
+ // "folders/{folder_id}/sources/{source_id}/findings/{finding_id}",
+ // "projects/{project_id}/sources/{source_id}/findings/{finding_id}".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Finding"
+ }
+ ];
+
+ // Required. The desired state of the Mute.
+ Finding.Mute mute = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for running asset discovery for an organization.
+message RunAssetDiscoveryRequest {
+ // Required. Name of the organization to run asset discovery for. Its format
+ // is "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+}
+
+// Request message for updating a ExternalSystem resource.
+message UpdateExternalSystemRequest {
+ // Required. The external system resource to update.
+ ExternalSystem external_system = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the external system resource.
+ //
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating or creating a finding.
+message UpdateFindingRequest {
+ // Required. The finding resource to update or create if it does not already
+ // exist. parent, security_marks, and update_time will be ignored.
+ //
+ // In the case of creation, the finding id portion of the name must be
+ // alphanumeric and less than or equal to 32 characters and greater than 0
+ // characters in length.
+ Finding finding = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the finding resource. This field should
+ // not be specified when creating a finding.
+ //
+ // When updating a finding, an empty mask is treated as updating all mutable
+ // fields and replacing source_properties. Individual source_properties can
+ // be added/updated by using "source_properties." in the field
+ // mask.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a mute config.
+message UpdateMuteConfigRequest {
+ // Required. The mute config being updated.
+ MuteConfig mute_config = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The list of fields to be updated.
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a notification config.
+message UpdateNotificationConfigRequest {
+ // Required. The notification config to update.
+ NotificationConfig notification_config = 1
+ [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the notification config.
+ //
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating an organization's settings.
+message UpdateOrganizationSettingsRequest {
+ // Required. The organization settings resource to update.
+ OrganizationSettings organization_settings = 1
+ [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the settings resource.
+ //
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a source.
+message UpdateSourceRequest {
+ // Required. The source resource to update.
+ Source source = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the source resource.
+ //
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a SecurityMarks resource.
+message UpdateSecurityMarksRequest {
+ // Required. The security marks resource to update.
+ SecurityMarks security_marks = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the security marks resource.
+ //
+ // The field mask must not contain duplicate fields.
+ // If empty or set to "marks", all marks will be replaced. Individual
+ // marks can be updated using "marks.".
+ google.protobuf.FieldMask update_mask = 2;
+
+ // The time at which the updated SecurityMarks take effect.
+ // If not set uses current server time. Updates will be applied to the
+ // SecurityMarks that are active immediately preceding this time. Must be
+ // earlier or equal to the server time.
+ google.protobuf.Timestamp start_time = 3;
+}
+
+// Request message for creating a big query export.
+message CreateBigQueryExportRequest {
+ // Required. Resource name of the new big query export's parent. Its format is
+ // "organizations/[organization_id]", "folders/[folder_id]", or
+ // "projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/BigQueryExport"
+ }
+ ];
+
+ // Required. The big query export being created.
+ BigQueryExport big_query_export = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. Unique identifier provided by the client within the parent scope.
+ // It must consist of lower case letters, numbers, and hyphen, with the first
+ // character a letter, the last a letter or a number, and a 63 character
+ // maximum.
+ string big_query_export_id = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for updating a BigQuery export.
+message UpdateBigQueryExportRequest {
+ // Required. The BigQuery export being updated.
+ BigQueryExport big_query_export = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The list of fields to be updated.
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for listing BigQuery exports at a given scope e.g.
+// organization, folder or project.
+message ListBigQueryExportsRequest {
+ // Required. The parent, which owns the collection of BigQuery exports. Its
+ // format is "organizations/[organization_id]", "folders/[folder_id]",
+ // "projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/BigQueryExport"
+ }
+ ];
+
+ // The maximum number of configs to return. The service may return fewer than
+ // this value.
+ // If unspecified, at most 10 configs will be returned.
+ // The maximum value is 1000; values above 1000 will be coerced to 1000.
+ int32 page_size = 2;
+
+ // A page token, received from a previous `ListBigQueryExports` call.
+ // Provide this to retrieve the subsequent page.
+ // When paginating, all other parameters provided to `ListBigQueryExports`
+ // must match the call that provided the page token.
+ string page_token = 3;
+}
+
+// Response message for listing BigQuery exports.
+message ListBigQueryExportsResponse {
+ // The BigQuery exports from the specified parent.
+ repeated BigQueryExport big_query_exports = 1;
+
+ // A token, which can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ string next_page_token = 2;
+}
+
+// Request message for deleting a big query export.
+message DeleteBigQueryExportRequest {
+ // Required. Name of the big query export to delete. Its format is
+ // organizations/{organization}/bigQueryExports/{export_id},
+ // folders/{folder}/bigQueryExports/{export_id}, or
+ // projects/{project}/bigQueryExports/{export_id}
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/BigQueryExport"
+ }
+ ];
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/source.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/source.proto
new file mode 100644
index 00000000000..75c069a1ccc
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/source.proto
@@ -0,0 +1,69 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Security Command Center finding source. A finding source
+// is an entity or a mechanism that can produce a finding. A source is like a
+// container of findings that come from the same scanner, logger, monitor, and
+// other tools.
+message Source {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Source"
+ pattern: "organizations/{organization}/sources/{source}"
+ pattern: "folders/{folder}/sources/{source}"
+ pattern: "projects/{project}/sources/{source}"
+ };
+
+ // The relative resource name of this source. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}"
+ string name = 1;
+
+ // The source's display name.
+ // A source's display name must be unique amongst its siblings, for example,
+ // two sources with the same parent can't share the same display name.
+ // The display name must have a length between 1 and 64 characters
+ // (inclusive).
+ string display_name = 2;
+
+ // The description of the source (max of 1024 characters).
+ // Example:
+ // "Web Security Scanner is a web security scanner for common
+ // vulnerabilities in App Engine applications. It can automatically
+ // scan and detect four common vulnerabilities, including cross-site-scripting
+ // (XSS), Flash injection, mixed content (HTTP in HTTPS), and
+ // outdated or insecure libraries."
+ string description = 3;
+
+ // The canonical name of the finding. It's either
+ // "organizations/{organization_id}/sources/{source_id}",
+ // "folders/{folder_id}/sources/{source_id}" or
+ // "projects/{project_number}/sources/{source_id}",
+ // depending on the closest CRM ancestor of the resource associated with the
+ // finding.
+ string canonical_name = 14;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/vulnerability.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/vulnerability.proto
new file mode 100644
index 00000000000..3810d90c705
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1/vulnerability.proto
@@ -0,0 +1,216 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1;
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "VulnerabilityProto";
+option java_package = "com.google.cloud.securitycenter.v1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1";
+
+// Refers to common vulnerability fields e.g. cve, cvss, cwe etc.
+message Vulnerability {
+ // CVE stands for Common Vulnerabilities and Exposures
+ // (https://cve.mitre.org/about/)
+ Cve cve = 1;
+}
+
+// CVE stands for Common Vulnerabilities and Exposures.
+// More information: https://cve.mitre.org
+message Cve {
+ // The unique identifier for the vulnerability. e.g. CVE-2021-34527
+ string id = 1;
+
+ // Additional information about the CVE.
+ // e.g. https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527
+ repeated Reference references = 2;
+
+ // Describe Common Vulnerability Scoring System specified at
+ // https://www.first.org/cvss/v3.1/specification-document
+ Cvssv3 cvssv3 = 3;
+
+ // Whether upstream fix is available for the CVE.
+ bool upstream_fix_available = 4;
+}
+
+// Additional Links
+message Reference {
+ // Source of the reference e.g. NVD
+ string source = 1;
+
+ // Uri for the mentioned source e.g.
+ // https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-34527.
+ string uri = 2;
+}
+
+// Common Vulnerability Scoring System version 3.
+message Cvssv3 {
+ // This metric reflects the context by which vulnerability exploitation is
+ // possible.
+ enum AttackVector {
+ // Invalid value.
+ ATTACK_VECTOR_UNSPECIFIED = 0;
+
+ // The vulnerable component is bound to the network stack and the set of
+ // possible attackers extends beyond the other options listed below, up to
+ // and including the entire Internet.
+ ATTACK_VECTOR_NETWORK = 1;
+
+ // The vulnerable component is bound to the network stack, but the attack is
+ // limited at the protocol level to a logically adjacent topology.
+ ATTACK_VECTOR_ADJACENT = 2;
+
+ // The vulnerable component is not bound to the network stack and the
+ // attacker's path is via read/write/execute capabilities.
+ ATTACK_VECTOR_LOCAL = 3;
+
+ // The attack requires the attacker to physically touch or manipulate the
+ // vulnerable component.
+ ATTACK_VECTOR_PHYSICAL = 4;
+ }
+
+ // This metric describes the conditions beyond the attacker's control that
+ // must exist in order to exploit the vulnerability.
+ enum AttackComplexity {
+ // Invalid value.
+ ATTACK_COMPLEXITY_UNSPECIFIED = 0;
+
+ // Specialized access conditions or extenuating circumstances do not exist.
+ // An attacker can expect repeatable success when attacking the vulnerable
+ // component.
+ ATTACK_COMPLEXITY_LOW = 1;
+
+ // A successful attack depends on conditions beyond the attacker's control.
+ // That is, a successful attack cannot be accomplished at will, but requires
+ // the attacker to invest in some measurable amount of effort in preparation
+ // or execution against the vulnerable component before a successful attack
+ // can be expected.
+ ATTACK_COMPLEXITY_HIGH = 2;
+ }
+
+ // This metric describes the level of privileges an attacker must possess
+ // before successfully exploiting the vulnerability.
+ enum PrivilegesRequired {
+ // Invalid value.
+ PRIVILEGES_REQUIRED_UNSPECIFIED = 0;
+
+ // The attacker is unauthorized prior to attack, and therefore does not
+ // require any access to settings or files of the vulnerable system to
+ // carry out an attack.
+ PRIVILEGES_REQUIRED_NONE = 1;
+
+ // The attacker requires privileges that provide basic user capabilities
+ // that could normally affect only settings and files owned by a user.
+ // Alternatively, an attacker with Low privileges has the ability to access
+ // only non-sensitive resources.
+ PRIVILEGES_REQUIRED_LOW = 2;
+
+ // The attacker requires privileges that provide significant (e.g.,
+ // administrative) control over the vulnerable component allowing access to
+ // component-wide settings and files.
+ PRIVILEGES_REQUIRED_HIGH = 3;
+ }
+
+ // This metric captures the requirement for a human user, other than the
+ // attacker, to participate in the successful compromise of the vulnerable
+ // component.
+ enum UserInteraction {
+ // Invalid value.
+ USER_INTERACTION_UNSPECIFIED = 0;
+
+ // The vulnerable system can be exploited without interaction from any user.
+ USER_INTERACTION_NONE = 1;
+
+ // Successful exploitation of this vulnerability requires a user to take
+ // some action before the vulnerability can be exploited.
+ USER_INTERACTION_REQUIRED = 2;
+ }
+
+ // The Scope metric captures whether a vulnerability in one vulnerable
+ // component impacts resources in components beyond its security scope.
+ enum Scope {
+ // Invalid value.
+ SCOPE_UNSPECIFIED = 0;
+
+ // An exploited vulnerability can only affect resources managed by the same
+ // security authority.
+ SCOPE_UNCHANGED = 1;
+
+ // An exploited vulnerability can affect resources beyond the security scope
+ // managed by the security authority of the vulnerable component.
+ SCOPE_CHANGED = 2;
+ }
+
+ // The Impact metrics capture the effects of a successfully exploited
+ // vulnerability on the component that suffers the worst outcome that is most
+ // directly and predictably associated with the attack.
+ enum Impact {
+ // Invalid value.
+ IMPACT_UNSPECIFIED = 0;
+
+ // High impact.
+ IMPACT_HIGH = 1;
+
+ // Low impact.
+ IMPACT_LOW = 2;
+
+ // No impact.
+ IMPACT_NONE = 3;
+ }
+
+ // The base score is a function of the base metric scores.
+ double base_score = 1;
+
+ // Base Metrics
+ // Represents the intrinsic characteristics of a vulnerability that are
+ // constant over time and across user environments.
+ // This metric reflects the context by which vulnerability exploitation is
+ // possible.
+ AttackVector attack_vector = 5;
+
+ // This metric describes the conditions beyond the attacker's control that
+ // must exist in order to exploit the vulnerability.
+ AttackComplexity attack_complexity = 6;
+
+ // This metric describes the level of privileges an attacker must possess
+ // before successfully exploiting the vulnerability.
+ PrivilegesRequired privileges_required = 7;
+
+ // This metric captures the requirement for a human user, other than the
+ // attacker, to participate in the successful compromise of the vulnerable
+ // component.
+ UserInteraction user_interaction = 8;
+
+ // The Scope metric captures whether a vulnerability in one vulnerable
+ // component impacts resources in components beyond its security scope.
+ Scope scope = 9;
+
+ // This metric measures the impact to the confidentiality of the information
+ // resources managed by a software component due to a successfully exploited
+ // vulnerability.
+ Impact confidentiality_impact = 10;
+
+ // This metric measures the impact to integrity of a successfully exploited
+ // vulnerability.
+ Impact integrity_impact = 11;
+
+ // This metric measures the impact to the availability of the impacted
+ // component resulting from a successfully exploited vulnerability.
+ Impact availability_impact = 12;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/asset.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/asset.proto
new file mode 100644
index 00000000000..415e7a2f094
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/asset.proto
@@ -0,0 +1,92 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1beta1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1beta1/security_marks.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1beta1";
+
+// Security Command Center representation of a Google Cloud
+// resource.
+//
+// The Asset is a Security Command Center resource that captures information
+// about a single Google Cloud resource. All modifications to an Asset are only
+// within the context of Security Command Center and don't affect the referenced
+// Google Cloud resource.
+message Asset {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Asset"
+ pattern: "organizations/{organization}/assets/{asset}"
+ };
+
+ // Security Command Center managed properties. These properties are managed by
+ // Security Command Center and cannot be modified by the user.
+ message SecurityCenterProperties {
+ // Immutable. The full resource name of the Google Cloud resource this asset
+ // represents. This field is immutable after create time. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_name = 1 [(google.api.field_behavior) = IMMUTABLE];
+
+ // The type of the Google Cloud resource. Examples include: APPLICATION,
+ // PROJECT, and ORGANIZATION. This is a case insensitive field defined by
+ // Security Command Center and/or the producer of the resource and is
+ // immutable after create time.
+ string resource_type = 2;
+
+ // The full resource name of the immediate parent of the resource. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_parent = 3;
+
+ // The full resource name of the project the resource belongs to. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_project = 4;
+
+ // Owners of the Google Cloud resource.
+ repeated string resource_owners = 5;
+ }
+
+ // The relative resource name of this asset. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/assets/{asset_id}".
+ string name = 1;
+
+ // Security Command Center managed properties. These properties are managed by
+ // Security Command Center and cannot be modified by the user.
+ SecurityCenterProperties security_center_properties = 2;
+
+ // Resource managed properties. These properties are managed and defined by
+ // the Google Cloud resource and cannot be modified by the user.
+ map resource_properties = 7;
+
+ // User specified security marks. These marks are entirely managed by the user
+ // and come from the SecurityMarks resource that belongs to the asset.
+ SecurityMarks security_marks = 8;
+
+ // The time at which the asset was created in Security Command Center.
+ google.protobuf.Timestamp create_time = 9;
+
+ // The time at which the asset was last updated, added, or deleted in Security
+ // Command Center.
+ google.protobuf.Timestamp update_time = 10;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/finding.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/finding.proto
new file mode 100644
index 00000000000..768bf411c7e
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/finding.proto
@@ -0,0 +1,109 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1beta1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1beta1/security_marks.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1beta1";
+
+// Security Command Center finding.
+//
+// A finding is a record of assessment data (security, risk, health or privacy)
+// ingested into Security Command Center for presentation, notification,
+// analysis, policy testing, and enforcement. For example, an XSS vulnerability
+// in an App Engine application is a finding.
+message Finding {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Finding"
+ pattern: "organizations/{organization}/sources/{source}/findings/{finding}"
+ };
+
+ // The state of the finding.
+ enum State {
+ // Unspecified state.
+ STATE_UNSPECIFIED = 0;
+
+ // The finding requires attention and has not been addressed yet.
+ ACTIVE = 1;
+
+ // The finding has been fixed, triaged as a non-issue or otherwise addressed
+ // and is no longer active.
+ INACTIVE = 2;
+ }
+
+ // The relative resource name of this finding. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
+ string name = 1;
+
+ // Immutable. The relative resource name of the source the finding belongs to.
+ // See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // This field is immutable after creation time.
+ // For example:
+ // "organizations/{organization_id}/sources/{source_id}"
+ string parent = 2 [(google.api.field_behavior) = IMMUTABLE];
+
+ // For findings on Google Cloud resources, the full resource
+ // name of the Google Cloud resource this finding is for. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ // When the finding is for a non-Google Cloud resource, the resourceName can
+ // be a customer or partner defined string. This field is immutable after
+ // creation time.
+ string resource_name = 3;
+
+ // The state of the finding.
+ State state = 4;
+
+ // The additional taxonomy group within findings from a given source.
+ // This field is immutable after creation time.
+ // Example: "XSS_FLASH_INJECTION"
+ string category = 5;
+
+ // The URI that, if available, points to a web page outside of Security
+ // Command Center where additional information about the finding can be found.
+ // This field is guaranteed to be either empty or a well formed URL.
+ string external_uri = 6;
+
+ // Source specific properties. These properties are managed by the source
+ // that writes the finding. The key names in the source_properties map must be
+ // between 1 and 255 characters, and must start with a letter and contain
+ // alphanumeric characters or underscores only.
+ map source_properties = 7;
+
+ // Output only. User specified security marks. These marks are entirely
+ // managed by the user and come from the SecurityMarks resource that belongs
+ // to the finding.
+ SecurityMarks security_marks = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The time at which the event took place, or when an update to the finding
+ // occurred. For example, if the finding represents an open firewall it would
+ // capture the time the detector believes the firewall became open. The
+ // accuracy is determined by the detector. If the finding were to be resolved
+ // afterward, this time would reflect when the finding was resolved.
+ google.protobuf.Timestamp event_time = 9;
+
+ // The time at which the finding was created in Security Command Center.
+ google.protobuf.Timestamp create_time = 10;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/organization_settings.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/organization_settings.proto
new file mode 100644
index 00000000000..b447bf6e39d
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/organization_settings.proto
@@ -0,0 +1,78 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1beta1;
+
+import "google/api/resource.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1beta1";
+
+// User specified settings that are attached to the Security Command
+// Center organization.
+message OrganizationSettings {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/OrganizationSettings"
+ pattern: "organizations/{organization}/organizationSettings"
+ };
+
+ // The configuration used for Asset Discovery runs.
+ message AssetDiscoveryConfig {
+ // The mode of inclusion when running Asset Discovery.
+ // Asset discovery can be limited by explicitly identifying projects to be
+ // included or excluded. If INCLUDE_ONLY is set, then only those projects
+ // within the organization and their children are discovered during asset
+ // discovery. If EXCLUDE is set, then projects that don't match those
+ // projects are discovered during asset discovery. If neither are set, then
+ // all projects within the organization are discovered during asset
+ // discovery.
+ enum InclusionMode {
+ // Unspecified. Setting the mode with this value will disable
+ // inclusion/exclusion filtering for Asset Discovery.
+ INCLUSION_MODE_UNSPECIFIED = 0;
+
+ // Asset Discovery will capture only the resources within the projects
+ // specified. All other resources will be ignored.
+ INCLUDE_ONLY = 1;
+
+ // Asset Discovery will ignore all resources under the projects specified.
+ // All other resources will be retrieved.
+ EXCLUDE = 2;
+ }
+
+ // The project ids to use for filtering asset discovery.
+ repeated string project_ids = 1;
+
+ // The mode to use for filtering asset discovery.
+ InclusionMode inclusion_mode = 2;
+ }
+
+ // The relative resource name of the settings. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/organizationSettings".
+ string name = 1;
+
+ // A flag that indicates if Asset Discovery should be enabled. If the flag is
+ // set to `true`, then discovery of assets will occur. If it is set to `false,
+ // all historical assets will remain, but discovery of future assets will not
+ // occur.
+ bool enable_asset_discovery = 2;
+
+ // The configuration used for Asset Discovery runs.
+ AssetDiscoveryConfig asset_discovery_config = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/run_asset_discovery_response.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/run_asset_discovery_response.proto
new file mode 100644
index 00000000000..cab92d902c3
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/run_asset_discovery_response.proto
@@ -0,0 +1,48 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1beta1;
+
+import "google/protobuf/duration.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1beta1";
+
+// Response of asset discovery run
+message RunAssetDiscoveryResponse {
+ // The state of an asset discovery run.
+ enum State {
+ // Asset discovery run state was unspecified.
+ STATE_UNSPECIFIED = 0;
+
+ // Asset discovery run completed successfully.
+ COMPLETED = 1;
+
+ // Asset discovery run was cancelled with tasks still pending, as another
+ // run for the same organization was started with a higher priority.
+ SUPERSEDED = 2;
+
+ // Asset discovery run was killed and terminated.
+ TERMINATED = 3;
+ }
+
+ // The state of an asset discovery run.
+ State state = 1;
+
+ // The duration between asset discovery run start and end
+ google.protobuf.Duration duration = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/security_marks.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/security_marks.proto
new file mode 100644
index 00000000000..f1dc88d7cd4
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/security_marks.proto
@@ -0,0 +1,52 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1beta1;
+
+import "google/api/resource.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1beta1";
+
+// User specified security marks that are attached to the parent Security
+// Command Center resource. Security marks are scoped within a Security Command
+// Center organization -- they can be modified and viewed by all users who have
+// proper permissions on the organization.
+message SecurityMarks {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/SecurityMarks"
+ pattern: "organizations/{organization}/assets/{asset}/securityMarks"
+ pattern: "organizations/{organization}/sources/{source}/findings/{finding}/securityMarks"
+ };
+
+ // The relative resource name of the SecurityMarks. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Examples:
+ // "organizations/{organization_id}/assets/{asset_id}/securityMarks"
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks".
+ string name = 1;
+
+ // Mutable user specified security marks belonging to the parent resource.
+ // Constraints are as follows:
+ //
+ // * Keys and values are treated as case insensitive
+ // * Keys must be between 1 - 256 characters (inclusive)
+ // * Keys must be letters, numbers, underscores, or dashes
+ // * Values have leading and trailing whitespace trimmed, remaining
+ // characters must be between 1 - 4096 characters (inclusive)
+ map marks = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/securitycenter_service.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/securitycenter_service.proto
new file mode 100644
index 00000000000..55276ef7f1c
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/securitycenter_service.proto
@@ -0,0 +1,823 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1beta1;
+
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1beta1/asset.proto";
+import "google/cloud/securitycenter/v1beta1/finding.proto";
+import "google/cloud/securitycenter/v1beta1/organization_settings.proto";
+import "google/cloud/securitycenter/v1beta1/security_marks.proto";
+import "google/cloud/securitycenter/v1beta1/source.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/duration.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1beta1";
+
+// V1 Beta APIs for Security Center service.
+service SecurityCenter {
+ option (google.api.default_host) = "securitycenter.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Creates a source.
+ rpc CreateSource(CreateSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=organizations/*}/sources"
+ body: "source"
+ };
+ option (google.api.method_signature) = "parent,source";
+ }
+
+ // Creates a finding. The corresponding source must exist for finding creation
+ // to succeed.
+ rpc CreateFinding(CreateFindingRequest) returns (Finding) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=organizations/*/sources/*}/findings"
+ body: "finding"
+ };
+ option (google.api.method_signature) = "parent,finding_id,finding";
+ }
+
+ // Gets the access control policy on the specified Source.
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=organizations/*/sources/*}:getIamPolicy"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource";
+ }
+
+ // Gets the settings for an organization.
+ rpc GetOrganizationSettings(GetOrganizationSettingsRequest) returns (OrganizationSettings) {
+ option (google.api.http) = {
+ get: "/v1beta1/{name=organizations/*/organizationSettings}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets a source.
+ rpc GetSource(GetSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ get: "/v1beta1/{name=organizations/*/sources/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Filters an organization's assets and groups them by their specified
+ // properties.
+ rpc GroupAssets(GroupAssetsRequest) returns (GroupAssetsResponse) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=organizations/*}/assets:group"
+ body: "*"
+ };
+ }
+
+ // Filters an organization or source's findings and groups them by their
+ // specified properties.
+ //
+ // To group across all sources provide a `-` as the source id.
+ // Example: /v1beta1/organizations/{organization_id}/sources/-/findings
+ rpc GroupFindings(GroupFindingsRequest) returns (GroupFindingsResponse) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=organizations/*/sources/*}/findings:group"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent,group_by";
+ }
+
+ // Lists an organization's assets.
+ rpc ListAssets(ListAssetsRequest) returns (ListAssetsResponse) {
+ option (google.api.http) = {
+ get: "/v1beta1/{parent=organizations/*}/assets"
+ };
+ }
+
+ // Lists an organization or source's findings.
+ //
+ // To list across all sources provide a `-` as the source id.
+ // Example: /v1beta1/organizations/{organization_id}/sources/-/findings
+ rpc ListFindings(ListFindingsRequest) returns (ListFindingsResponse) {
+ option (google.api.http) = {
+ get: "/v1beta1/{parent=organizations/*/sources/*}/findings"
+ };
+ }
+
+ // Lists all sources belonging to an organization.
+ rpc ListSources(ListSourcesRequest) returns (ListSourcesResponse) {
+ option (google.api.http) = {
+ get: "/v1beta1/{parent=organizations/*}/sources"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Runs asset discovery. The discovery is tracked with a long-running
+ // operation.
+ //
+ // This API can only be called with limited frequency for an organization. If
+ // it is called too frequently the caller will receive a TOO_MANY_REQUESTS
+ // error.
+ rpc RunAssetDiscovery(RunAssetDiscoveryRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1beta1/{parent=organizations/*}/assets:runDiscovery"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.protobuf.Empty"
+ metadata_type: "google.protobuf.Empty"
+ };
+ }
+
+ // Updates the state of a finding.
+ rpc SetFindingState(SetFindingStateRequest) returns (Finding) {
+ option (google.api.http) = {
+ post: "/v1beta1/{name=organizations/*/sources/*/findings/*}:setState"
+ body: "*"
+ };
+ option (google.api.method_signature) = "name,state,start_time";
+ }
+
+ // Sets the access control policy on the specified Source.
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=organizations/*/sources/*}:setIamPolicy"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource,policy";
+ }
+
+ // Returns the permissions that a caller has on the specified source.
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1beta1/{resource=organizations/*/sources/*}:testIamPermissions"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource,permissions";
+ }
+
+ // Creates or updates a finding. The corresponding source must exist for a
+ // finding creation to succeed.
+ rpc UpdateFinding(UpdateFindingRequest) returns (Finding) {
+ option (google.api.http) = {
+ patch: "/v1beta1/{finding.name=organizations/*/sources/*/findings/*}"
+ body: "finding"
+ };
+ option (google.api.method_signature) = "finding";
+ }
+
+ // Updates an organization's settings.
+ rpc UpdateOrganizationSettings(UpdateOrganizationSettingsRequest) returns (OrganizationSettings) {
+ option (google.api.http) = {
+ patch: "/v1beta1/{organization_settings.name=organizations/*/organizationSettings}"
+ body: "organization_settings"
+ };
+ option (google.api.method_signature) = "organization_settings";
+ }
+
+ // Updates a source.
+ rpc UpdateSource(UpdateSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ patch: "/v1beta1/{source.name=organizations/*/sources/*}"
+ body: "source"
+ };
+ option (google.api.method_signature) = "source";
+ }
+
+ // Updates security marks.
+ rpc UpdateSecurityMarks(UpdateSecurityMarksRequest) returns (SecurityMarks) {
+ option (google.api.http) = {
+ patch: "/v1beta1/{security_marks.name=organizations/*/assets/*/securityMarks}"
+ body: "security_marks"
+ additional_bindings {
+ patch: "/v1beta1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}"
+ body: "security_marks"
+ }
+ };
+ option (google.api.method_signature) = "security_marks";
+ }
+}
+
+// Request message for creating a finding.
+message CreateFindingRequest {
+ // Required. Resource name of the new finding's parent. Its format should be
+ // "organizations/[organization_id]/sources/[source_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Required. Unique identifier provided by the client within the parent scope.
+ // It must be alphanumeric and less than or equal to 32 characters and
+ // greater than 0 characters in length.
+ string finding_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The Finding being created. The name and security_marks will be ignored as
+ // they are both output only fields on this resource.
+ Finding finding = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for creating a source.
+message CreateSourceRequest {
+ // Required. Resource name of the new source's parent. Its format should be
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Required. The Source being created, only the display_name and description will be
+ // used. All other fields will be ignored.
+ Source source = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for getting organization settings.
+message GetOrganizationSettingsRequest {
+ // Required. Name of the organization to get organization settings for. Its format is
+ // "organizations/[organization_id]/organizationSettings".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/OrganizationSettings"
+ }
+ ];
+}
+
+// Request message for getting a source.
+message GetSourceRequest {
+ // Required. Relative resource name of the source. Its format is
+ // "organizations/[organization_id]/source/[source_id]".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+}
+
+// Request message for grouping by assets.
+message GroupAssetsRequest {
+ // Required. Name of the organization to groupBy. Its format is
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Expression that defines the filter to apply across assets.
+ // The expression is a list of zero or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are not supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. The fields map to those
+ // defined in the Asset resource. Examples include:
+ //
+ // * name
+ // * security_center_properties.resource_name
+ // * resource_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // For example, `resource_properties.size = 100` is a valid filter string.
+ string filter = 2;
+
+ // Required. Expression that defines what assets fields to use for grouping. The string
+ // value should follow SQL syntax: comma separated list of fields. For
+ // example:
+ // "security_center_properties.resource_project,security_center_properties.project".
+ //
+ // The following fields are supported when compare_duration is not set:
+ //
+ // * security_center_properties.resource_project
+ // * security_center_properties.resource_type
+ // * security_center_properties.resource_parent
+ //
+ // The following fields are supported when compare_duration is set:
+ //
+ // * security_center_properties.resource_type
+ string group_by = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // When compare_duration is set, the Asset's "state" property is updated to
+ // indicate whether the asset was added, removed, or remained present during
+ // the compare_duration period of time that precedes the read_time. This is
+ // the time between (read_time - compare_duration) and read_time.
+ //
+ // The state value is derived based on the presence of the asset at the two
+ // points in time. Intermediate state changes between the two times don't
+ // affect the result. For example, the results aren't affected if the asset is
+ // removed and re-created again.
+ //
+ // Possible "state" values when compare_duration is specified:
+ //
+ // * "ADDED": indicates that the asset was not present before
+ // compare_duration, but present at reference_time.
+ // * "REMOVED": indicates that the asset was present at the start of
+ // compare_duration, but not present at reference_time.
+ // * "ACTIVE": indicates that the asset was present at both the
+ // start and the end of the time period defined by
+ // compare_duration and reference_time.
+ //
+ // This field is ignored if `state` is not a field in `group_by`.
+ google.protobuf.Duration compare_duration = 4;
+
+ // Time used as a reference point when filtering assets. The filter is limited
+ // to assets existing at the supplied time and their values are those at that
+ // specific time. Absence of this field will default to the API's version of
+ // NOW.
+ google.protobuf.Timestamp read_time = 5;
+
+ // The value returned by the last `GroupAssetsResponse`; indicates
+ // that this is a continuation of a prior `GroupAssets` call, and that the
+ // system should return the next page of data.
+ string page_token = 7;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 8;
+}
+
+// Response message for grouping by assets.
+message GroupAssetsResponse {
+ // Group results. There exists an element for each existing unique
+ // combination of property/values. The element contains a count for the number
+ // of times those specific property/values appear.
+ repeated GroupResult group_by_results = 1;
+
+ // Time used for executing the groupBy request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+}
+
+// Request message for grouping by findings.
+message GroupFindingsRequest {
+ // Required. Name of the source to groupBy. Its format is
+ // "organizations/[organization_id]/sources/[source_id]". To groupBy across
+ // all sources provide a source_id of `-`. For example:
+ // organizations/{organization_id}/sources/-
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Expression that defines the filter to apply across findings.
+ // The expression is a list of one or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are not supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. Examples include:
+ //
+ // * name
+ // * source_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // For example, `source_properties.size = 100` is a valid filter string.
+ string filter = 2;
+
+ // Required. Expression that defines what assets fields to use for grouping (including
+ // `state`). The string value should follow SQL syntax: comma separated list
+ // of fields. For example:
+ // "parent,resource_name".
+ //
+ // The following fields are supported:
+ //
+ // * resource_name
+ // * category
+ // * state
+ // * parent
+ string group_by = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // Time used as a reference point when filtering findings. The filter is
+ // limited to findings existing at the supplied time and their values are
+ // those at that specific time. Absence of this field will default to the
+ // API's version of NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // The value returned by the last `GroupFindingsResponse`; indicates
+ // that this is a continuation of a prior `GroupFindings` call, and
+ // that the system should return the next page of data.
+ string page_token = 5;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 6;
+}
+
+// Response message for group by findings.
+message GroupFindingsResponse {
+ // Group results. There exists an element for each existing unique
+ // combination of property/values. The element contains a count for the number
+ // of times those specific property/values appear.
+ repeated GroupResult group_by_results = 1;
+
+ // Time used for executing the groupBy request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+}
+
+// Result containing the properties and count of a groupBy request.
+message GroupResult {
+ // Properties matching the groupBy fields in the request.
+ map properties = 1;
+
+ // Total count of resources for the given properties.
+ int64 count = 2;
+}
+
+// Request message for listing sources.
+message ListSourcesRequest {
+ // Required. Resource name of the parent of sources to list. Its format should be
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // The value returned by the last `ListSourcesResponse`; indicates
+ // that this is a continuation of a prior `ListSources` call, and
+ // that the system should return the next page of data.
+ string page_token = 2;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 7;
+}
+
+// Response message for listing sources.
+message ListSourcesResponse {
+ // Sources belonging to the requested parent.
+ repeated Source sources = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request message for listing assets.
+message ListAssetsRequest {
+ // Required. Name of the organization assets should belong to. Its format is
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Expression that defines the filter to apply across assets.
+ // The expression is a list of zero or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are not supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. The fields map to those
+ // defined in the Asset resource. Examples include:
+ //
+ // * name
+ // * security_center_properties.resource_name
+ // * resource_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // For example, `resource_properties.size = 100` is a valid filter string.
+ string filter = 2;
+
+ // Expression that defines what fields and order to use for sorting. The
+ // string value should follow SQL syntax: comma separated list of fields. For
+ // example: "name,resource_properties.a_property". The default sorting order
+ // is ascending. To specify descending order for a field, a suffix " desc"
+ // should be appended to the field name. For example: "name
+ // desc,resource_properties.a_property". Redundant space characters in the
+ // syntax are insignificant. "name desc,resource_properties.a_property" and "
+ // name desc , resource_properties.a_property " are equivalent.
+ string order_by = 3;
+
+ // Time used as a reference point when filtering assets. The filter is limited
+ // to assets existing at the supplied time and their values are those at that
+ // specific time. Absence of this field will default to the API's version of
+ // NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // When compare_duration is set, the ListAssetResult's "state" attribute is
+ // updated to indicate whether the asset was added, removed, or remained
+ // present during the compare_duration period of time that precedes the
+ // read_time. This is the time between (read_time -
+ // compare_duration) and read_time.
+ //
+ // The state value is derived based on the presence of the asset at the two
+ // points in time. Intermediate state changes between the two times don't
+ // affect the result. For example, the results aren't affected if the asset is
+ // removed and re-created again.
+ //
+ // Possible "state" values when compare_duration is specified:
+ //
+ // * "ADDED": indicates that the asset was not present before
+ // compare_duration, but present at read_time.
+ // * "REMOVED": indicates that the asset was present at the start of
+ // compare_duration, but not present at read_time.
+ // * "ACTIVE": indicates that the asset was present at both the
+ // start and the end of the time period defined by
+ // compare_duration and read_time.
+ //
+ // If compare_duration is not specified, then the only possible state is
+ // "UNUSED", which indicates that the asset is present at read_time.
+ google.protobuf.Duration compare_duration = 5;
+
+ // Optional. A field mask to specify the ListAssetsResult fields to be listed in the
+ // response.
+ // An empty field mask will list all fields.
+ google.protobuf.FieldMask field_mask = 7 [(google.api.field_behavior) = OPTIONAL];
+
+ // The value returned by the last `ListAssetsResponse`; indicates
+ // that this is a continuation of a prior `ListAssets` call, and
+ // that the system should return the next page of data.
+ string page_token = 8;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 9;
+}
+
+// Response message for listing assets.
+message ListAssetsResponse {
+ // Result containing the Asset and its State.
+ message ListAssetsResult {
+ // State of the asset.
+ //
+ // When querying across two points in time this describes
+ // the change between the two points: ADDED, REMOVED, or ACTIVE.
+ // If there was no compare_duration supplied in the request the state should
+ // be: UNUSED
+ enum State {
+ // Unspecified state.
+ STATE_UNSPECIFIED = 0;
+
+ // Request did not specify use of this field in the result.
+ UNUSED = 1;
+
+ // Asset was added between the points in time.
+ ADDED = 2;
+
+ // Asset was removed between the points in time.
+ REMOVED = 3;
+
+ // Asset was active at both point(s) in time.
+ ACTIVE = 4;
+ }
+
+ // Asset matching the search request.
+ Asset asset = 1;
+
+ // State of the asset.
+ State state = 2;
+ }
+
+ // Assets matching the list request.
+ repeated ListAssetsResult list_assets_results = 1;
+
+ // Time used for executing the list request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of assets matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for listing findings.
+message ListFindingsRequest {
+ // Required. Name of the source the findings belong to. Its format is
+ // "organizations/[organization_id]/sources/[source_id]". To list across all
+ // sources provide a source_id of `-`. For example:
+ // organizations/{organization_id}/sources/-
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Expression that defines the filter to apply across findings.
+ // The expression is a list of one or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are not supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. Examples include:
+ //
+ // * name
+ // * source_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // For example, `source_properties.size = 100` is a valid filter string.
+ string filter = 2;
+
+ // Expression that defines what fields and order to use for sorting. The
+ // string value should follow SQL syntax: comma separated list of fields. For
+ // example: "name,resource_properties.a_property". The default sorting order
+ // is ascending. To specify descending order for a field, a suffix " desc"
+ // should be appended to the field name. For example: "name
+ // desc,source_properties.a_property". Redundant space characters in the
+ // syntax are insignificant. "name desc,source_properties.a_property" and "
+ // name desc , source_properties.a_property " are equivalent.
+ string order_by = 3;
+
+ // Time used as a reference point when filtering findings. The filter is
+ // limited to findings existing at the supplied time and their values are
+ // those at that specific time. Absence of this field will default to the
+ // API's version of NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // Optional. A field mask to specify the Finding fields to be listed in the response.
+ // An empty field mask will list all fields.
+ google.protobuf.FieldMask field_mask = 5 [(google.api.field_behavior) = OPTIONAL];
+
+ // The value returned by the last `ListFindingsResponse`; indicates
+ // that this is a continuation of a prior `ListFindings` call, and
+ // that the system should return the next page of data.
+ string page_token = 6;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 7;
+}
+
+// Response message for listing findings.
+message ListFindingsResponse {
+ // Findings matching the list request.
+ repeated Finding findings = 1;
+
+ // Time used for executing the list request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of findings matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for updating a finding's state.
+message SetFindingStateRequest {
+ // Required. The relative resource name of the finding. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}/finding/{finding_id}".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Finding"
+ }
+ ];
+
+ // Required. The desired State of the finding.
+ Finding.State state = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The time at which the updated state takes effect.
+ google.protobuf.Timestamp start_time = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for running asset discovery for an organization.
+message RunAssetDiscoveryRequest {
+ // Required. Name of the organization to run asset discovery for. Its format is
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+}
+
+// Request message for updating or creating a finding.
+message UpdateFindingRequest {
+ // Required. The finding resource to update or create if it does not already exist.
+ // parent, security_marks, and update_time will be ignored.
+ //
+ // In the case of creation, the finding id portion of the name must
+ // alphanumeric and less than or equal to 32 characters and greater than 0
+ // characters in length.
+ Finding finding = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the finding resource. This field should
+ // not be specified when creating a finding.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating an organization's settings.
+message UpdateOrganizationSettingsRequest {
+ // Required. The organization settings resource to update.
+ OrganizationSettings organization_settings = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the settings resource.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a source.
+message UpdateSourceRequest {
+ // Required. The source resource to update.
+ Source source = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the source resource.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a SecurityMarks resource.
+message UpdateSecurityMarksRequest {
+ // Required. The security marks resource to update.
+ SecurityMarks security_marks = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the security marks resource.
+ google.protobuf.FieldMask update_mask = 2;
+
+ // The time at which the updated SecurityMarks take effect.
+ google.protobuf.Timestamp start_time = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/source.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/source.proto
new file mode 100644
index 00000000000..a4a49749ed3
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1beta1/source.proto
@@ -0,0 +1,55 @@
+// Copyright 2020 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1beta1;
+
+import "google/api/resource.proto";
+
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1beta1";
+
+// Security Command Center finding source. A finding source
+// is an entity or a mechanism that can produce a finding. A source is like a
+// container of findings that come from the same scanner, logger, monitor, etc.
+message Source {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Source"
+ pattern: "organizations/{organization}/sources/{source}"
+ };
+
+ // The relative resource name of this source. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}"
+ string name = 1;
+
+ // The source's display name.
+ // A source's display name must be unique amongst its siblings, for example,
+ // two sources with the same parent can't share the same display name.
+ // The display name must have a length between 1 and 64 characters
+ // (inclusive).
+ string display_name = 2;
+
+ // The description of the source (max of 1024 characters).
+ // Example:
+ // "Web Security Scanner is a web security scanner for common
+ // vulnerabilities in App Engine applications. It can automatically
+ // scan and detect four common vulnerabilities, including cross-site-scripting
+ // (XSS), Flash injection, mixed content (HTTP in HTTPS), and
+ // outdated/insecure libraries."
+ string description = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/asset.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/asset.proto
new file mode 100644
index 00000000000..45fdcbf5a5a
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/asset.proto
@@ -0,0 +1,134 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1p1beta1/folder.proto";
+import "google/cloud/securitycenter/v1p1beta1/security_marks.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// Security Command Center representation of a Google Cloud
+// resource.
+//
+// The Asset is a Security Command Center resource that captures information
+// about a single Google Cloud resource. All modifications to an Asset are only
+// within the context of Security Command Center and don't affect the referenced
+// Google Cloud resource.
+message Asset {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Asset"
+ pattern: "organizations/{organization}/assets/{asset}"
+ pattern: "folders/{folder}/assets/{asset}"
+ pattern: "projects/{project}/assets/{asset}"
+ };
+
+ // Security Command Center managed properties. These properties are managed by
+ // Security Command Center and cannot be modified by the user.
+ message SecurityCenterProperties {
+ // The full resource name of the Google Cloud resource this asset
+ // represents. This field is immutable after create time. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_name = 1;
+
+ // The type of the Google Cloud resource. Examples include: APPLICATION,
+ // PROJECT, and ORGANIZATION. This is a case insensitive field defined by
+ // Security Command Center and/or the producer of the resource and is
+ // immutable after create time.
+ string resource_type = 2;
+
+ // The full resource name of the immediate parent of the resource. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_parent = 3;
+
+ // The full resource name of the project the resource belongs to. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_project = 4;
+
+ // Owners of the Google Cloud resource.
+ repeated string resource_owners = 5;
+
+ // The user defined display name for this resource.
+ string resource_display_name = 6;
+
+ // The user defined display name for the parent of this resource.
+ string resource_parent_display_name = 7;
+
+ // The user defined display name for the project of this resource.
+ string resource_project_display_name = 8;
+
+ // Contains a Folder message for each folder in the assets ancestry.
+ // The first folder is the deepest nested folder, and the last folder is the
+ // folder directly under the Organization.
+ repeated Folder folders = 10;
+ }
+
+ // Cloud IAM Policy information associated with the Google Cloud resource
+ // described by the Security Command Center asset. This information is managed
+ // and defined by the Google Cloud resource and cannot be modified by the
+ // user.
+ message IamPolicy {
+ // The JSON representation of the Policy associated with the asset.
+ // See https://cloud.google.com/iam/docs/reference/rest/v1/Policy for
+ // format details.
+ string policy_blob = 1;
+ }
+
+ // The relative resource name of this asset. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/assets/{asset_id}".
+ string name = 1;
+
+ // Security Command Center managed properties. These properties are managed by
+ // Security Command Center and cannot be modified by the user.
+ SecurityCenterProperties security_center_properties = 2;
+
+ // Resource managed properties. These properties are managed and defined by
+ // the Google Cloud resource and cannot be modified by the user.
+ map resource_properties = 7;
+
+ // User specified security marks. These marks are entirely managed by the user
+ // and come from the SecurityMarks resource that belongs to the asset.
+ SecurityMarks security_marks = 8;
+
+ // The time at which the asset was created in Security Command Center.
+ google.protobuf.Timestamp create_time = 9;
+
+ // The time at which the asset was last updated or added in Cloud SCC.
+ google.protobuf.Timestamp update_time = 10;
+
+ // Cloud IAM Policy information associated with the Google Cloud resource
+ // described by the Security Command Center asset. This information is managed
+ // and defined by the Google Cloud resource and cannot be modified by the
+ // user.
+ IamPolicy iam_policy = 11;
+
+ // The canonical name of the resource. It's either
+ // "organizations/{organization_id}/assets/{asset_id}",
+ // "folders/{folder_id}/assets/{asset_id}" or
+ // "projects/{project_number}/assets/{asset_id}", depending on the closest CRM
+ // ancestor of the resource.
+ string canonical_name = 13;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/finding.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/finding.proto
new file mode 100644
index 00000000000..5edd3d86296
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/finding.proto
@@ -0,0 +1,145 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1p1beta1/security_marks.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// Security Command Center finding.
+//
+// A finding is a record of assessment data (security, risk, health or privacy)
+// ingested into Security Command Center for presentation, notification,
+// analysis, policy testing, and enforcement. For example, an XSS vulnerability
+// in an App Engine application is a finding.
+message Finding {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Finding"
+ pattern: "organizations/{organization}/sources/{source}/findings/{finding}"
+ pattern: "folders/{folder}/sources/{source}/findings/{finding}"
+ pattern: "projects/{project}/sources/{source}/findings/{finding}"
+ };
+
+ // The state of the finding.
+ enum State {
+ // Unspecified state.
+ STATE_UNSPECIFIED = 0;
+
+ // The finding requires attention and has not been addressed yet.
+ ACTIVE = 1;
+
+ // The finding has been fixed, triaged as a non-issue or otherwise addressed
+ // and is no longer active.
+ INACTIVE = 2;
+ }
+
+ // The severity of the finding. This field is managed by the source that
+ // writes the finding.
+ enum Severity {
+ // No severity specified. The default value.
+ SEVERITY_UNSPECIFIED = 0;
+
+ // Critical severity.
+ CRITICAL = 1;
+
+ // High severity.
+ HIGH = 2;
+
+ // Medium severity.
+ MEDIUM = 3;
+
+ // Low severity.
+ LOW = 4;
+ }
+
+ // The relative resource name of this finding. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}"
+ string name = 1;
+
+ // The relative resource name of the source the finding belongs to. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // This field is immutable after creation time.
+ // For example:
+ // "organizations/{organization_id}/sources/{source_id}"
+ string parent = 2;
+
+ // For findings on Google Cloud resources, the full resource
+ // name of the Google Cloud resource this finding is for. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ // When the finding is for a non-Google Cloud resource, the resourceName can
+ // be a customer or partner defined string. This field is immutable after
+ // creation time.
+ string resource_name = 3;
+
+ // The state of the finding.
+ State state = 4;
+
+ // The additional taxonomy group within findings from a given source.
+ // This field is immutable after creation time.
+ // Example: "XSS_FLASH_INJECTION"
+ string category = 5;
+
+ // The URI that, if available, points to a web page outside of Security
+ // Command Center where additional information about the finding can be found.
+ // This field is guaranteed to be either empty or a well formed URL.
+ string external_uri = 6;
+
+ // Source specific properties. These properties are managed by the source
+ // that writes the finding. The key names in the source_properties map must be
+ // between 1 and 255 characters, and must start with a letter and contain
+ // alphanumeric characters or underscores only.
+ map source_properties = 7;
+
+ // Output only. User specified security marks. These marks are entirely
+ // managed by the user and come from the SecurityMarks resource that belongs
+ // to the finding.
+ SecurityMarks security_marks = 8 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The time at which the event took place, or when an update to the finding
+ // occurred. For example, if the finding represents an open firewall it would
+ // capture the time the detector believes the firewall became open. The
+ // accuracy is determined by the detector. If the finding were to be resolved
+ // afterward, this time would reflect when the finding was resolved. Must not
+ // be set to a value greater than the current timestamp.
+ google.protobuf.Timestamp event_time = 9;
+
+ // The time at which the finding was created in Security Command Center.
+ google.protobuf.Timestamp create_time = 10;
+
+ // The severity of the finding. This field is managed by the source that
+ // writes the finding.
+ Severity severity = 13;
+
+ // The canonical name of the finding. It's either
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}",
+ // "folders/{folder_id}/sources/{source_id}/findings/{finding_id}" or
+ // "projects/{project_number}/sources/{source_id}/findings/{finding_id}",
+ // depending on the closest CRM ancestor of the resource associated with the
+ // finding.
+ string canonical_name = 14;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/folder.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/folder.proto
new file mode 100644
index 00000000000..28a587163c1
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/folder.proto
@@ -0,0 +1,37 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "FolderProto";
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1Beta1";
+
+// Message that contains the resource name and display name of a folder
+// resource.
+message Folder {
+ // Full resource name of this folder. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string resource_folder = 1;
+
+ // The user defined display name for this folder.
+ string resource_folder_display_name = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/notification_config.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/notification_config.proto
new file mode 100644
index 00000000000..faaab37b102
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/notification_config.proto
@@ -0,0 +1,107 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+option (google.api.resource_definition) = {
+ type: "pubsub.googleapis.com/Topic"
+ pattern: "projects/{project}/topics/{topic}"
+};
+
+// Security Command Center notification configs.
+//
+// A notification config is a Security Command Center resource that contains the
+// configuration to send notifications for create/update events of findings,
+// assets and etc.
+message NotificationConfig {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/NotificationConfig"
+ pattern: "organizations/{organization}/notificationConfigs/{notification_config}"
+ };
+
+ // The config for streaming-based notifications, which send each event as soon
+ // as it is detected.
+ message StreamingConfig {
+ // Expression that defines the filter to apply across create/update events
+ // of assets or findings as specified by the event type. The expression is a
+ // list of zero or more restrictions combined via logical operators `AND`
+ // and `OR`. Parentheses are supported, and `OR` has higher precedence than
+ // `AND`.
+ //
+ // Restrictions have the form ` ` and may have a
+ // `-` character in front of them to indicate negation. The fields map to
+ // those defined in the corresponding resource.
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ string filter = 1;
+ }
+
+ // The type of events.
+ enum EventType {
+ // Unspecified event type.
+ EVENT_TYPE_UNSPECIFIED = 0;
+
+ // Events for findings.
+ FINDING = 1;
+ }
+
+ // The relative resource name of this notification config. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/notificationConfigs/notify_public_bucket".
+ string name = 1;
+
+ // The description of the notification config (max of 1024 characters).
+ string description = 2;
+
+ // The type of events the config is for, e.g. FINDING.
+ EventType event_type = 3;
+
+ // The Pub/Sub topic to send notifications to. Its format is
+ // "projects/[project_id]/topics/[topic]".
+ string pubsub_topic = 4 [(google.api.resource_reference) = {
+ type: "pubsub.googleapis.com/Topic"
+ }];
+
+ // Output only. The service account that needs "pubsub.topics.publish"
+ // permission to publish to the Pub/Sub topic.
+ string service_account = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
+
+ // The config for triggering notifications.
+ oneof notify_config {
+ // The config for triggering streaming-based notifications.
+ StreamingConfig streaming_config = 6;
+ }
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/notification_message.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/notification_message.proto
new file mode 100644
index 00000000000..78a3e781f12
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/notification_message.proto
@@ -0,0 +1,43 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/cloud/securitycenter/v1p1beta1/finding.proto";
+import "google/cloud/securitycenter/v1p1beta1/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// Security Command Center's Notification
+message NotificationMessage {
+ // Name of the notification config that generated current notification.
+ string notification_config_name = 1;
+
+ // Notification Event.
+ oneof event {
+ // If it's a Finding based notification config, this field will be
+ // populated.
+ Finding finding = 2;
+ }
+
+ // The Cloud resource tied to the notification.
+ Resource resource = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/organization_settings.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/organization_settings.proto
new file mode 100644
index 00000000000..b80f046d6b8
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/organization_settings.proto
@@ -0,0 +1,85 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// User specified settings that are attached to the Security Command
+// Center organization.
+message OrganizationSettings {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/OrganizationSettings"
+ pattern: "organizations/{organization}/organizationSettings"
+ };
+
+ // The configuration used for Asset Discovery runs.
+ message AssetDiscoveryConfig {
+ // The mode of inclusion when running Asset Discovery.
+ // Asset discovery can be limited by explicitly identifying projects to be
+ // included or excluded. If INCLUDE_ONLY is set, then only those projects
+ // within the organization and their children are discovered during asset
+ // discovery. If EXCLUDE is set, then projects that don't match those
+ // projects are discovered during asset discovery. If neither are set, then
+ // all projects within the organization are discovered during asset
+ // discovery.
+ enum InclusionMode {
+ // Unspecified. Setting the mode with this value will disable
+ // inclusion/exclusion filtering for Asset Discovery.
+ INCLUSION_MODE_UNSPECIFIED = 0;
+
+ // Asset Discovery will capture only the resources within the projects
+ // specified. All other resources will be ignored.
+ INCLUDE_ONLY = 1;
+
+ // Asset Discovery will ignore all resources under the projects specified.
+ // All other resources will be retrieved.
+ EXCLUDE = 2;
+ }
+
+ // The project ids to use for filtering asset discovery.
+ repeated string project_ids = 1;
+
+ // The mode to use for filtering asset discovery.
+ InclusionMode inclusion_mode = 2;
+
+ // The folder ids to use for filtering asset discovery.
+ // It consists of only digits, e.g., 756619654966.
+ repeated string folder_ids = 3;
+ }
+
+ // The relative resource name of the settings. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/organizationSettings".
+ string name = 1;
+
+ // A flag that indicates if Asset Discovery should be enabled. If the flag is
+ // set to `true`, then discovery of assets will occur. If it is set to `false,
+ // all historical assets will remain, but discovery of future assets will not
+ // occur.
+ bool enable_asset_discovery = 2;
+
+ // The configuration used for Asset Discovery runs.
+ AssetDiscoveryConfig asset_discovery_config = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/resource.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/resource.proto
new file mode 100644
index 00000000000..3b2d2d437e8
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/resource.proto
@@ -0,0 +1,52 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/api/field_behavior.proto";
+import "google/cloud/securitycenter/v1p1beta1/folder.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_outer_classname = "ResourceProto";
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// Information related to the Google Cloud resource.
+message Resource {
+ // The full resource name of the resource. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string name = 1;
+
+ // The full resource name of project that the resource belongs to.
+ string project = 2;
+
+ // The human readable name of project that the resource belongs to.
+ string project_display_name = 3;
+
+ // The full resource name of resource's parent.
+ string parent = 4;
+
+ // The human readable name of resource's parent.
+ string parent_display_name = 5;
+
+ // Output only. Contains a Folder message for each folder in the assets ancestry.
+ // The first folder is the deepest nested folder, and the last folder is the
+ // folder directly under the Organization.
+ repeated Folder folders = 7 [(google.api.field_behavior) = OUTPUT_ONLY];
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/run_asset_discovery_response.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/run_asset_discovery_response.proto
new file mode 100644
index 00000000000..835e33fbdf1
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/run_asset_discovery_response.proto
@@ -0,0 +1,51 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/protobuf/duration.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// Response of asset discovery run
+message RunAssetDiscoveryResponse {
+ // The state of an asset discovery run.
+ enum State {
+ // Asset discovery run state was unspecified.
+ STATE_UNSPECIFIED = 0;
+
+ // Asset discovery run completed successfully.
+ COMPLETED = 1;
+
+ // Asset discovery run was cancelled with tasks still pending, as another
+ // run for the same organization was started with a higher priority.
+ SUPERSEDED = 2;
+
+ // Asset discovery run was killed and terminated.
+ TERMINATED = 3;
+ }
+
+ // The state of an asset discovery run.
+ State state = 1;
+
+ // The duration between asset discovery run start and end
+ google.protobuf.Duration duration = 2;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/security_marks.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/security_marks.proto
new file mode 100644
index 00000000000..2245605b3e4
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/security_marks.proto
@@ -0,0 +1,69 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// User specified security marks that are attached to the parent Security
+// Command Center resource. Security marks are scoped within a Security Command
+// Center organization -- they can be modified and viewed by all users who have
+// proper permissions on the organization.
+message SecurityMarks {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/SecurityMarks"
+ pattern: "organizations/{organization}/assets/{asset}/securityMarks"
+ pattern: "organizations/{organization}/sources/{source}/findings/{finding}/securityMarks"
+ pattern: "folders/{folder}/assets/{asset}/securityMarks"
+ pattern: "projects/{project}/assets/{asset}/securityMarks"
+ pattern: "folders/{folder}/sources/{source}/findings/{finding}/securityMarks"
+ pattern: "projects/{project}/sources/{source}/findings/{finding}/securityMarks"
+ };
+
+ // The relative resource name of the SecurityMarks. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Examples:
+ // "organizations/{organization_id}/assets/{asset_id}/securityMarks"
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks".
+ string name = 1;
+
+ // Mutable user specified security marks belonging to the parent resource.
+ // Constraints are as follows:
+ //
+ // * Keys and values are treated as case insensitive
+ // * Keys must be between 1 - 256 characters (inclusive)
+ // * Keys must be letters, numbers, underscores, or dashes
+ // * Values have leading and trailing whitespace trimmed, remaining
+ // characters must be between 1 - 4096 characters (inclusive)
+ map marks = 2;
+
+ // The canonical name of the marks.
+ // Examples:
+ // "organizations/{organization_id}/assets/{asset_id}/securityMarks"
+ // "folders/{folder_id}/assets/{asset_id}/securityMarks"
+ // "projects/{project_number}/assets/{asset_id}/securityMarks"
+ // "organizations/{organization_id}/sources/{source_id}/findings/{finding_id}/securityMarks"
+ // "folders/{folder_id}/sources/{source_id}/findings/{finding_id}/securityMarks"
+ // "projects/{project_number}/sources/{source_id}/findings/{finding_id}/securityMarks"
+ string canonical_name = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/securitycenter_service.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/securitycenter_service.proto
new file mode 100644
index 00000000000..958e69714cf
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/securitycenter_service.proto
@@ -0,0 +1,1351 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import public "google/cloud/securitycenter/v1p1beta1/notification_message.proto";
+import public "google/cloud/securitycenter/v1p1beta1/run_asset_discovery_response.proto";
+import "google/api/annotations.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+import "google/cloud/securitycenter/v1p1beta1/asset.proto";
+import "google/cloud/securitycenter/v1p1beta1/finding.proto";
+import "google/cloud/securitycenter/v1p1beta1/folder.proto";
+import "google/cloud/securitycenter/v1p1beta1/notification_config.proto";
+import "google/cloud/securitycenter/v1p1beta1/organization_settings.proto";
+import "google/cloud/securitycenter/v1p1beta1/security_marks.proto";
+import "google/cloud/securitycenter/v1p1beta1/source.proto";
+import "google/iam/v1/iam_policy.proto";
+import "google/iam/v1/policy.proto";
+import "google/longrunning/operations.proto";
+import "google/protobuf/duration.proto";
+import "google/protobuf/empty.proto";
+import "google/protobuf/field_mask.proto";
+import "google/protobuf/struct.proto";
+import "google/protobuf/timestamp.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// V1p1Beta1 APIs for Security Center service.
+service SecurityCenter {
+ option (google.api.default_host) = "securitycenter.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
+ // Creates a source.
+ rpc CreateSource(CreateSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{parent=organizations/*}/sources"
+ body: "source"
+ };
+ option (google.api.method_signature) = "parent,source";
+ }
+
+ // Creates a finding. The corresponding source must exist for finding
+ // creation to succeed.
+ rpc CreateFinding(CreateFindingRequest) returns (Finding) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{parent=organizations/*/sources/*}/findings"
+ body: "finding"
+ };
+ option (google.api.method_signature) = "parent,finding_id,finding";
+ option (google.api.method_signature) = "parent,finding,finding_id";
+ }
+
+ // Creates a notification config.
+ rpc CreateNotificationConfig(CreateNotificationConfigRequest) returns (NotificationConfig) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{parent=organizations/*}/notificationConfigs"
+ body: "notification_config"
+ };
+ option (google.api.method_signature) = "parent,config_id,notification_config";
+ option (google.api.method_signature) = "parent,notification_config";
+ }
+
+ // Deletes a notification config.
+ rpc DeleteNotificationConfig(DeleteNotificationConfigRequest) returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1p1beta1/{name=organizations/*/notificationConfigs/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets the access control policy on the specified Source.
+ rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{resource=organizations/*/sources/*}:getIamPolicy"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource";
+ }
+
+ // Gets a notification config.
+ rpc GetNotificationConfig(GetNotificationConfigRequest) returns (NotificationConfig) {
+ option (google.api.http) = {
+ get: "/v1p1beta1/{name=organizations/*/notificationConfigs/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets the settings for an organization.
+ rpc GetOrganizationSettings(GetOrganizationSettingsRequest) returns (OrganizationSettings) {
+ option (google.api.http) = {
+ get: "/v1p1beta1/{name=organizations/*/organizationSettings}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Gets a source.
+ rpc GetSource(GetSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ get: "/v1p1beta1/{name=organizations/*/sources/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
+ // Filters an organization's assets and groups them by their specified
+ // properties.
+ rpc GroupAssets(GroupAssetsRequest) returns (GroupAssetsResponse) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{parent=organizations/*}/assets:group"
+ body: "*"
+ additional_bindings {
+ post: "/v1p1beta1/{parent=folders/*}/assets:group"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1p1beta1/{parent=projects/*}/assets:group"
+ body: "*"
+ }
+ };
+ }
+
+ // Filters an organization or source's findings and groups them by their
+ // specified properties.
+ //
+ // To group across all sources provide a `-` as the source id.
+ // Example: /v1/organizations/{organization_id}/sources/-/findings,
+ // /v1/folders/{folder_id}/sources/-/findings,
+ // /v1/projects/{project_id}/sources/-/findings
+ rpc GroupFindings(GroupFindingsRequest) returns (GroupFindingsResponse) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{parent=organizations/*/sources/*}/findings:group"
+ body: "*"
+ additional_bindings {
+ post: "/v1p1beta1/{parent=folders/*/sources/*}/findings:group"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1p1beta1/{parent=projects/*/sources/*}/findings:group"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "parent,group_by";
+ }
+
+ // Lists an organization's assets.
+ rpc ListAssets(ListAssetsRequest) returns (ListAssetsResponse) {
+ option (google.api.http) = {
+ get: "/v1p1beta1/{parent=organizations/*}/assets"
+ additional_bindings {
+ get: "/v1p1beta1/{parent=folders/*}/assets"
+ }
+ additional_bindings {
+ get: "/v1p1beta1/{parent=projects/*}/assets"
+ }
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Lists an organization or source's findings.
+ //
+ // To list across all sources provide a `-` as the source id.
+ // Example: /v1p1beta1/organizations/{organization_id}/sources/-/findings
+ rpc ListFindings(ListFindingsRequest) returns (ListFindingsResponse) {
+ option (google.api.http) = {
+ get: "/v1p1beta1/{parent=organizations/*/sources/*}/findings"
+ additional_bindings {
+ get: "/v1p1beta1/{parent=folders/*/sources/*}/findings"
+ }
+ additional_bindings {
+ get: "/v1p1beta1/{parent=projects/*/sources/*}/findings"
+ }
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Lists notification configs.
+ rpc ListNotificationConfigs(ListNotificationConfigsRequest) returns (ListNotificationConfigsResponse) {
+ option (google.api.http) = {
+ get: "/v1p1beta1/{parent=organizations/*}/notificationConfigs"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Lists all sources belonging to an organization.
+ rpc ListSources(ListSourcesRequest) returns (ListSourcesResponse) {
+ option (google.api.http) = {
+ get: "/v1p1beta1/{parent=organizations/*}/sources"
+ additional_bindings {
+ get: "/v1p1beta1/{parent=folders/*}/sources"
+ }
+ additional_bindings {
+ get: "/v1p1beta1/{parent=projects/*}/sources"
+ }
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Runs asset discovery. The discovery is tracked with a long-running
+ // operation.
+ //
+ // This API can only be called with limited frequency for an organization. If
+ // it is called too frequently the caller will receive a TOO_MANY_REQUESTS
+ // error.
+ rpc RunAssetDiscovery(RunAssetDiscoveryRequest) returns (google.longrunning.Operation) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{parent=organizations/*}/assets:runDiscovery"
+ body: "*"
+ };
+ option (google.api.method_signature) = "parent";
+ option (google.longrunning.operation_info) = {
+ response_type: "google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse"
+ metadata_type: "google.protobuf.Empty"
+ };
+ }
+
+ // Updates the state of a finding.
+ rpc SetFindingState(SetFindingStateRequest) returns (Finding) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{name=organizations/*/sources/*/findings/*}:setState"
+ body: "*"
+ additional_bindings {
+ post: "/v1p1beta1/{name=folders/*/sources/*/findings/*}:setState"
+ body: "*"
+ }
+ additional_bindings {
+ post: "/v1p1beta1/{name=projects/*/sources/*/findings/*}:setState"
+ body: "*"
+ }
+ };
+ option (google.api.method_signature) = "name,state,start_time";
+ }
+
+ // Sets the access control policy on the specified Source.
+ rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{resource=organizations/*/sources/*}:setIamPolicy"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource,policy";
+ }
+
+ // Returns the permissions that a caller has on the specified source.
+ rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) {
+ option (google.api.http) = {
+ post: "/v1p1beta1/{resource=organizations/*/sources/*}:testIamPermissions"
+ body: "*"
+ };
+ option (google.api.method_signature) = "resource,permissions";
+ }
+
+ // Creates or updates a finding. The corresponding source must exist for a
+ // finding creation to succeed.
+ rpc UpdateFinding(UpdateFindingRequest) returns (Finding) {
+ option (google.api.http) = {
+ patch: "/v1p1beta1/{finding.name=organizations/*/sources/*/findings/*}"
+ body: "finding"
+ additional_bindings {
+ patch: "/v1p1beta1/{finding.name=folders/*/sources/*/findings/*}"
+ body: "finding"
+ }
+ additional_bindings {
+ patch: "/v1p1beta1/{finding.name=projects/*/sources/*/findings/*}"
+ body: "finding"
+ }
+ };
+ option (google.api.method_signature) = "finding";
+ option (google.api.method_signature) = "finding,update_mask";
+ }
+
+ // Updates a notification config. The following update
+ // fields are allowed: description, pubsub_topic, streaming_config.filter
+ rpc UpdateNotificationConfig(UpdateNotificationConfigRequest) returns (NotificationConfig) {
+ option (google.api.http) = {
+ patch: "/v1p1beta1/{notification_config.name=organizations/*/notificationConfigs/*}"
+ body: "notification_config"
+ };
+ option (google.api.method_signature) = "notification_config";
+ option (google.api.method_signature) = "notification_config,update_mask";
+ }
+
+ // Updates an organization's settings.
+ rpc UpdateOrganizationSettings(UpdateOrganizationSettingsRequest) returns (OrganizationSettings) {
+ option (google.api.http) = {
+ patch: "/v1p1beta1/{organization_settings.name=organizations/*/organizationSettings}"
+ body: "organization_settings"
+ };
+ option (google.api.method_signature) = "organization_settings";
+ }
+
+ // Updates a source.
+ rpc UpdateSource(UpdateSourceRequest) returns (Source) {
+ option (google.api.http) = {
+ patch: "/v1p1beta1/{source.name=organizations/*/sources/*}"
+ body: "source"
+ };
+ option (google.api.method_signature) = "source";
+ option (google.api.method_signature) = "source,update_mask";
+ }
+
+ // Updates security marks.
+ rpc UpdateSecurityMarks(UpdateSecurityMarksRequest) returns (SecurityMarks) {
+ option (google.api.http) = {
+ patch: "/v1p1beta1/{security_marks.name=organizations/*/assets/*/securityMarks}"
+ body: "security_marks"
+ additional_bindings {
+ patch: "/v1p1beta1/{security_marks.name=folders/*/assets/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1p1beta1/{security_marks.name=projects/*/assets/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1p1beta1/{security_marks.name=organizations/*/sources/*/findings/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1p1beta1/{security_marks.name=folders/*/sources/*/findings/*/securityMarks}"
+ body: "security_marks"
+ }
+ additional_bindings {
+ patch: "/v1p1beta1/{security_marks.name=projects/*/sources/*/findings/*/securityMarks}"
+ body: "security_marks"
+ }
+ };
+ option (google.api.method_signature) = "security_marks";
+ option (google.api.method_signature) = "security_marks,update_mask";
+ }
+}
+
+// Request message for creating a finding.
+message CreateFindingRequest {
+ // Required. Resource name of the new finding's parent. Its format should be
+ // "organizations/[organization_id]/sources/[source_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Required. Unique identifier provided by the client within the parent scope.
+ string finding_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The Finding being created. The name and security_marks will be ignored as
+ // they are both output only fields on this resource.
+ Finding finding = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for creating a notification config.
+message CreateNotificationConfigRequest {
+ // Required. Resource name of the new notification config's parent. Its format is
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Required. Unique identifier provided by the client within the parent scope.
+ // It must be between 1 and 128 characters, and contains alphanumeric
+ // characters, underscores or hyphens only.
+ string config_id = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The notification config being created. The name and the service account
+ // will be ignored as they are both output only fields on this resource.
+ NotificationConfig notification_config = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for creating a source.
+message CreateSourceRequest {
+ // Required. Resource name of the new source's parent. Its format should be
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // Required. The Source being created, only the display_name and description will be
+ // used. All other fields will be ignored.
+ Source source = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for deleting a notification config.
+message DeleteNotificationConfigRequest {
+ // Required. Name of the notification config to delete. Its format is
+ // "organizations/[organization_id]/notificationConfigs/[config_id]".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/NotificationConfig"
+ }
+ ];
+}
+
+// Request message for getting a notification config.
+message GetNotificationConfigRequest {
+ // Required. Name of the notification config to get. Its format is
+ // "organizations/[organization_id]/notificationConfigs/[config_id]".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/NotificationConfig"
+ }
+ ];
+}
+
+// Request message for getting organization settings.
+message GetOrganizationSettingsRequest {
+ // Required. Name of the organization to get organization settings for. Its format is
+ // "organizations/[organization_id]/organizationSettings".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/OrganizationSettings"
+ }
+ ];
+}
+
+// Request message for getting a source.
+message GetSourceRequest {
+ // Required. Relative resource name of the source. Its format is
+ // "organizations/[organization_id]/source/[source_id]".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+}
+
+// Request message for grouping by assets.
+message GroupAssetsRequest {
+ // Required. Name of the organization to groupBy. Its format is
+ // "organizations/[organization_id], folders/[folder_id], or
+ // projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/Asset"
+ }
+ ];
+
+ // Expression that defines the filter to apply across assets.
+ // The expression is a list of zero or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. The fields map to those
+ // defined in the Asset resource. Examples include:
+ //
+ // * name
+ // * security_center_properties.resource_name
+ // * resource_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following field and operator combinations are supported:
+ //
+ // * name: `=`
+ // * update_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `update_time = "2019-06-10T16:07:18-07:00"`
+ // `update_time = 1560208038000`
+ //
+ // * create_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `create_time = "2019-06-10T16:07:18-07:00"`
+ // `create_time = 1560208038000`
+ //
+ // * iam_policy.policy_blob: `=`, `:`
+ // * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ // * security_marks.marks: `=`, `:`
+ // * security_center_properties.resource_name: `=`, `:`
+ // * security_center_properties.resource_name_display_name: `=`, `:`
+ // * security_center_properties.resource_type: `=`, `:`
+ // * security_center_properties.resource_parent: `=`, `:`
+ // * security_center_properties.resource_parent_display_name: `=`, `:`
+ // * security_center_properties.resource_project: `=`, `:`
+ // * security_center_properties.resource_project_display_name: `=`, `:`
+ // * security_center_properties.resource_owners: `=`, `:`
+ //
+ // For example, `resource_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `resource_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-resource_properties.my_property : ""`
+ string filter = 2;
+
+ // Required. Expression that defines what assets fields to use for grouping. The string
+ // value should follow SQL syntax: comma separated list of fields. For
+ // example:
+ // "security_center_properties.resource_project,security_center_properties.project".
+ //
+ // The following fields are supported when compare_duration is not set:
+ //
+ // * security_center_properties.resource_project
+ // * security_center_properties.resource_project_display_name
+ // * security_center_properties.resource_type
+ // * security_center_properties.resource_parent
+ // * security_center_properties.resource_parent_display_name
+ //
+ // The following fields are supported when compare_duration is set:
+ //
+ // * security_center_properties.resource_type
+ // * security_center_properties.resource_project_display_name
+ // * security_center_properties.resource_parent_display_name
+ string group_by = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // When compare_duration is set, the GroupResult's "state_change" property is
+ // updated to indicate whether the asset was added, removed, or remained
+ // present during the compare_duration period of time that precedes the
+ // read_time. This is the time between (read_time - compare_duration) and
+ // read_time.
+ //
+ // The state change value is derived based on the presence of the asset at the
+ // two points in time. Intermediate state changes between the two times don't
+ // affect the result. For example, the results aren't affected if the asset is
+ // removed and re-created again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "ADDED": indicates that the asset was not present at the start of
+ // compare_duration, but present at reference_time.
+ // * "REMOVED": indicates that the asset was present at the start of
+ // compare_duration, but not present at reference_time.
+ // * "ACTIVE": indicates that the asset was present at both the
+ // start and the end of the time period defined by
+ // compare_duration and reference_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all assets present at
+ // read_time.
+ //
+ // If this field is set then `state_change` must be a specified field in
+ // `group_by`.
+ google.protobuf.Duration compare_duration = 4;
+
+ // Time used as a reference point when filtering assets. The filter is limited
+ // to assets existing at the supplied time and their values are those at that
+ // specific time. Absence of this field will default to the API's version of
+ // NOW.
+ google.protobuf.Timestamp read_time = 5;
+
+ // The value returned by the last `GroupAssetsResponse`; indicates
+ // that this is a continuation of a prior `GroupAssets` call, and that the
+ // system should return the next page of data.
+ string page_token = 7;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 8;
+}
+
+// Response message for grouping by assets.
+message GroupAssetsResponse {
+ // Group results. There exists an element for each existing unique
+ // combination of property/values. The element contains a count for the number
+ // of times those specific property/values appear.
+ repeated GroupResult group_by_results = 1;
+
+ // Time used for executing the groupBy request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of results matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for grouping by findings.
+message GroupFindingsRequest {
+ // Required. Name of the source to groupBy. Its format is
+ // "organizations/[organization_id]/sources/[source_id]",
+ // folders/[folder_id]/sources/[source_id], or
+ // projects/[project_id]/sources/[source_id]. To groupBy across all sources
+ // provide a source_id of `-`. For example:
+ // organizations/{organization_id}/sources/-, folders/{folder_id}/sources/-,
+ // or projects/{project_id}/sources/-
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Expression that defines the filter to apply across findings.
+ // The expression is a list of one or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. Examples include:
+ //
+ // * name
+ // * source_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following field and operator combinations are supported:
+ //
+ // * name: `=`
+ // * parent: `=`, `:`
+ // * resource_name: `=`, `:`
+ // * state: `=`, `:`
+ // * category: `=`, `:`
+ // * external_uri: `=`, `:`
+ // * event_time: `=`, `>`, `<`, `>=`, `<=`
+ // * severity: `=`, `:`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `event_time = "2019-06-10T16:07:18-07:00"`
+ // `event_time = 1560208038000`
+ //
+ // * security_marks.marks: `=`, `:`
+ // * source_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ //
+ // For example, `source_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `source_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-source_properties.my_property : ""`
+ string filter = 2;
+
+ // Required. Expression that defines what assets fields to use for grouping (including
+ // `state_change`). The string value should follow SQL syntax: comma separated
+ // list of fields. For example: "parent,resource_name".
+ //
+ // The following fields are supported:
+ //
+ // * resource_name
+ // * category
+ // * state
+ // * parent
+ // * severity
+ //
+ // The following fields are supported when compare_duration is set:
+ //
+ // * state_change
+ string group_by = 3 [(google.api.field_behavior) = REQUIRED];
+
+ // Time used as a reference point when filtering findings. The filter is
+ // limited to findings existing at the supplied time and their values are
+ // those at that specific time. Absence of this field will default to the
+ // API's version of NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // When compare_duration is set, the GroupResult's "state_change" attribute is
+ // updated to indicate whether the finding had its state changed, the
+ // finding's state remained unchanged, or if the finding was added during the
+ // compare_duration period of time that precedes the read_time. This is the
+ // time between (read_time - compare_duration) and read_time.
+ //
+ // The state_change value is derived based on the presence and state of the
+ // finding at the two points in time. Intermediate state changes between the
+ // two times don't affect the result. For example, the results aren't affected
+ // if the finding is made inactive and then active again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "CHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration, but changed its
+ // state at read_time.
+ // * "UNCHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration and did not change
+ // state at read_time.
+ // * "ADDED": indicates that the finding did not match the given filter or
+ // was not present at the start of compare_duration, but was
+ // present at read_time.
+ // * "REMOVED": indicates that the finding was present and matched the
+ // filter at the start of compare_duration, but did not match
+ // the filter at read_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all findings present
+ // at read_time.
+ //
+ // If this field is set then `state_change` must be a specified field in
+ // `group_by`.
+ google.protobuf.Duration compare_duration = 5;
+
+ // The value returned by the last `GroupFindingsResponse`; indicates
+ // that this is a continuation of a prior `GroupFindings` call, and
+ // that the system should return the next page of data.
+ string page_token = 7;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 8;
+}
+
+// Response message for group by findings.
+message GroupFindingsResponse {
+ // Group results. There exists an element for each existing unique
+ // combination of property/values. The element contains a count for the number
+ // of times those specific property/values appear.
+ repeated GroupResult group_by_results = 1;
+
+ // Time used for executing the groupBy request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of results matching the query.
+ int32 total_size = 4;
+}
+
+// Result containing the properties and count of a groupBy request.
+message GroupResult {
+ // Properties matching the groupBy fields in the request.
+ map properties = 1;
+
+ // Total count of resources for the given properties.
+ int64 count = 2;
+}
+
+// Request message for listing notification configs.
+message ListNotificationConfigsRequest {
+ // Required. Name of the organization to list notification configs.
+ // Its format is "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+
+ // The value returned by the last `ListNotificationConfigsResponse`; indicates
+ // that this is a continuation of a prior `ListNotificationConfigs` call, and
+ // that the system should return the next page of data.
+ string page_token = 2;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 3;
+}
+
+// Response message for listing notification configs.
+message ListNotificationConfigsResponse {
+ // Notification configs belonging to the requested parent.
+ repeated NotificationConfig notification_configs = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request message for listing sources.
+message ListSourcesRequest {
+ // Required. Resource name of the parent of sources to list. Its format should be
+ // "organizations/[organization_id], folders/[folder_id], or
+ // projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // The value returned by the last `ListSourcesResponse`; indicates
+ // that this is a continuation of a prior `ListSources` call, and
+ // that the system should return the next page of data.
+ string page_token = 2;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 7;
+}
+
+// Response message for listing sources.
+message ListSourcesResponse {
+ // Sources belonging to the requested parent.
+ repeated Source sources = 1;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 2;
+}
+
+// Request message for listing assets.
+message ListAssetsRequest {
+ // Required. Name of the organization assets should belong to. Its format is
+ // "organizations/[organization_id], folders/[folder_id], or
+ // projects/[project_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "securitycenter.googleapis.com/Asset"
+ }
+ ];
+
+ // Expression that defines the filter to apply across assets.
+ // The expression is a list of zero or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. The fields map to those
+ // defined in the Asset resource. Examples include:
+ //
+ // * name
+ // * security_center_properties.resource_name
+ // * resource_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following are the allowed field and operator combinations:
+ //
+ // * name: `=`
+ // * update_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `update_time = "2019-06-10T16:07:18-07:00"`
+ // `update_time = 1560208038000`
+ //
+ // * create_time: `=`, `>`, `<`, `>=`, `<=`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `create_time = "2019-06-10T16:07:18-07:00"`
+ // `create_time = 1560208038000`
+ //
+ // * iam_policy.policy_blob: `=`, `:`
+ // * resource_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ // * security_marks.marks: `=`, `:`
+ // * security_center_properties.resource_name: `=`, `:`
+ // * security_center_properties.resource_display_name: `=`, `:`
+ // * security_center_properties.resource_type: `=`, `:`
+ // * security_center_properties.resource_parent: `=`, `:`
+ // * security_center_properties.resource_parent_display_name: `=`, `:`
+ // * security_center_properties.resource_project: `=`, `:`
+ // * security_center_properties.resource_project_display_name: `=`, `:`
+ // * security_center_properties.resource_owners: `=`, `:`
+ //
+ // For example, `resource_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `resource_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-resource_properties.my_property : ""`
+ string filter = 2;
+
+ // Expression that defines what fields and order to use for sorting. The
+ // string value should follow SQL syntax: comma separated list of fields. For
+ // example: "name,resource_properties.a_property". The default sorting order
+ // is ascending. To specify descending order for a field, a suffix " desc"
+ // should be appended to the field name. For example: "name
+ // desc,resource_properties.a_property". Redundant space characters in the
+ // syntax are insignificant. "name desc,resource_properties.a_property" and "
+ // name desc , resource_properties.a_property " are equivalent.
+ //
+ // The following fields are supported:
+ // name
+ // update_time
+ // resource_properties
+ // security_marks.marks
+ // security_center_properties.resource_name
+ // security_center_properties.resource_display_name
+ // security_center_properties.resource_parent
+ // security_center_properties.resource_parent_display_name
+ // security_center_properties.resource_project
+ // security_center_properties.resource_project_display_name
+ // security_center_properties.resource_type
+ string order_by = 3;
+
+ // Time used as a reference point when filtering assets. The filter is limited
+ // to assets existing at the supplied time and their values are those at that
+ // specific time. Absence of this field will default to the API's version of
+ // NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // When compare_duration is set, the ListAssetsResult's "state_change"
+ // attribute is updated to indicate whether the asset was added, removed, or
+ // remained present during the compare_duration period of time that precedes
+ // the read_time. This is the time between (read_time - compare_duration) and
+ // read_time.
+ //
+ // The state_change value is derived based on the presence of the asset at the
+ // two points in time. Intermediate state changes between the two times don't
+ // affect the result. For example, the results aren't affected if the asset is
+ // removed and re-created again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "ADDED": indicates that the asset was not present at the start of
+ // compare_duration, but present at read_time.
+ // * "REMOVED": indicates that the asset was present at the start of
+ // compare_duration, but not present at read_time.
+ // * "ACTIVE": indicates that the asset was present at both the
+ // start and the end of the time period defined by
+ // compare_duration and read_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all assets present at
+ // read_time.
+ google.protobuf.Duration compare_duration = 5;
+
+ // A field mask to specify the ListAssetsResult fields to be listed in the
+ // response.
+ // An empty field mask will list all fields.
+ google.protobuf.FieldMask field_mask = 7;
+
+ // The value returned by the last `ListAssetsResponse`; indicates
+ // that this is a continuation of a prior `ListAssets` call, and
+ // that the system should return the next page of data.
+ string page_token = 8;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 9;
+}
+
+// Response message for listing assets.
+message ListAssetsResponse {
+ // Result containing the Asset and its State.
+ message ListAssetsResult {
+ // The change in state of the asset.
+ //
+ // When querying across two points in time this describes
+ // the change between the two points: ADDED, REMOVED, or ACTIVE.
+ // If there was no compare_duration supplied in the request the state change
+ // will be: UNUSED
+ enum StateChange {
+ // State change is unused, this is the canonical default for this enum.
+ UNUSED = 0;
+
+ // Asset was added between the points in time.
+ ADDED = 1;
+
+ // Asset was removed between the points in time.
+ REMOVED = 2;
+
+ // Asset was present at both point(s) in time.
+ ACTIVE = 3;
+ }
+
+ // Asset matching the search request.
+ Asset asset = 1;
+
+ // State change of the asset between the points in time.
+ StateChange state_change = 2;
+ }
+
+ // Assets matching the list request.
+ repeated ListAssetsResult list_assets_results = 1;
+
+ // Time used for executing the list request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of assets matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for listing findings.
+message ListFindingsRequest {
+ // Required. Name of the source the findings belong to. Its format is
+ // "organizations/[organization_id]/sources/[source_id],
+ // folders/[folder_id]/sources/[source_id], or
+ // projects/[project_id]/sources/[source_id]". To list across all sources
+ // provide a source_id of `-`. For example:
+ // organizations/{organization_id}/sources/-, folders/{folder_id}/sources/- or
+ // projects/{projects_id}/sources/-
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Source"
+ }
+ ];
+
+ // Expression that defines the filter to apply across findings.
+ // The expression is a list of one or more restrictions combined via logical
+ // operators `AND` and `OR`.
+ // Parentheses are supported, and `OR` has higher precedence than `AND`.
+ //
+ // Restrictions have the form ` ` and may have a `-`
+ // character in front of them to indicate negation. Examples include:
+ //
+ // * name
+ // * source_properties.a_property
+ // * security_marks.marks.marka
+ //
+ // The supported operators are:
+ //
+ // * `=` for all value types.
+ // * `>`, `<`, `>=`, `<=` for integer values.
+ // * `:`, meaning substring matching, for strings.
+ //
+ // The supported value types are:
+ //
+ // * string literals in quotes.
+ // * integer literals without quotes.
+ // * boolean literals `true` and `false` without quotes.
+ //
+ // The following field and operator combinations are supported:
+ //
+ // * name: `=`
+ // * parent: `=`, `:`
+ // * resource_name: `=`, `:`
+ // * state: `=`, `:`
+ // * category: `=`, `:`
+ // * external_uri: `=`, `:`
+ // * event_time: `=`, `>`, `<`, `>=`, `<=`
+ // * severity: `=`, `:`
+ //
+ // Usage: This should be milliseconds since epoch or an RFC3339 string.
+ // Examples:
+ // `event_time = "2019-06-10T16:07:18-07:00"`
+ // `event_time = 1560208038000`
+ //
+ // security_marks.marks: `=`, `:`
+ // source_properties: `=`, `:`, `>`, `<`, `>=`, `<=`
+ //
+ // For example, `source_properties.size = 100` is a valid filter string.
+ //
+ // Use a partial match on the empty string to filter based on a property
+ // existing: `source_properties.my_property : ""`
+ //
+ // Use a negated partial match on the empty string to filter based on a
+ // property not existing: `-source_properties.my_property : ""`
+ string filter = 2;
+
+ // Expression that defines what fields and order to use for sorting. The
+ // string value should follow SQL syntax: comma separated list of fields. For
+ // example: "name,resource_properties.a_property". The default sorting order
+ // is ascending. To specify descending order for a field, a suffix " desc"
+ // should be appended to the field name. For example: "name
+ // desc,source_properties.a_property". Redundant space characters in the
+ // syntax are insignificant. "name desc,source_properties.a_property" and "
+ // name desc , source_properties.a_property " are equivalent.
+ //
+ // The following fields are supported:
+ // name
+ // parent
+ // state
+ // category
+ // resource_name
+ // event_time
+ // source_properties
+ // security_marks.marks
+ string order_by = 3;
+
+ // Time used as a reference point when filtering findings. The filter is
+ // limited to findings existing at the supplied time and their values are
+ // those at that specific time. Absence of this field will default to the
+ // API's version of NOW.
+ google.protobuf.Timestamp read_time = 4;
+
+ // When compare_duration is set, the ListFindingsResult's "state_change"
+ // attribute is updated to indicate whether the finding had its state changed,
+ // the finding's state remained unchanged, or if the finding was added in any
+ // state during the compare_duration period of time that precedes the
+ // read_time. This is the time between (read_time - compare_duration) and
+ // read_time.
+ //
+ // The state_change value is derived based on the presence and state of the
+ // finding at the two points in time. Intermediate state changes between the
+ // two times don't affect the result. For example, the results aren't affected
+ // if the finding is made inactive and then active again.
+ //
+ // Possible "state_change" values when compare_duration is specified:
+ //
+ // * "CHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration, but changed its
+ // state at read_time.
+ // * "UNCHANGED": indicates that the finding was present and matched the given
+ // filter at the start of compare_duration and did not change
+ // state at read_time.
+ // * "ADDED": indicates that the finding did not match the given filter or
+ // was not present at the start of compare_duration, but was
+ // present at read_time.
+ // * "REMOVED": indicates that the finding was present and matched the
+ // filter at the start of compare_duration, but did not match
+ // the filter at read_time.
+ //
+ // If compare_duration is not specified, then the only possible state_change
+ // is "UNUSED", which will be the state_change set for all findings present at
+ // read_time.
+ google.protobuf.Duration compare_duration = 5;
+
+ // A field mask to specify the Finding fields to be listed in the response.
+ // An empty field mask will list all fields.
+ google.protobuf.FieldMask field_mask = 7;
+
+ // The value returned by the last `ListFindingsResponse`; indicates
+ // that this is a continuation of a prior `ListFindings` call, and
+ // that the system should return the next page of data.
+ string page_token = 8;
+
+ // The maximum number of results to return in a single response. Default is
+ // 10, minimum is 1, maximum is 1000.
+ int32 page_size = 9;
+}
+
+// Response message for listing findings.
+message ListFindingsResponse {
+ // Result containing the Finding and its StateChange.
+ message ListFindingsResult {
+ // Information related to the Google Cloud resource that is
+ // associated with this finding.
+ message Resource {
+ // The full resource name of the resource. See:
+ // https://cloud.google.com/apis/design/resource_names#full_resource_name
+ string name = 1;
+
+ // The full resource name of project that the resource belongs to.
+ string project_name = 2;
+
+ // The human readable name of project that the resource belongs to.
+ string project_display_name = 3;
+
+ // The full resource name of resource's parent.
+ string parent_name = 4;
+
+ // The human readable name of resource's parent.
+ string parent_display_name = 5;
+
+ // Contains a Folder message for each folder in the assets ancestry.
+ // The first folder is the deepest nested folder, and the last folder is
+ // the folder directly under the Organization.
+ repeated Folder folders = 10;
+ }
+
+ // The change in state of the finding.
+ //
+ // When querying across two points in time this describes
+ // the change in the finding between the two points: CHANGED, UNCHANGED,
+ // ADDED, or REMOVED. Findings can not be deleted, so REMOVED implies that
+ // the finding at timestamp does not match the filter specified, but it did
+ // at timestamp - compare_duration. If there was no compare_duration
+ // supplied in the request the state change will be: UNUSED
+ enum StateChange {
+ // State change is unused, this is the canonical default for this enum.
+ UNUSED = 0;
+
+ // The finding has changed state in some way between the points in time
+ // and existed at both points.
+ CHANGED = 1;
+
+ // The finding has not changed state between the points in time and
+ // existed at both points.
+ UNCHANGED = 2;
+
+ // The finding was created between the points in time.
+ ADDED = 3;
+
+ // The finding at timestamp does not match the filter specified, but it
+ // did at timestamp - compare_duration.
+ REMOVED = 4;
+ }
+
+ // Finding matching the search request.
+ Finding finding = 1;
+
+ // State change of the finding between the points in time.
+ StateChange state_change = 2;
+
+ // Output only. Resource that is associated with this finding.
+ Resource resource = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
+ }
+
+ // Findings matching the list request.
+ repeated ListFindingsResult list_findings_results = 1;
+
+ // Time used for executing the list request.
+ google.protobuf.Timestamp read_time = 2;
+
+ // Token to retrieve the next page of results, or empty if there are no more
+ // results.
+ string next_page_token = 3;
+
+ // The total number of findings matching the query.
+ int32 total_size = 4;
+}
+
+// Request message for updating a finding's state.
+message SetFindingStateRequest {
+ // Required. The relative resource name of the finding. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}/finding/{finding_id}".
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "securitycenter.googleapis.com/Finding"
+ }
+ ];
+
+ // Required. The desired State of the finding.
+ Finding.State state = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The time at which the updated state takes effect.
+ google.protobuf.Timestamp start_time = 3 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for running asset discovery for an organization.
+message RunAssetDiscoveryRequest {
+ // Required. Name of the organization to run asset discovery for. Its format is
+ // "organizations/[organization_id]".
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "cloudresourcemanager.googleapis.com/Organization"
+ }
+ ];
+}
+
+// Request message for updating or creating a finding.
+message UpdateFindingRequest {
+ // Required. The finding resource to update or create if it does not already exist.
+ // parent, security_marks, and update_time will be ignored.
+ //
+ // In the case of creation, the finding id portion of the name must be
+ // alphanumeric and less than or equal to 32 characters and greater than 0
+ // characters in length.
+ Finding finding = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the finding resource. This field should
+ // not be specified when creating a finding.
+ //
+ // When updating a finding, an empty mask is treated as updating all mutable
+ // fields and replacing source_properties. Individual source_properties can
+ // be added/updated by using "source_properties." in the field
+ // mask.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a notification config.
+message UpdateNotificationConfigRequest {
+ // Required. The notification config to update.
+ NotificationConfig notification_config = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the notification config.
+ //
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating an organization's settings.
+message UpdateOrganizationSettingsRequest {
+ // Required. The organization settings resource to update.
+ OrganizationSettings organization_settings = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the settings resource.
+ //
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a source.
+message UpdateSourceRequest {
+ // Required. The source resource to update.
+ Source source = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the source resource.
+ //
+ // If empty all mutable fields will be updated.
+ google.protobuf.FieldMask update_mask = 2;
+}
+
+// Request message for updating a SecurityMarks resource.
+message UpdateSecurityMarksRequest {
+ // Required. The security marks resource to update.
+ SecurityMarks security_marks = 1 [(google.api.field_behavior) = REQUIRED];
+
+ // The FieldMask to use when updating the security marks resource.
+ //
+ // The field mask must not contain duplicate fields.
+ // If empty or set to "marks", all marks will be replaced. Individual
+ // marks can be updated using "marks.".
+ google.protobuf.FieldMask update_mask = 2;
+
+ // The time at which the updated SecurityMarks take effect.
+ // If not set uses current server time. Updates will be applied to the
+ // SecurityMarks that are active immediately preceding this time.
+ google.protobuf.Timestamp start_time = 3;
+}
diff --git a/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/source.proto b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/source.proto
new file mode 100644
index 00000000000..e2a55659556
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/google/cloud/securitycenter/v1p1beta1/source.proto
@@ -0,0 +1,68 @@
+// Copyright 2021 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.cloud.securitycenter.v1p1beta1;
+
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Cloud.SecurityCenter.V1P1Beta1";
+option go_package = "google.golang.org/genproto/googleapis/cloud/securitycenter/v1p1beta1;securitycenter";
+option java_multiple_files = true;
+option java_package = "com.google.cloud.securitycenter.v1p1beta1";
+option php_namespace = "Google\\Cloud\\SecurityCenter\\V1p1beta1";
+option ruby_package = "Google::Cloud::SecurityCenter::V1p1beta1";
+
+// Security Command Center finding source. A finding source
+// is an entity or a mechanism that can produce a finding. A source is like a
+// container of findings that come from the same scanner, logger, monitor, etc.
+message Source {
+ option (google.api.resource) = {
+ type: "securitycenter.googleapis.com/Source"
+ pattern: "organizations/{organization}/sources/{source}"
+ pattern: "folders/{folder}/sources/{source}"
+ pattern: "projects/{project}/sources/{source}"
+ };
+
+ // The relative resource name of this source. See:
+ // https://cloud.google.com/apis/design/resource_names#relative_resource_name
+ // Example:
+ // "organizations/{organization_id}/sources/{source_id}"
+ string name = 1;
+
+ // The source's display name.
+ // A source's display name must be unique amongst its siblings, for example,
+ // two sources with the same parent can't share the same display name.
+ // The display name must have a length between 1 and 64 characters
+ // (inclusive).
+ string display_name = 2;
+
+ // The description of the source (max of 1024 characters).
+ // Example:
+ // "Web Security Scanner is a web security scanner for common
+ // vulnerabilities in App Engine applications. It can automatically
+ // scan and detect four common vulnerabilities, including cross-site-scripting
+ // (XSS), Flash injection, mixed content (HTTP in HTTPS), and
+ // outdated/insecure libraries."
+ string description = 3;
+
+ // The canonical name of the finding. It's either
+ // "organizations/{organization_id}/sources/{source_id}",
+ // "folders/{folder_id}/sources/{source_id}" or
+ // "projects/{project_number}/sources/{source_id}",
+ // depending on the closest CRM ancestor of the resource associated with the
+ // finding.
+ string canonical_name = 14;
+}
diff --git a/packages/google-cloud-securitycenter/protos/protos.d.ts b/packages/google-cloud-securitycenter/protos/protos.d.ts
new file mode 100644
index 00000000000..f7220fdf13e
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/protos.d.ts
@@ -0,0 +1,28817 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+import type {protobuf as $protobuf} from "google-gax";
+import Long = require("long");
+/** Namespace google. */
+export namespace google {
+
+ /** Namespace cloud. */
+ namespace cloud {
+
+ /** Namespace securitycenter. */
+ namespace securitycenter {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Properties of an Access. */
+ interface IAccess {
+
+ /** Access principalEmail */
+ principalEmail?: (string|null);
+
+ /** Access callerIp */
+ callerIp?: (string|null);
+
+ /** Access callerIpGeo */
+ callerIpGeo?: (google.cloud.securitycenter.v1.IGeolocation|null);
+
+ /** Access userAgentFamily */
+ userAgentFamily?: (string|null);
+
+ /** Access serviceName */
+ serviceName?: (string|null);
+
+ /** Access methodName */
+ methodName?: (string|null);
+
+ /** Access principalSubject */
+ principalSubject?: (string|null);
+
+ /** Access serviceAccountKeyName */
+ serviceAccountKeyName?: (string|null);
+
+ /** Access serviceAccountDelegationInfo */
+ serviceAccountDelegationInfo?: (google.cloud.securitycenter.v1.IServiceAccountDelegationInfo[]|null);
+ }
+
+ /** Represents an Access. */
+ class Access implements IAccess {
+
+ /**
+ * Constructs a new Access.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IAccess);
+
+ /** Access principalEmail. */
+ public principalEmail: string;
+
+ /** Access callerIp. */
+ public callerIp: string;
+
+ /** Access callerIpGeo. */
+ public callerIpGeo?: (google.cloud.securitycenter.v1.IGeolocation|null);
+
+ /** Access userAgentFamily. */
+ public userAgentFamily: string;
+
+ /** Access serviceName. */
+ public serviceName: string;
+
+ /** Access methodName. */
+ public methodName: string;
+
+ /** Access principalSubject. */
+ public principalSubject: string;
+
+ /** Access serviceAccountKeyName. */
+ public serviceAccountKeyName: string;
+
+ /** Access serviceAccountDelegationInfo. */
+ public serviceAccountDelegationInfo: google.cloud.securitycenter.v1.IServiceAccountDelegationInfo[];
+
+ /**
+ * Creates a new Access instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Access instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IAccess): google.cloud.securitycenter.v1.Access;
+
+ /**
+ * Encodes the specified Access message. Does not implicitly {@link google.cloud.securitycenter.v1.Access.verify|verify} messages.
+ * @param message Access message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IAccess, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Access message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Access.verify|verify} messages.
+ * @param message Access message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IAccess, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Access message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Access
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Access;
+
+ /**
+ * Decodes an Access message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Access
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Access;
+
+ /**
+ * Verifies an Access message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Access message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Access
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Access;
+
+ /**
+ * Creates a plain object from an Access message. Also converts values to other types if specified.
+ * @param message Access
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Access, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Access to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Access
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceAccountDelegationInfo. */
+ interface IServiceAccountDelegationInfo {
+
+ /** ServiceAccountDelegationInfo principalEmail */
+ principalEmail?: (string|null);
+
+ /** ServiceAccountDelegationInfo principalSubject */
+ principalSubject?: (string|null);
+ }
+
+ /** Represents a ServiceAccountDelegationInfo. */
+ class ServiceAccountDelegationInfo implements IServiceAccountDelegationInfo {
+
+ /**
+ * Constructs a new ServiceAccountDelegationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IServiceAccountDelegationInfo);
+
+ /** ServiceAccountDelegationInfo principalEmail. */
+ public principalEmail: string;
+
+ /** ServiceAccountDelegationInfo principalSubject. */
+ public principalSubject: string;
+
+ /**
+ * Creates a new ServiceAccountDelegationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceAccountDelegationInfo instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IServiceAccountDelegationInfo): google.cloud.securitycenter.v1.ServiceAccountDelegationInfo;
+
+ /**
+ * Encodes the specified ServiceAccountDelegationInfo message. Does not implicitly {@link google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.verify|verify} messages.
+ * @param message ServiceAccountDelegationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IServiceAccountDelegationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceAccountDelegationInfo message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.verify|verify} messages.
+ * @param message ServiceAccountDelegationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IServiceAccountDelegationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceAccountDelegationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceAccountDelegationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ServiceAccountDelegationInfo;
+
+ /**
+ * Decodes a ServiceAccountDelegationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceAccountDelegationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ServiceAccountDelegationInfo;
+
+ /**
+ * Verifies a ServiceAccountDelegationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceAccountDelegationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceAccountDelegationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ServiceAccountDelegationInfo;
+
+ /**
+ * Creates a plain object from a ServiceAccountDelegationInfo message. Also converts values to other types if specified.
+ * @param message ServiceAccountDelegationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ServiceAccountDelegationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceAccountDelegationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceAccountDelegationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Geolocation. */
+ interface IGeolocation {
+
+ /** Geolocation regionCode */
+ regionCode?: (string|null);
+ }
+
+ /** Represents a Geolocation. */
+ class Geolocation implements IGeolocation {
+
+ /**
+ * Constructs a new Geolocation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGeolocation);
+
+ /** Geolocation regionCode. */
+ public regionCode: string;
+
+ /**
+ * Creates a new Geolocation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Geolocation instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGeolocation): google.cloud.securitycenter.v1.Geolocation;
+
+ /**
+ * Encodes the specified Geolocation message. Does not implicitly {@link google.cloud.securitycenter.v1.Geolocation.verify|verify} messages.
+ * @param message Geolocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGeolocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Geolocation message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Geolocation.verify|verify} messages.
+ * @param message Geolocation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGeolocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Geolocation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Geolocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Geolocation;
+
+ /**
+ * Decodes a Geolocation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Geolocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Geolocation;
+
+ /**
+ * Verifies a Geolocation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Geolocation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Geolocation
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Geolocation;
+
+ /**
+ * Creates a plain object from a Geolocation message. Also converts values to other types if specified.
+ * @param message Geolocation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Geolocation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Geolocation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Geolocation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Asset. */
+ interface IAsset {
+
+ /** Asset name */
+ name?: (string|null);
+
+ /** Asset securityCenterProperties */
+ securityCenterProperties?: (google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties|null);
+
+ /** Asset resourceProperties */
+ resourceProperties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** Asset securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1.ISecurityMarks|null);
+
+ /** Asset createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset iamPolicy */
+ iamPolicy?: (google.cloud.securitycenter.v1.Asset.IIamPolicy|null);
+
+ /** Asset canonicalName */
+ canonicalName?: (string|null);
+ }
+
+ /** Represents an Asset. */
+ class Asset implements IAsset {
+
+ /**
+ * Constructs a new Asset.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IAsset);
+
+ /** Asset name. */
+ public name: string;
+
+ /** Asset securityCenterProperties. */
+ public securityCenterProperties?: (google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties|null);
+
+ /** Asset resourceProperties. */
+ public resourceProperties: { [k: string]: google.protobuf.IValue };
+
+ /** Asset securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1.ISecurityMarks|null);
+
+ /** Asset createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset iamPolicy. */
+ public iamPolicy?: (google.cloud.securitycenter.v1.Asset.IIamPolicy|null);
+
+ /** Asset canonicalName. */
+ public canonicalName: string;
+
+ /**
+ * Creates a new Asset instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Asset instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IAsset): google.cloud.securitycenter.v1.Asset;
+
+ /**
+ * Encodes the specified Asset message. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.verify|verify} messages.
+ * @param message Asset message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IAsset, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Asset message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.verify|verify} messages.
+ * @param message Asset message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IAsset, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Asset;
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Asset;
+
+ /**
+ * Verifies an Asset message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Asset message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Asset
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Asset;
+
+ /**
+ * Creates a plain object from an Asset message. Also converts values to other types if specified.
+ * @param message Asset
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Asset, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Asset to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Asset
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Asset {
+
+ /** Properties of a SecurityCenterProperties. */
+ interface ISecurityCenterProperties {
+
+ /** SecurityCenterProperties resourceName */
+ resourceName?: (string|null);
+
+ /** SecurityCenterProperties resourceType */
+ resourceType?: (string|null);
+
+ /** SecurityCenterProperties resourceParent */
+ resourceParent?: (string|null);
+
+ /** SecurityCenterProperties resourceProject */
+ resourceProject?: (string|null);
+
+ /** SecurityCenterProperties resourceOwners */
+ resourceOwners?: (string[]|null);
+
+ /** SecurityCenterProperties resourceDisplayName */
+ resourceDisplayName?: (string|null);
+
+ /** SecurityCenterProperties resourceParentDisplayName */
+ resourceParentDisplayName?: (string|null);
+
+ /** SecurityCenterProperties resourceProjectDisplayName */
+ resourceProjectDisplayName?: (string|null);
+
+ /** SecurityCenterProperties folders */
+ folders?: (google.cloud.securitycenter.v1.IFolder[]|null);
+ }
+
+ /** Represents a SecurityCenterProperties. */
+ class SecurityCenterProperties implements ISecurityCenterProperties {
+
+ /**
+ * Constructs a new SecurityCenterProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties);
+
+ /** SecurityCenterProperties resourceName. */
+ public resourceName: string;
+
+ /** SecurityCenterProperties resourceType. */
+ public resourceType: string;
+
+ /** SecurityCenterProperties resourceParent. */
+ public resourceParent: string;
+
+ /** SecurityCenterProperties resourceProject. */
+ public resourceProject: string;
+
+ /** SecurityCenterProperties resourceOwners. */
+ public resourceOwners: string[];
+
+ /** SecurityCenterProperties resourceDisplayName. */
+ public resourceDisplayName: string;
+
+ /** SecurityCenterProperties resourceParentDisplayName. */
+ public resourceParentDisplayName: string;
+
+ /** SecurityCenterProperties resourceProjectDisplayName. */
+ public resourceProjectDisplayName: string;
+
+ /** SecurityCenterProperties folders. */
+ public folders: google.cloud.securitycenter.v1.IFolder[];
+
+ /**
+ * Creates a new SecurityCenterProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SecurityCenterProperties instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties): google.cloud.securitycenter.v1.Asset.SecurityCenterProperties;
+
+ /**
+ * Encodes the specified SecurityCenterProperties message. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @param message SecurityCenterProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SecurityCenterProperties message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @param message SecurityCenterProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Asset.SecurityCenterProperties;
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Asset.SecurityCenterProperties;
+
+ /**
+ * Verifies a SecurityCenterProperties message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SecurityCenterProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SecurityCenterProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Asset.SecurityCenterProperties;
+
+ /**
+ * Creates a plain object from a SecurityCenterProperties message. Also converts values to other types if specified.
+ * @param message SecurityCenterProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Asset.SecurityCenterProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SecurityCenterProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SecurityCenterProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IamPolicy. */
+ interface IIamPolicy {
+
+ /** IamPolicy policyBlob */
+ policyBlob?: (string|null);
+ }
+
+ /** Represents an IamPolicy. */
+ class IamPolicy implements IIamPolicy {
+
+ /**
+ * Constructs a new IamPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Asset.IIamPolicy);
+
+ /** IamPolicy policyBlob. */
+ public policyBlob: string;
+
+ /**
+ * Creates a new IamPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IamPolicy instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Asset.IIamPolicy): google.cloud.securitycenter.v1.Asset.IamPolicy;
+
+ /**
+ * Encodes the specified IamPolicy message. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.IamPolicy.verify|verify} messages.
+ * @param message IamPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Asset.IIamPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IamPolicy message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.IamPolicy.verify|verify} messages.
+ * @param message IamPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Asset.IIamPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IamPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IamPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Asset.IamPolicy;
+
+ /**
+ * Decodes an IamPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IamPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Asset.IamPolicy;
+
+ /**
+ * Verifies an IamPolicy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an IamPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IamPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Asset.IamPolicy;
+
+ /**
+ * Creates a plain object from an IamPolicy message. Also converts values to other types if specified.
+ * @param message IamPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Asset.IamPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IamPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IamPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Folder. */
+ interface IFolder {
+
+ /** Folder resourceFolder */
+ resourceFolder?: (string|null);
+
+ /** Folder resourceFolderDisplayName */
+ resourceFolderDisplayName?: (string|null);
+ }
+
+ /** Represents a Folder. */
+ class Folder implements IFolder {
+
+ /**
+ * Constructs a new Folder.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IFolder);
+
+ /** Folder resourceFolder. */
+ public resourceFolder: string;
+
+ /** Folder resourceFolderDisplayName. */
+ public resourceFolderDisplayName: string;
+
+ /**
+ * Creates a new Folder instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Folder instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IFolder): google.cloud.securitycenter.v1.Folder;
+
+ /**
+ * Encodes the specified Folder message. Does not implicitly {@link google.cloud.securitycenter.v1.Folder.verify|verify} messages.
+ * @param message Folder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IFolder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Folder message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Folder.verify|verify} messages.
+ * @param message Folder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IFolder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Folder message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Folder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Folder;
+
+ /**
+ * Decodes a Folder message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Folder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Folder;
+
+ /**
+ * Verifies a Folder message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Folder message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Folder
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Folder;
+
+ /**
+ * Creates a plain object from a Folder message. Also converts values to other types if specified.
+ * @param message Folder
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Folder, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Folder to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Folder
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SecurityMarks. */
+ interface ISecurityMarks {
+
+ /** SecurityMarks name */
+ name?: (string|null);
+
+ /** SecurityMarks marks */
+ marks?: ({ [k: string]: string }|null);
+
+ /** SecurityMarks canonicalName */
+ canonicalName?: (string|null);
+ }
+
+ /** Represents a SecurityMarks. */
+ class SecurityMarks implements ISecurityMarks {
+
+ /**
+ * Constructs a new SecurityMarks.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ISecurityMarks);
+
+ /** SecurityMarks name. */
+ public name: string;
+
+ /** SecurityMarks marks. */
+ public marks: { [k: string]: string };
+
+ /** SecurityMarks canonicalName. */
+ public canonicalName: string;
+
+ /**
+ * Creates a new SecurityMarks instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SecurityMarks instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ISecurityMarks): google.cloud.securitycenter.v1.SecurityMarks;
+
+ /**
+ * Encodes the specified SecurityMarks message. Does not implicitly {@link google.cloud.securitycenter.v1.SecurityMarks.verify|verify} messages.
+ * @param message SecurityMarks message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ISecurityMarks, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SecurityMarks message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.SecurityMarks.verify|verify} messages.
+ * @param message SecurityMarks message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ISecurityMarks, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.SecurityMarks;
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.SecurityMarks;
+
+ /**
+ * Verifies a SecurityMarks message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SecurityMarks message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SecurityMarks
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.SecurityMarks;
+
+ /**
+ * Creates a plain object from a SecurityMarks message. Also converts values to other types if specified.
+ * @param message SecurityMarks
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.SecurityMarks, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SecurityMarks to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SecurityMarks
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BigQueryExport. */
+ interface IBigQueryExport {
+
+ /** BigQueryExport name */
+ name?: (string|null);
+
+ /** BigQueryExport description */
+ description?: (string|null);
+
+ /** BigQueryExport filter */
+ filter?: (string|null);
+
+ /** BigQueryExport dataset */
+ dataset?: (string|null);
+
+ /** BigQueryExport createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** BigQueryExport updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** BigQueryExport mostRecentEditor */
+ mostRecentEditor?: (string|null);
+
+ /** BigQueryExport principal */
+ principal?: (string|null);
+ }
+
+ /** Represents a BigQueryExport. */
+ class BigQueryExport implements IBigQueryExport {
+
+ /**
+ * Constructs a new BigQueryExport.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IBigQueryExport);
+
+ /** BigQueryExport name. */
+ public name: string;
+
+ /** BigQueryExport description. */
+ public description: string;
+
+ /** BigQueryExport filter. */
+ public filter: string;
+
+ /** BigQueryExport dataset. */
+ public dataset: string;
+
+ /** BigQueryExport createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** BigQueryExport updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** BigQueryExport mostRecentEditor. */
+ public mostRecentEditor: string;
+
+ /** BigQueryExport principal. */
+ public principal: string;
+
+ /**
+ * Creates a new BigQueryExport instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BigQueryExport instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IBigQueryExport): google.cloud.securitycenter.v1.BigQueryExport;
+
+ /**
+ * Encodes the specified BigQueryExport message. Does not implicitly {@link google.cloud.securitycenter.v1.BigQueryExport.verify|verify} messages.
+ * @param message BigQueryExport message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IBigQueryExport, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BigQueryExport message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.BigQueryExport.verify|verify} messages.
+ * @param message BigQueryExport message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IBigQueryExport, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BigQueryExport message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BigQueryExport
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.BigQueryExport;
+
+ /**
+ * Decodes a BigQueryExport message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BigQueryExport
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.BigQueryExport;
+
+ /**
+ * Verifies a BigQueryExport message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BigQueryExport message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BigQueryExport
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.BigQueryExport;
+
+ /**
+ * Creates a plain object from a BigQueryExport message. Also converts values to other types if specified.
+ * @param message BigQueryExport
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.BigQueryExport, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BigQueryExport to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BigQueryExport
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Compliance. */
+ interface ICompliance {
+
+ /** Compliance standard */
+ standard?: (string|null);
+
+ /** Compliance version */
+ version?: (string|null);
+
+ /** Compliance ids */
+ ids?: (string[]|null);
+ }
+
+ /** Represents a Compliance. */
+ class Compliance implements ICompliance {
+
+ /**
+ * Constructs a new Compliance.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICompliance);
+
+ /** Compliance standard. */
+ public standard: string;
+
+ /** Compliance version. */
+ public version: string;
+
+ /** Compliance ids. */
+ public ids: string[];
+
+ /**
+ * Creates a new Compliance instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Compliance instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICompliance): google.cloud.securitycenter.v1.Compliance;
+
+ /**
+ * Encodes the specified Compliance message. Does not implicitly {@link google.cloud.securitycenter.v1.Compliance.verify|verify} messages.
+ * @param message Compliance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICompliance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Compliance message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Compliance.verify|verify} messages.
+ * @param message Compliance message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICompliance, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Compliance message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Compliance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Compliance;
+
+ /**
+ * Decodes a Compliance message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Compliance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Compliance;
+
+ /**
+ * Verifies a Compliance message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Compliance message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Compliance
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Compliance;
+
+ /**
+ * Creates a plain object from a Compliance message. Also converts values to other types if specified.
+ * @param message Compliance
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Compliance, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Compliance to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Compliance
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Connection. */
+ interface IConnection {
+
+ /** Connection destinationIp */
+ destinationIp?: (string|null);
+
+ /** Connection destinationPort */
+ destinationPort?: (number|null);
+
+ /** Connection sourceIp */
+ sourceIp?: (string|null);
+
+ /** Connection sourcePort */
+ sourcePort?: (number|null);
+
+ /** Connection protocol */
+ protocol?: (google.cloud.securitycenter.v1.Connection.Protocol|keyof typeof google.cloud.securitycenter.v1.Connection.Protocol|null);
+ }
+
+ /** Represents a Connection. */
+ class Connection implements IConnection {
+
+ /**
+ * Constructs a new Connection.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IConnection);
+
+ /** Connection destinationIp. */
+ public destinationIp: string;
+
+ /** Connection destinationPort. */
+ public destinationPort: number;
+
+ /** Connection sourceIp. */
+ public sourceIp: string;
+
+ /** Connection sourcePort. */
+ public sourcePort: number;
+
+ /** Connection protocol. */
+ public protocol: (google.cloud.securitycenter.v1.Connection.Protocol|keyof typeof google.cloud.securitycenter.v1.Connection.Protocol);
+
+ /**
+ * Creates a new Connection instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Connection instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IConnection): google.cloud.securitycenter.v1.Connection;
+
+ /**
+ * Encodes the specified Connection message. Does not implicitly {@link google.cloud.securitycenter.v1.Connection.verify|verify} messages.
+ * @param message Connection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IConnection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Connection message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Connection.verify|verify} messages.
+ * @param message Connection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IConnection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Connection message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Connection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Connection;
+
+ /**
+ * Decodes a Connection message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Connection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Connection;
+
+ /**
+ * Verifies a Connection message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Connection message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Connection
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Connection;
+
+ /**
+ * Creates a plain object from a Connection message. Also converts values to other types if specified.
+ * @param message Connection
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Connection, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Connection to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Connection
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Connection {
+
+ /** Protocol enum. */
+ enum Protocol {
+ PROTOCOL_UNSPECIFIED = 0,
+ ICMP = 1,
+ TCP = 6,
+ UDP = 17,
+ GRE = 47,
+ ESP = 50
+ }
+ }
+
+ /** Properties of a ContactDetails. */
+ interface IContactDetails {
+
+ /** ContactDetails contacts */
+ contacts?: (google.cloud.securitycenter.v1.IContact[]|null);
+ }
+
+ /** Represents a ContactDetails. */
+ class ContactDetails implements IContactDetails {
+
+ /**
+ * Constructs a new ContactDetails.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IContactDetails);
+
+ /** ContactDetails contacts. */
+ public contacts: google.cloud.securitycenter.v1.IContact[];
+
+ /**
+ * Creates a new ContactDetails instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ContactDetails instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IContactDetails): google.cloud.securitycenter.v1.ContactDetails;
+
+ /**
+ * Encodes the specified ContactDetails message. Does not implicitly {@link google.cloud.securitycenter.v1.ContactDetails.verify|verify} messages.
+ * @param message ContactDetails message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IContactDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ContactDetails message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ContactDetails.verify|verify} messages.
+ * @param message ContactDetails message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IContactDetails, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ContactDetails message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ContactDetails
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ContactDetails;
+
+ /**
+ * Decodes a ContactDetails message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ContactDetails
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ContactDetails;
+
+ /**
+ * Verifies a ContactDetails message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ContactDetails message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ContactDetails
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ContactDetails;
+
+ /**
+ * Creates a plain object from a ContactDetails message. Also converts values to other types if specified.
+ * @param message ContactDetails
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ContactDetails, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ContactDetails to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ContactDetails
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Contact. */
+ interface IContact {
+
+ /** Contact email */
+ email?: (string|null);
+ }
+
+ /** Represents a Contact. */
+ class Contact implements IContact {
+
+ /**
+ * Constructs a new Contact.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IContact);
+
+ /** Contact email. */
+ public email: string;
+
+ /**
+ * Creates a new Contact instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Contact instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IContact): google.cloud.securitycenter.v1.Contact;
+
+ /**
+ * Encodes the specified Contact message. Does not implicitly {@link google.cloud.securitycenter.v1.Contact.verify|verify} messages.
+ * @param message Contact message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IContact, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Contact message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Contact.verify|verify} messages.
+ * @param message Contact message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IContact, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Contact message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Contact
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Contact;
+
+ /**
+ * Decodes a Contact message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Contact
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Contact;
+
+ /**
+ * Verifies a Contact message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Contact message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Contact
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Contact;
+
+ /**
+ * Creates a plain object from a Contact message. Also converts values to other types if specified.
+ * @param message Contact
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Contact, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Contact to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Contact
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Container. */
+ interface IContainer {
+
+ /** Container name */
+ name?: (string|null);
+
+ /** Container uri */
+ uri?: (string|null);
+
+ /** Container imageId */
+ imageId?: (string|null);
+
+ /** Container labels */
+ labels?: (google.cloud.securitycenter.v1.ILabel[]|null);
+ }
+
+ /** Represents a Container. */
+ class Container implements IContainer {
+
+ /**
+ * Constructs a new Container.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IContainer);
+
+ /** Container name. */
+ public name: string;
+
+ /** Container uri. */
+ public uri: string;
+
+ /** Container imageId. */
+ public imageId: string;
+
+ /** Container labels. */
+ public labels: google.cloud.securitycenter.v1.ILabel[];
+
+ /**
+ * Creates a new Container instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Container instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IContainer): google.cloud.securitycenter.v1.Container;
+
+ /**
+ * Encodes the specified Container message. Does not implicitly {@link google.cloud.securitycenter.v1.Container.verify|verify} messages.
+ * @param message Container message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IContainer, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Container message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Container.verify|verify} messages.
+ * @param message Container message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IContainer, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Container message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Container
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Container;
+
+ /**
+ * Decodes a Container message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Container
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Container;
+
+ /**
+ * Verifies a Container message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Container message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Container
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Container;
+
+ /**
+ * Creates a plain object from a Container message. Also converts values to other types if specified.
+ * @param message Container
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Container, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Container to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Container
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Label. */
+ interface ILabel {
+
+ /** Label name */
+ name?: (string|null);
+
+ /** Label value */
+ value?: (string|null);
+ }
+
+ /** Represents a Label. */
+ class Label implements ILabel {
+
+ /**
+ * Constructs a new Label.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ILabel);
+
+ /** Label name. */
+ public name: string;
+
+ /** Label value. */
+ public value: string;
+
+ /**
+ * Creates a new Label instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Label instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ILabel): google.cloud.securitycenter.v1.Label;
+
+ /**
+ * Encodes the specified Label message. Does not implicitly {@link google.cloud.securitycenter.v1.Label.verify|verify} messages.
+ * @param message Label message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ILabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Label message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Label.verify|verify} messages.
+ * @param message Label message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ILabel, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Label message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Label
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Label;
+
+ /**
+ * Decodes a Label message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Label
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Label;
+
+ /**
+ * Verifies a Label message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Label message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Label
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Label;
+
+ /**
+ * Creates a plain object from a Label message. Also converts values to other types if specified.
+ * @param message Label
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Label, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Label to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Label
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Database. */
+ interface IDatabase {
+
+ /** Database name */
+ name?: (string|null);
+
+ /** Database displayName */
+ displayName?: (string|null);
+
+ /** Database userName */
+ userName?: (string|null);
+
+ /** Database query */
+ query?: (string|null);
+
+ /** Database grantees */
+ grantees?: (string[]|null);
+ }
+
+ /** Represents a Database. */
+ class Database implements IDatabase {
+
+ /**
+ * Constructs a new Database.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IDatabase);
+
+ /** Database name. */
+ public name: string;
+
+ /** Database displayName. */
+ public displayName: string;
+
+ /** Database userName. */
+ public userName: string;
+
+ /** Database query. */
+ public query: string;
+
+ /** Database grantees. */
+ public grantees: string[];
+
+ /**
+ * Creates a new Database instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Database instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IDatabase): google.cloud.securitycenter.v1.Database;
+
+ /**
+ * Encodes the specified Database message. Does not implicitly {@link google.cloud.securitycenter.v1.Database.verify|verify} messages.
+ * @param message Database message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IDatabase, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Database message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Database.verify|verify} messages.
+ * @param message Database message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IDatabase, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Database message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Database
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Database;
+
+ /**
+ * Decodes a Database message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Database
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Database;
+
+ /**
+ * Verifies a Database message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Database message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Database
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Database;
+
+ /**
+ * Creates a plain object from a Database message. Also converts values to other types if specified.
+ * @param message Database
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Database, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Database to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Database
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Exfiltration. */
+ interface IExfiltration {
+
+ /** Exfiltration sources */
+ sources?: (google.cloud.securitycenter.v1.IExfilResource[]|null);
+
+ /** Exfiltration targets */
+ targets?: (google.cloud.securitycenter.v1.IExfilResource[]|null);
+ }
+
+ /** Represents an Exfiltration. */
+ class Exfiltration implements IExfiltration {
+
+ /**
+ * Constructs a new Exfiltration.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IExfiltration);
+
+ /** Exfiltration sources. */
+ public sources: google.cloud.securitycenter.v1.IExfilResource[];
+
+ /** Exfiltration targets. */
+ public targets: google.cloud.securitycenter.v1.IExfilResource[];
+
+ /**
+ * Creates a new Exfiltration instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Exfiltration instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IExfiltration): google.cloud.securitycenter.v1.Exfiltration;
+
+ /**
+ * Encodes the specified Exfiltration message. Does not implicitly {@link google.cloud.securitycenter.v1.Exfiltration.verify|verify} messages.
+ * @param message Exfiltration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IExfiltration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Exfiltration message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Exfiltration.verify|verify} messages.
+ * @param message Exfiltration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IExfiltration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Exfiltration message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Exfiltration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Exfiltration;
+
+ /**
+ * Decodes an Exfiltration message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Exfiltration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Exfiltration;
+
+ /**
+ * Verifies an Exfiltration message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Exfiltration message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Exfiltration
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Exfiltration;
+
+ /**
+ * Creates a plain object from an Exfiltration message. Also converts values to other types if specified.
+ * @param message Exfiltration
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Exfiltration, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Exfiltration to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Exfiltration
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ExfilResource. */
+ interface IExfilResource {
+
+ /** ExfilResource name */
+ name?: (string|null);
+
+ /** ExfilResource components */
+ components?: (string[]|null);
+ }
+
+ /** Represents an ExfilResource. */
+ class ExfilResource implements IExfilResource {
+
+ /**
+ * Constructs a new ExfilResource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IExfilResource);
+
+ /** ExfilResource name. */
+ public name: string;
+
+ /** ExfilResource components. */
+ public components: string[];
+
+ /**
+ * Creates a new ExfilResource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExfilResource instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IExfilResource): google.cloud.securitycenter.v1.ExfilResource;
+
+ /**
+ * Encodes the specified ExfilResource message. Does not implicitly {@link google.cloud.securitycenter.v1.ExfilResource.verify|verify} messages.
+ * @param message ExfilResource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IExfilResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExfilResource message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ExfilResource.verify|verify} messages.
+ * @param message ExfilResource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IExfilResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExfilResource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExfilResource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ExfilResource;
+
+ /**
+ * Decodes an ExfilResource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExfilResource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ExfilResource;
+
+ /**
+ * Verifies an ExfilResource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExfilResource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExfilResource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ExfilResource;
+
+ /**
+ * Creates a plain object from an ExfilResource message. Also converts values to other types if specified.
+ * @param message ExfilResource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ExfilResource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExfilResource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExfilResource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an ExternalSystem. */
+ interface IExternalSystem {
+
+ /** ExternalSystem name */
+ name?: (string|null);
+
+ /** ExternalSystem assignees */
+ assignees?: (string[]|null);
+
+ /** ExternalSystem externalUid */
+ externalUid?: (string|null);
+
+ /** ExternalSystem status */
+ status?: (string|null);
+
+ /** ExternalSystem externalSystemUpdateTime */
+ externalSystemUpdateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an ExternalSystem. */
+ class ExternalSystem implements IExternalSystem {
+
+ /**
+ * Constructs a new ExternalSystem.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IExternalSystem);
+
+ /** ExternalSystem name. */
+ public name: string;
+
+ /** ExternalSystem assignees. */
+ public assignees: string[];
+
+ /** ExternalSystem externalUid. */
+ public externalUid: string;
+
+ /** ExternalSystem status. */
+ public status: string;
+
+ /** ExternalSystem externalSystemUpdateTime. */
+ public externalSystemUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new ExternalSystem instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExternalSystem instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IExternalSystem): google.cloud.securitycenter.v1.ExternalSystem;
+
+ /**
+ * Encodes the specified ExternalSystem message. Does not implicitly {@link google.cloud.securitycenter.v1.ExternalSystem.verify|verify} messages.
+ * @param message ExternalSystem message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IExternalSystem, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExternalSystem message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ExternalSystem.verify|verify} messages.
+ * @param message ExternalSystem message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IExternalSystem, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExternalSystem message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExternalSystem
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ExternalSystem;
+
+ /**
+ * Decodes an ExternalSystem message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExternalSystem
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ExternalSystem;
+
+ /**
+ * Verifies an ExternalSystem message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExternalSystem message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExternalSystem
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ExternalSystem;
+
+ /**
+ * Creates a plain object from an ExternalSystem message. Also converts values to other types if specified.
+ * @param message ExternalSystem
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ExternalSystem, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExternalSystem to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExternalSystem
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a File. */
+ interface IFile {
+
+ /** File path */
+ path?: (string|null);
+
+ /** File size */
+ size?: (number|Long|string|null);
+
+ /** File sha256 */
+ sha256?: (string|null);
+
+ /** File hashedSize */
+ hashedSize?: (number|Long|string|null);
+
+ /** File partiallyHashed */
+ partiallyHashed?: (boolean|null);
+
+ /** File contents */
+ contents?: (string|null);
+ }
+
+ /** Represents a File. */
+ class File implements IFile {
+
+ /**
+ * Constructs a new File.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IFile);
+
+ /** File path. */
+ public path: string;
+
+ /** File size. */
+ public size: (number|Long|string);
+
+ /** File sha256. */
+ public sha256: string;
+
+ /** File hashedSize. */
+ public hashedSize: (number|Long|string);
+
+ /** File partiallyHashed. */
+ public partiallyHashed: boolean;
+
+ /** File contents. */
+ public contents: string;
+
+ /**
+ * Creates a new File instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns File instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IFile): google.cloud.securitycenter.v1.File;
+
+ /**
+ * Encodes the specified File message. Does not implicitly {@link google.cloud.securitycenter.v1.File.verify|verify} messages.
+ * @param message File message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IFile, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified File message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.File.verify|verify} messages.
+ * @param message File message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IFile, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a File message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.File;
+
+ /**
+ * Decodes a File message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.File;
+
+ /**
+ * Verifies a File message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a File message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns File
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.File;
+
+ /**
+ * Creates a plain object from a File message. Also converts values to other types if specified.
+ * @param message File
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.File, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this File to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for File
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Finding. */
+ interface IFinding {
+
+ /** Finding name */
+ name?: (string|null);
+
+ /** Finding parent */
+ parent?: (string|null);
+
+ /** Finding resourceName */
+ resourceName?: (string|null);
+
+ /** Finding state */
+ state?: (google.cloud.securitycenter.v1.Finding.State|keyof typeof google.cloud.securitycenter.v1.Finding.State|null);
+
+ /** Finding category */
+ category?: (string|null);
+
+ /** Finding externalUri */
+ externalUri?: (string|null);
+
+ /** Finding sourceProperties */
+ sourceProperties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** Finding securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1.ISecurityMarks|null);
+
+ /** Finding eventTime */
+ eventTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding severity */
+ severity?: (google.cloud.securitycenter.v1.Finding.Severity|keyof typeof google.cloud.securitycenter.v1.Finding.Severity|null);
+
+ /** Finding canonicalName */
+ canonicalName?: (string|null);
+
+ /** Finding mute */
+ mute?: (google.cloud.securitycenter.v1.Finding.Mute|keyof typeof google.cloud.securitycenter.v1.Finding.Mute|null);
+
+ /** Finding findingClass */
+ findingClass?: (google.cloud.securitycenter.v1.Finding.FindingClass|keyof typeof google.cloud.securitycenter.v1.Finding.FindingClass|null);
+
+ /** Finding indicator */
+ indicator?: (google.cloud.securitycenter.v1.IIndicator|null);
+
+ /** Finding vulnerability */
+ vulnerability?: (google.cloud.securitycenter.v1.IVulnerability|null);
+
+ /** Finding muteUpdateTime */
+ muteUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding externalSystems */
+ externalSystems?: ({ [k: string]: google.cloud.securitycenter.v1.IExternalSystem }|null);
+
+ /** Finding mitreAttack */
+ mitreAttack?: (google.cloud.securitycenter.v1.IMitreAttack|null);
+
+ /** Finding access */
+ access?: (google.cloud.securitycenter.v1.IAccess|null);
+
+ /** Finding connections */
+ connections?: (google.cloud.securitycenter.v1.IConnection[]|null);
+
+ /** Finding muteInitiator */
+ muteInitiator?: (string|null);
+
+ /** Finding processes */
+ processes?: (google.cloud.securitycenter.v1.IProcess[]|null);
+
+ /** Finding contacts */
+ contacts?: ({ [k: string]: google.cloud.securitycenter.v1.IContactDetails }|null);
+
+ /** Finding compliances */
+ compliances?: (google.cloud.securitycenter.v1.ICompliance[]|null);
+
+ /** Finding parentDisplayName */
+ parentDisplayName?: (string|null);
+
+ /** Finding description */
+ description?: (string|null);
+
+ /** Finding exfiltration */
+ exfiltration?: (google.cloud.securitycenter.v1.IExfiltration|null);
+
+ /** Finding iamBindings */
+ iamBindings?: (google.cloud.securitycenter.v1.IIamBinding[]|null);
+
+ /** Finding nextSteps */
+ nextSteps?: (string|null);
+
+ /** Finding containers */
+ containers?: (google.cloud.securitycenter.v1.IContainer[]|null);
+
+ /** Finding kubernetes */
+ kubernetes?: (google.cloud.securitycenter.v1.IKubernetes|null);
+
+ /** Finding database */
+ database?: (google.cloud.securitycenter.v1.IDatabase|null);
+
+ /** Finding files */
+ files?: (google.cloud.securitycenter.v1.IFile[]|null);
+ }
+
+ /** Represents a Finding. */
+ class Finding implements IFinding {
+
+ /**
+ * Constructs a new Finding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IFinding);
+
+ /** Finding name. */
+ public name: string;
+
+ /** Finding parent. */
+ public parent: string;
+
+ /** Finding resourceName. */
+ public resourceName: string;
+
+ /** Finding state. */
+ public state: (google.cloud.securitycenter.v1.Finding.State|keyof typeof google.cloud.securitycenter.v1.Finding.State);
+
+ /** Finding category. */
+ public category: string;
+
+ /** Finding externalUri. */
+ public externalUri: string;
+
+ /** Finding sourceProperties. */
+ public sourceProperties: { [k: string]: google.protobuf.IValue };
+
+ /** Finding securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1.ISecurityMarks|null);
+
+ /** Finding eventTime. */
+ public eventTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding severity. */
+ public severity: (google.cloud.securitycenter.v1.Finding.Severity|keyof typeof google.cloud.securitycenter.v1.Finding.Severity);
+
+ /** Finding canonicalName. */
+ public canonicalName: string;
+
+ /** Finding mute. */
+ public mute: (google.cloud.securitycenter.v1.Finding.Mute|keyof typeof google.cloud.securitycenter.v1.Finding.Mute);
+
+ /** Finding findingClass. */
+ public findingClass: (google.cloud.securitycenter.v1.Finding.FindingClass|keyof typeof google.cloud.securitycenter.v1.Finding.FindingClass);
+
+ /** Finding indicator. */
+ public indicator?: (google.cloud.securitycenter.v1.IIndicator|null);
+
+ /** Finding vulnerability. */
+ public vulnerability?: (google.cloud.securitycenter.v1.IVulnerability|null);
+
+ /** Finding muteUpdateTime. */
+ public muteUpdateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding externalSystems. */
+ public externalSystems: { [k: string]: google.cloud.securitycenter.v1.IExternalSystem };
+
+ /** Finding mitreAttack. */
+ public mitreAttack?: (google.cloud.securitycenter.v1.IMitreAttack|null);
+
+ /** Finding access. */
+ public access?: (google.cloud.securitycenter.v1.IAccess|null);
+
+ /** Finding connections. */
+ public connections: google.cloud.securitycenter.v1.IConnection[];
+
+ /** Finding muteInitiator. */
+ public muteInitiator: string;
+
+ /** Finding processes. */
+ public processes: google.cloud.securitycenter.v1.IProcess[];
+
+ /** Finding contacts. */
+ public contacts: { [k: string]: google.cloud.securitycenter.v1.IContactDetails };
+
+ /** Finding compliances. */
+ public compliances: google.cloud.securitycenter.v1.ICompliance[];
+
+ /** Finding parentDisplayName. */
+ public parentDisplayName: string;
+
+ /** Finding description. */
+ public description: string;
+
+ /** Finding exfiltration. */
+ public exfiltration?: (google.cloud.securitycenter.v1.IExfiltration|null);
+
+ /** Finding iamBindings. */
+ public iamBindings: google.cloud.securitycenter.v1.IIamBinding[];
+
+ /** Finding nextSteps. */
+ public nextSteps: string;
+
+ /** Finding containers. */
+ public containers: google.cloud.securitycenter.v1.IContainer[];
+
+ /** Finding kubernetes. */
+ public kubernetes?: (google.cloud.securitycenter.v1.IKubernetes|null);
+
+ /** Finding database. */
+ public database?: (google.cloud.securitycenter.v1.IDatabase|null);
+
+ /** Finding files. */
+ public files: google.cloud.securitycenter.v1.IFile[];
+
+ /**
+ * Creates a new Finding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Finding instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IFinding): google.cloud.securitycenter.v1.Finding;
+
+ /**
+ * Encodes the specified Finding message. Does not implicitly {@link google.cloud.securitycenter.v1.Finding.verify|verify} messages.
+ * @param message Finding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IFinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Finding message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Finding.verify|verify} messages.
+ * @param message Finding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IFinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Finding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Finding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Finding;
+
+ /**
+ * Decodes a Finding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Finding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Finding;
+
+ /**
+ * Verifies a Finding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Finding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Finding
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Finding;
+
+ /**
+ * Creates a plain object from a Finding message. Also converts values to other types if specified.
+ * @param message Finding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Finding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Finding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Finding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Finding {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ ACTIVE = 1,
+ INACTIVE = 2
+ }
+
+ /** Severity enum. */
+ enum Severity {
+ SEVERITY_UNSPECIFIED = 0,
+ CRITICAL = 1,
+ HIGH = 2,
+ MEDIUM = 3,
+ LOW = 4
+ }
+
+ /** Mute enum. */
+ enum Mute {
+ MUTE_UNSPECIFIED = 0,
+ MUTED = 1,
+ UNMUTED = 2,
+ UNDEFINED = 4
+ }
+
+ /** FindingClass enum. */
+ enum FindingClass {
+ FINDING_CLASS_UNSPECIFIED = 0,
+ THREAT = 1,
+ VULNERABILITY = 2,
+ MISCONFIGURATION = 3,
+ OBSERVATION = 4,
+ SCC_ERROR = 5
+ }
+ }
+
+ /** Properties of an IamBinding. */
+ interface IIamBinding {
+
+ /** IamBinding action */
+ action?: (google.cloud.securitycenter.v1.IamBinding.Action|keyof typeof google.cloud.securitycenter.v1.IamBinding.Action|null);
+
+ /** IamBinding role */
+ role?: (string|null);
+
+ /** IamBinding member */
+ member?: (string|null);
+ }
+
+ /** Represents an IamBinding. */
+ class IamBinding implements IIamBinding {
+
+ /**
+ * Constructs a new IamBinding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IIamBinding);
+
+ /** IamBinding action. */
+ public action: (google.cloud.securitycenter.v1.IamBinding.Action|keyof typeof google.cloud.securitycenter.v1.IamBinding.Action);
+
+ /** IamBinding role. */
+ public role: string;
+
+ /** IamBinding member. */
+ public member: string;
+
+ /**
+ * Creates a new IamBinding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IamBinding instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IIamBinding): google.cloud.securitycenter.v1.IamBinding;
+
+ /**
+ * Encodes the specified IamBinding message. Does not implicitly {@link google.cloud.securitycenter.v1.IamBinding.verify|verify} messages.
+ * @param message IamBinding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IIamBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IamBinding message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.IamBinding.verify|verify} messages.
+ * @param message IamBinding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IIamBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IamBinding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IamBinding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.IamBinding;
+
+ /**
+ * Decodes an IamBinding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IamBinding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.IamBinding;
+
+ /**
+ * Verifies an IamBinding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an IamBinding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IamBinding
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.IamBinding;
+
+ /**
+ * Creates a plain object from an IamBinding message. Also converts values to other types if specified.
+ * @param message IamBinding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.IamBinding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IamBinding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IamBinding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace IamBinding {
+
+ /** Action enum. */
+ enum Action {
+ ACTION_UNSPECIFIED = 0,
+ ADD = 1,
+ REMOVE = 2
+ }
+ }
+
+ /** Properties of an Indicator. */
+ interface IIndicator {
+
+ /** Indicator ipAddresses */
+ ipAddresses?: (string[]|null);
+
+ /** Indicator domains */
+ domains?: (string[]|null);
+
+ /** Indicator signatures */
+ signatures?: (google.cloud.securitycenter.v1.Indicator.IProcessSignature[]|null);
+
+ /** Indicator uris */
+ uris?: (string[]|null);
+ }
+
+ /** Represents an Indicator. */
+ class Indicator implements IIndicator {
+
+ /**
+ * Constructs a new Indicator.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IIndicator);
+
+ /** Indicator ipAddresses. */
+ public ipAddresses: string[];
+
+ /** Indicator domains. */
+ public domains: string[];
+
+ /** Indicator signatures. */
+ public signatures: google.cloud.securitycenter.v1.Indicator.IProcessSignature[];
+
+ /** Indicator uris. */
+ public uris: string[];
+
+ /**
+ * Creates a new Indicator instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Indicator instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IIndicator): google.cloud.securitycenter.v1.Indicator;
+
+ /**
+ * Encodes the specified Indicator message. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.verify|verify} messages.
+ * @param message Indicator message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IIndicator, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Indicator message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.verify|verify} messages.
+ * @param message Indicator message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IIndicator, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Indicator message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Indicator
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Indicator;
+
+ /**
+ * Decodes an Indicator message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Indicator
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Indicator;
+
+ /**
+ * Verifies an Indicator message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Indicator message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Indicator
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Indicator;
+
+ /**
+ * Creates a plain object from an Indicator message. Also converts values to other types if specified.
+ * @param message Indicator
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Indicator, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Indicator to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Indicator
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Indicator {
+
+ /** Properties of a ProcessSignature. */
+ interface IProcessSignature {
+
+ /** ProcessSignature memoryHashSignature */
+ memoryHashSignature?: (google.cloud.securitycenter.v1.Indicator.ProcessSignature.IMemoryHashSignature|null);
+
+ /** ProcessSignature yaraRuleSignature */
+ yaraRuleSignature?: (google.cloud.securitycenter.v1.Indicator.ProcessSignature.IYaraRuleSignature|null);
+ }
+
+ /** Represents a ProcessSignature. */
+ class ProcessSignature implements IProcessSignature {
+
+ /**
+ * Constructs a new ProcessSignature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Indicator.IProcessSignature);
+
+ /** ProcessSignature memoryHashSignature. */
+ public memoryHashSignature?: (google.cloud.securitycenter.v1.Indicator.ProcessSignature.IMemoryHashSignature|null);
+
+ /** ProcessSignature yaraRuleSignature. */
+ public yaraRuleSignature?: (google.cloud.securitycenter.v1.Indicator.ProcessSignature.IYaraRuleSignature|null);
+
+ /** ProcessSignature signature. */
+ public signature?: ("memoryHashSignature"|"yaraRuleSignature");
+
+ /**
+ * Creates a new ProcessSignature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ProcessSignature instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Indicator.IProcessSignature): google.cloud.securitycenter.v1.Indicator.ProcessSignature;
+
+ /**
+ * Encodes the specified ProcessSignature message. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.verify|verify} messages.
+ * @param message ProcessSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Indicator.IProcessSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ProcessSignature message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.verify|verify} messages.
+ * @param message ProcessSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Indicator.IProcessSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ProcessSignature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ProcessSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Indicator.ProcessSignature;
+
+ /**
+ * Decodes a ProcessSignature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ProcessSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Indicator.ProcessSignature;
+
+ /**
+ * Verifies a ProcessSignature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ProcessSignature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ProcessSignature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Indicator.ProcessSignature;
+
+ /**
+ * Creates a plain object from a ProcessSignature message. Also converts values to other types if specified.
+ * @param message ProcessSignature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ProcessSignature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ProcessSignature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ProcessSignature {
+
+ /** Properties of a MemoryHashSignature. */
+ interface IMemoryHashSignature {
+
+ /** MemoryHashSignature binaryFamily */
+ binaryFamily?: (string|null);
+
+ /** MemoryHashSignature detections */
+ detections?: (google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.IDetection[]|null);
+ }
+
+ /** Represents a MemoryHashSignature. */
+ class MemoryHashSignature implements IMemoryHashSignature {
+
+ /**
+ * Constructs a new MemoryHashSignature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IMemoryHashSignature);
+
+ /** MemoryHashSignature binaryFamily. */
+ public binaryFamily: string;
+
+ /** MemoryHashSignature detections. */
+ public detections: google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.IDetection[];
+
+ /**
+ * Creates a new MemoryHashSignature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MemoryHashSignature instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IMemoryHashSignature): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature;
+
+ /**
+ * Encodes the specified MemoryHashSignature message. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.verify|verify} messages.
+ * @param message MemoryHashSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IMemoryHashSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MemoryHashSignature message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.verify|verify} messages.
+ * @param message MemoryHashSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IMemoryHashSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MemoryHashSignature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MemoryHashSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature;
+
+ /**
+ * Decodes a MemoryHashSignature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MemoryHashSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature;
+
+ /**
+ * Verifies a MemoryHashSignature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MemoryHashSignature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MemoryHashSignature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature;
+
+ /**
+ * Creates a plain object from a MemoryHashSignature message. Also converts values to other types if specified.
+ * @param message MemoryHashSignature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MemoryHashSignature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MemoryHashSignature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MemoryHashSignature {
+
+ /** Properties of a Detection. */
+ interface IDetection {
+
+ /** Detection binary */
+ binary?: (string|null);
+
+ /** Detection percentPagesMatched */
+ percentPagesMatched?: (number|null);
+ }
+
+ /** Represents a Detection. */
+ class Detection implements IDetection {
+
+ /**
+ * Constructs a new Detection.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.IDetection);
+
+ /** Detection binary. */
+ public binary: string;
+
+ /** Detection percentPagesMatched. */
+ public percentPagesMatched: number;
+
+ /**
+ * Creates a new Detection instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Detection instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.IDetection): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.Detection;
+
+ /**
+ * Encodes the specified Detection message. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.Detection.verify|verify} messages.
+ * @param message Detection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.IDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Detection message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.Detection.verify|verify} messages.
+ * @param message Detection message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.IDetection, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Detection message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Detection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.Detection;
+
+ /**
+ * Decodes a Detection message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Detection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.Detection;
+
+ /**
+ * Verifies a Detection message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Detection message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Detection
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.Detection;
+
+ /**
+ * Creates a plain object from a Detection message. Also converts values to other types if specified.
+ * @param message Detection
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.MemoryHashSignature.Detection, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Detection to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Detection
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a YaraRuleSignature. */
+ interface IYaraRuleSignature {
+
+ /** YaraRuleSignature yaraRule */
+ yaraRule?: (string|null);
+ }
+
+ /** Represents a YaraRuleSignature. */
+ class YaraRuleSignature implements IYaraRuleSignature {
+
+ /**
+ * Constructs a new YaraRuleSignature.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IYaraRuleSignature);
+
+ /** YaraRuleSignature yaraRule. */
+ public yaraRule: string;
+
+ /**
+ * Creates a new YaraRuleSignature instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns YaraRuleSignature instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IYaraRuleSignature): google.cloud.securitycenter.v1.Indicator.ProcessSignature.YaraRuleSignature;
+
+ /**
+ * Encodes the specified YaraRuleSignature message. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.YaraRuleSignature.verify|verify} messages.
+ * @param message YaraRuleSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IYaraRuleSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified YaraRuleSignature message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Indicator.ProcessSignature.YaraRuleSignature.verify|verify} messages.
+ * @param message YaraRuleSignature message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.IYaraRuleSignature, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a YaraRuleSignature message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns YaraRuleSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Indicator.ProcessSignature.YaraRuleSignature;
+
+ /**
+ * Decodes a YaraRuleSignature message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns YaraRuleSignature
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Indicator.ProcessSignature.YaraRuleSignature;
+
+ /**
+ * Verifies a YaraRuleSignature message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a YaraRuleSignature message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns YaraRuleSignature
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Indicator.ProcessSignature.YaraRuleSignature;
+
+ /**
+ * Creates a plain object from a YaraRuleSignature message. Also converts values to other types if specified.
+ * @param message YaraRuleSignature
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Indicator.ProcessSignature.YaraRuleSignature, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this YaraRuleSignature to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for YaraRuleSignature
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Properties of a Kubernetes. */
+ interface IKubernetes {
+
+ /** Kubernetes pods */
+ pods?: (google.cloud.securitycenter.v1.Kubernetes.IPod[]|null);
+
+ /** Kubernetes nodes */
+ nodes?: (google.cloud.securitycenter.v1.Kubernetes.INode[]|null);
+
+ /** Kubernetes nodePools */
+ nodePools?: (google.cloud.securitycenter.v1.Kubernetes.INodePool[]|null);
+
+ /** Kubernetes roles */
+ roles?: (google.cloud.securitycenter.v1.Kubernetes.IRole[]|null);
+
+ /** Kubernetes bindings */
+ bindings?: (google.cloud.securitycenter.v1.Kubernetes.IBinding[]|null);
+
+ /** Kubernetes accessReviews */
+ accessReviews?: (google.cloud.securitycenter.v1.Kubernetes.IAccessReview[]|null);
+ }
+
+ /** Represents a Kubernetes. */
+ class Kubernetes implements IKubernetes {
+
+ /**
+ * Constructs a new Kubernetes.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IKubernetes);
+
+ /** Kubernetes pods. */
+ public pods: google.cloud.securitycenter.v1.Kubernetes.IPod[];
+
+ /** Kubernetes nodes. */
+ public nodes: google.cloud.securitycenter.v1.Kubernetes.INode[];
+
+ /** Kubernetes nodePools. */
+ public nodePools: google.cloud.securitycenter.v1.Kubernetes.INodePool[];
+
+ /** Kubernetes roles. */
+ public roles: google.cloud.securitycenter.v1.Kubernetes.IRole[];
+
+ /** Kubernetes bindings. */
+ public bindings: google.cloud.securitycenter.v1.Kubernetes.IBinding[];
+
+ /** Kubernetes accessReviews. */
+ public accessReviews: google.cloud.securitycenter.v1.Kubernetes.IAccessReview[];
+
+ /**
+ * Creates a new Kubernetes instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Kubernetes instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IKubernetes): google.cloud.securitycenter.v1.Kubernetes;
+
+ /**
+ * Encodes the specified Kubernetes message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.verify|verify} messages.
+ * @param message Kubernetes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IKubernetes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Kubernetes message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.verify|verify} messages.
+ * @param message Kubernetes message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IKubernetes, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Kubernetes message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Kubernetes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes;
+
+ /**
+ * Decodes a Kubernetes message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Kubernetes
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes;
+
+ /**
+ * Verifies a Kubernetes message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Kubernetes message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Kubernetes
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes;
+
+ /**
+ * Creates a plain object from a Kubernetes message. Also converts values to other types if specified.
+ * @param message Kubernetes
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Kubernetes to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Kubernetes
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Kubernetes {
+
+ /** Properties of a Pod. */
+ interface IPod {
+
+ /** Pod ns */
+ ns?: (string|null);
+
+ /** Pod name */
+ name?: (string|null);
+
+ /** Pod labels */
+ labels?: (google.cloud.securitycenter.v1.ILabel[]|null);
+
+ /** Pod containers */
+ containers?: (google.cloud.securitycenter.v1.IContainer[]|null);
+ }
+
+ /** Represents a Pod. */
+ class Pod implements IPod {
+
+ /**
+ * Constructs a new Pod.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Kubernetes.IPod);
+
+ /** Pod ns. */
+ public ns: string;
+
+ /** Pod name. */
+ public name: string;
+
+ /** Pod labels. */
+ public labels: google.cloud.securitycenter.v1.ILabel[];
+
+ /** Pod containers. */
+ public containers: google.cloud.securitycenter.v1.IContainer[];
+
+ /**
+ * Creates a new Pod instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Pod instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Kubernetes.IPod): google.cloud.securitycenter.v1.Kubernetes.Pod;
+
+ /**
+ * Encodes the specified Pod message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Pod.verify|verify} messages.
+ * @param message Pod message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Kubernetes.IPod, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Pod message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Pod.verify|verify} messages.
+ * @param message Pod message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Kubernetes.IPod, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Pod message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Pod
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes.Pod;
+
+ /**
+ * Decodes a Pod message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Pod
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes.Pod;
+
+ /**
+ * Verifies a Pod message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Pod message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Pod
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes.Pod;
+
+ /**
+ * Creates a plain object from a Pod message. Also converts values to other types if specified.
+ * @param message Pod
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes.Pod, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Pod to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Pod
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Node. */
+ interface INode {
+
+ /** Node name */
+ name?: (string|null);
+ }
+
+ /** Represents a Node. */
+ class Node implements INode {
+
+ /**
+ * Constructs a new Node.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Kubernetes.INode);
+
+ /** Node name. */
+ public name: string;
+
+ /**
+ * Creates a new Node instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Node instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Kubernetes.INode): google.cloud.securitycenter.v1.Kubernetes.Node;
+
+ /**
+ * Encodes the specified Node message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Node.verify|verify} messages.
+ * @param message Node message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Kubernetes.INode, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Node message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Node.verify|verify} messages.
+ * @param message Node message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Kubernetes.INode, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Node message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Node
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes.Node;
+
+ /**
+ * Decodes a Node message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Node
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes.Node;
+
+ /**
+ * Verifies a Node message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Node message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Node
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes.Node;
+
+ /**
+ * Creates a plain object from a Node message. Also converts values to other types if specified.
+ * @param message Node
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes.Node, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Node to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Node
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NodePool. */
+ interface INodePool {
+
+ /** NodePool name */
+ name?: (string|null);
+
+ /** NodePool nodes */
+ nodes?: (google.cloud.securitycenter.v1.Kubernetes.INode[]|null);
+ }
+
+ /** Represents a NodePool. */
+ class NodePool implements INodePool {
+
+ /**
+ * Constructs a new NodePool.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Kubernetes.INodePool);
+
+ /** NodePool name. */
+ public name: string;
+
+ /** NodePool nodes. */
+ public nodes: google.cloud.securitycenter.v1.Kubernetes.INode[];
+
+ /**
+ * Creates a new NodePool instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NodePool instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Kubernetes.INodePool): google.cloud.securitycenter.v1.Kubernetes.NodePool;
+
+ /**
+ * Encodes the specified NodePool message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.NodePool.verify|verify} messages.
+ * @param message NodePool message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Kubernetes.INodePool, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NodePool message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.NodePool.verify|verify} messages.
+ * @param message NodePool message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Kubernetes.INodePool, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NodePool message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NodePool
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes.NodePool;
+
+ /**
+ * Decodes a NodePool message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NodePool
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes.NodePool;
+
+ /**
+ * Verifies a NodePool message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NodePool message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NodePool
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes.NodePool;
+
+ /**
+ * Creates a plain object from a NodePool message. Also converts values to other types if specified.
+ * @param message NodePool
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes.NodePool, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NodePool to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NodePool
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Role. */
+ interface IRole {
+
+ /** Role kind */
+ kind?: (google.cloud.securitycenter.v1.Kubernetes.Role.Kind|keyof typeof google.cloud.securitycenter.v1.Kubernetes.Role.Kind|null);
+
+ /** Role ns */
+ ns?: (string|null);
+
+ /** Role name */
+ name?: (string|null);
+ }
+
+ /** Represents a Role. */
+ class Role implements IRole {
+
+ /**
+ * Constructs a new Role.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Kubernetes.IRole);
+
+ /** Role kind. */
+ public kind: (google.cloud.securitycenter.v1.Kubernetes.Role.Kind|keyof typeof google.cloud.securitycenter.v1.Kubernetes.Role.Kind);
+
+ /** Role ns. */
+ public ns: string;
+
+ /** Role name. */
+ public name: string;
+
+ /**
+ * Creates a new Role instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Role instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Kubernetes.IRole): google.cloud.securitycenter.v1.Kubernetes.Role;
+
+ /**
+ * Encodes the specified Role message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Role.verify|verify} messages.
+ * @param message Role message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Kubernetes.IRole, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Role message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Role.verify|verify} messages.
+ * @param message Role message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Kubernetes.IRole, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Role message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Role
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes.Role;
+
+ /**
+ * Decodes a Role message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Role
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes.Role;
+
+ /**
+ * Verifies a Role message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Role message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Role
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes.Role;
+
+ /**
+ * Creates a plain object from a Role message. Also converts values to other types if specified.
+ * @param message Role
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes.Role, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Role to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Role
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Role {
+
+ /** Kind enum. */
+ enum Kind {
+ KIND_UNSPECIFIED = 0,
+ ROLE = 1,
+ CLUSTER_ROLE = 2
+ }
+ }
+
+ /** Properties of a Binding. */
+ interface IBinding {
+
+ /** Binding ns */
+ ns?: (string|null);
+
+ /** Binding name */
+ name?: (string|null);
+
+ /** Binding role */
+ role?: (google.cloud.securitycenter.v1.Kubernetes.IRole|null);
+
+ /** Binding subjects */
+ subjects?: (google.cloud.securitycenter.v1.Kubernetes.ISubject[]|null);
+ }
+
+ /** Represents a Binding. */
+ class Binding implements IBinding {
+
+ /**
+ * Constructs a new Binding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Kubernetes.IBinding);
+
+ /** Binding ns. */
+ public ns: string;
+
+ /** Binding name. */
+ public name: string;
+
+ /** Binding role. */
+ public role?: (google.cloud.securitycenter.v1.Kubernetes.IRole|null);
+
+ /** Binding subjects. */
+ public subjects: google.cloud.securitycenter.v1.Kubernetes.ISubject[];
+
+ /**
+ * Creates a new Binding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Binding instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Kubernetes.IBinding): google.cloud.securitycenter.v1.Kubernetes.Binding;
+
+ /**
+ * Encodes the specified Binding message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Kubernetes.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Binding message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Kubernetes.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes.Binding;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes.Binding;
+
+ /**
+ * Verifies a Binding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Binding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Binding
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes.Binding;
+
+ /**
+ * Creates a plain object from a Binding message. Also converts values to other types if specified.
+ * @param message Binding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes.Binding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Binding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Binding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Subject. */
+ interface ISubject {
+
+ /** Subject kind */
+ kind?: (google.cloud.securitycenter.v1.Kubernetes.Subject.AuthType|keyof typeof google.cloud.securitycenter.v1.Kubernetes.Subject.AuthType|null);
+
+ /** Subject ns */
+ ns?: (string|null);
+
+ /** Subject name */
+ name?: (string|null);
+ }
+
+ /** Represents a Subject. */
+ class Subject implements ISubject {
+
+ /**
+ * Constructs a new Subject.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Kubernetes.ISubject);
+
+ /** Subject kind. */
+ public kind: (google.cloud.securitycenter.v1.Kubernetes.Subject.AuthType|keyof typeof google.cloud.securitycenter.v1.Kubernetes.Subject.AuthType);
+
+ /** Subject ns. */
+ public ns: string;
+
+ /** Subject name. */
+ public name: string;
+
+ /**
+ * Creates a new Subject instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Subject instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Kubernetes.ISubject): google.cloud.securitycenter.v1.Kubernetes.Subject;
+
+ /**
+ * Encodes the specified Subject message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Subject.verify|verify} messages.
+ * @param message Subject message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Kubernetes.ISubject, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Subject message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.Subject.verify|verify} messages.
+ * @param message Subject message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Kubernetes.ISubject, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Subject message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Subject
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes.Subject;
+
+ /**
+ * Decodes a Subject message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Subject
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes.Subject;
+
+ /**
+ * Verifies a Subject message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Subject message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Subject
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes.Subject;
+
+ /**
+ * Creates a plain object from a Subject message. Also converts values to other types if specified.
+ * @param message Subject
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes.Subject, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Subject to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Subject
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Subject {
+
+ /** AuthType enum. */
+ enum AuthType {
+ AUTH_TYPE_UNSPECIFIED = 0,
+ USER = 1,
+ SERVICEACCOUNT = 2,
+ GROUP = 3
+ }
+ }
+
+ /** Properties of an AccessReview. */
+ interface IAccessReview {
+
+ /** AccessReview group */
+ group?: (string|null);
+
+ /** AccessReview ns */
+ ns?: (string|null);
+
+ /** AccessReview name */
+ name?: (string|null);
+
+ /** AccessReview resource */
+ resource?: (string|null);
+
+ /** AccessReview subresource */
+ subresource?: (string|null);
+
+ /** AccessReview verb */
+ verb?: (string|null);
+
+ /** AccessReview version */
+ version?: (string|null);
+ }
+
+ /** Represents an AccessReview. */
+ class AccessReview implements IAccessReview {
+
+ /**
+ * Constructs a new AccessReview.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.Kubernetes.IAccessReview);
+
+ /** AccessReview group. */
+ public group: string;
+
+ /** AccessReview ns. */
+ public ns: string;
+
+ /** AccessReview name. */
+ public name: string;
+
+ /** AccessReview resource. */
+ public resource: string;
+
+ /** AccessReview subresource. */
+ public subresource: string;
+
+ /** AccessReview verb. */
+ public verb: string;
+
+ /** AccessReview version. */
+ public version: string;
+
+ /**
+ * Creates a new AccessReview instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AccessReview instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.Kubernetes.IAccessReview): google.cloud.securitycenter.v1.Kubernetes.AccessReview;
+
+ /**
+ * Encodes the specified AccessReview message. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.AccessReview.verify|verify} messages.
+ * @param message AccessReview message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.Kubernetes.IAccessReview, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AccessReview message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Kubernetes.AccessReview.verify|verify} messages.
+ * @param message AccessReview message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.Kubernetes.IAccessReview, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AccessReview message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AccessReview
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Kubernetes.AccessReview;
+
+ /**
+ * Decodes an AccessReview message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AccessReview
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Kubernetes.AccessReview;
+
+ /**
+ * Verifies an AccessReview message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AccessReview message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AccessReview
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Kubernetes.AccessReview;
+
+ /**
+ * Creates a plain object from an AccessReview message. Also converts values to other types if specified.
+ * @param message AccessReview
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Kubernetes.AccessReview, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AccessReview to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AccessReview
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a MitreAttack. */
+ interface IMitreAttack {
+
+ /** MitreAttack primaryTactic */
+ primaryTactic?: (google.cloud.securitycenter.v1.MitreAttack.Tactic|keyof typeof google.cloud.securitycenter.v1.MitreAttack.Tactic|null);
+
+ /** MitreAttack primaryTechniques */
+ primaryTechniques?: (google.cloud.securitycenter.v1.MitreAttack.Technique[]|null);
+
+ /** MitreAttack additionalTactics */
+ additionalTactics?: (google.cloud.securitycenter.v1.MitreAttack.Tactic[]|null);
+
+ /** MitreAttack additionalTechniques */
+ additionalTechniques?: (google.cloud.securitycenter.v1.MitreAttack.Technique[]|null);
+
+ /** MitreAttack version */
+ version?: (string|null);
+ }
+
+ /** Represents a MitreAttack. */
+ class MitreAttack implements IMitreAttack {
+
+ /**
+ * Constructs a new MitreAttack.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IMitreAttack);
+
+ /** MitreAttack primaryTactic. */
+ public primaryTactic: (google.cloud.securitycenter.v1.MitreAttack.Tactic|keyof typeof google.cloud.securitycenter.v1.MitreAttack.Tactic);
+
+ /** MitreAttack primaryTechniques. */
+ public primaryTechniques: google.cloud.securitycenter.v1.MitreAttack.Technique[];
+
+ /** MitreAttack additionalTactics. */
+ public additionalTactics: google.cloud.securitycenter.v1.MitreAttack.Tactic[];
+
+ /** MitreAttack additionalTechniques. */
+ public additionalTechniques: google.cloud.securitycenter.v1.MitreAttack.Technique[];
+
+ /** MitreAttack version. */
+ public version: string;
+
+ /**
+ * Creates a new MitreAttack instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MitreAttack instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IMitreAttack): google.cloud.securitycenter.v1.MitreAttack;
+
+ /**
+ * Encodes the specified MitreAttack message. Does not implicitly {@link google.cloud.securitycenter.v1.MitreAttack.verify|verify} messages.
+ * @param message MitreAttack message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IMitreAttack, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MitreAttack message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.MitreAttack.verify|verify} messages.
+ * @param message MitreAttack message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IMitreAttack, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MitreAttack message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MitreAttack
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.MitreAttack;
+
+ /**
+ * Decodes a MitreAttack message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MitreAttack
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.MitreAttack;
+
+ /**
+ * Verifies a MitreAttack message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MitreAttack message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MitreAttack
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.MitreAttack;
+
+ /**
+ * Creates a plain object from a MitreAttack message. Also converts values to other types if specified.
+ * @param message MitreAttack
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.MitreAttack, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MitreAttack to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MitreAttack
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MitreAttack {
+
+ /** Tactic enum. */
+ enum Tactic {
+ TACTIC_UNSPECIFIED = 0,
+ RECONNAISSANCE = 1,
+ RESOURCE_DEVELOPMENT = 2,
+ INITIAL_ACCESS = 5,
+ EXECUTION = 3,
+ PERSISTENCE = 6,
+ PRIVILEGE_ESCALATION = 8,
+ DEFENSE_EVASION = 7,
+ CREDENTIAL_ACCESS = 9,
+ DISCOVERY = 10,
+ LATERAL_MOVEMENT = 11,
+ COLLECTION = 12,
+ COMMAND_AND_CONTROL = 4,
+ EXFILTRATION = 13,
+ IMPACT = 14
+ }
+
+ /** Technique enum. */
+ enum Technique {
+ TECHNIQUE_UNSPECIFIED = 0,
+ ACTIVE_SCANNING = 1,
+ SCANNING_IP_BLOCKS = 2,
+ INGRESS_TOOL_TRANSFER = 3,
+ NATIVE_API = 4,
+ SHARED_MODULES = 5,
+ COMMAND_AND_SCRIPTING_INTERPRETER = 6,
+ UNIX_SHELL = 7,
+ RESOURCE_HIJACKING = 8,
+ PROXY = 9,
+ EXTERNAL_PROXY = 10,
+ MULTI_HOP_PROXY = 11,
+ DYNAMIC_RESOLUTION = 12,
+ UNSECURED_CREDENTIALS = 13,
+ VALID_ACCOUNTS = 14,
+ LOCAL_ACCOUNTS = 15,
+ CLOUD_ACCOUNTS = 16,
+ NETWORK_DENIAL_OF_SERVICE = 17,
+ PERMISSION_GROUPS_DISCOVERY = 18,
+ CLOUD_GROUPS = 19,
+ EXFILTRATION_OVER_WEB_SERVICE = 20,
+ EXFILTRATION_TO_CLOUD_STORAGE = 21,
+ ACCOUNT_MANIPULATION = 22,
+ SSH_AUTHORIZED_KEYS = 23,
+ CREATE_OR_MODIFY_SYSTEM_PROCESS = 24,
+ STEAL_WEB_SESSION_COOKIE = 25,
+ MODIFY_CLOUD_COMPUTE_INFRASTRUCTURE = 26,
+ EXPLOIT_PUBLIC_FACING_APPLICATION = 27,
+ MODIFY_AUTHENTICATION_PROCESS = 28,
+ DATA_DESTRUCTION = 29,
+ DOMAIN_POLICY_MODIFICATION = 30,
+ IMPAIR_DEFENSES = 31,
+ NETWORK_SERVICE_DISCOVERY = 32,
+ ACCESS_TOKEN_MANIPULATION = 33,
+ ABUSE_ELEVATION_CONTROL_MECHANISM = 34,
+ DEFAULT_ACCOUNTS = 35
+ }
+ }
+
+ /** Properties of a Process. */
+ interface IProcess {
+
+ /** Process name */
+ name?: (string|null);
+
+ /** Process binary */
+ binary?: (google.cloud.securitycenter.v1.IFile|null);
+
+ /** Process libraries */
+ libraries?: (google.cloud.securitycenter.v1.IFile[]|null);
+
+ /** Process script */
+ script?: (google.cloud.securitycenter.v1.IFile|null);
+
+ /** Process args */
+ args?: (string[]|null);
+
+ /** Process argumentsTruncated */
+ argumentsTruncated?: (boolean|null);
+
+ /** Process envVariables */
+ envVariables?: (google.cloud.securitycenter.v1.IEnvironmentVariable[]|null);
+
+ /** Process envVariablesTruncated */
+ envVariablesTruncated?: (boolean|null);
+
+ /** Process pid */
+ pid?: (number|Long|string|null);
+
+ /** Process parentPid */
+ parentPid?: (number|Long|string|null);
+ }
+
+ /** Represents a Process. */
+ class Process implements IProcess {
+
+ /**
+ * Constructs a new Process.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IProcess);
+
+ /** Process name. */
+ public name: string;
+
+ /** Process binary. */
+ public binary?: (google.cloud.securitycenter.v1.IFile|null);
+
+ /** Process libraries. */
+ public libraries: google.cloud.securitycenter.v1.IFile[];
+
+ /** Process script. */
+ public script?: (google.cloud.securitycenter.v1.IFile|null);
+
+ /** Process args. */
+ public args: string[];
+
+ /** Process argumentsTruncated. */
+ public argumentsTruncated: boolean;
+
+ /** Process envVariables. */
+ public envVariables: google.cloud.securitycenter.v1.IEnvironmentVariable[];
+
+ /** Process envVariablesTruncated. */
+ public envVariablesTruncated: boolean;
+
+ /** Process pid. */
+ public pid: (number|Long|string);
+
+ /** Process parentPid. */
+ public parentPid: (number|Long|string);
+
+ /**
+ * Creates a new Process instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Process instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IProcess): google.cloud.securitycenter.v1.Process;
+
+ /**
+ * Encodes the specified Process message. Does not implicitly {@link google.cloud.securitycenter.v1.Process.verify|verify} messages.
+ * @param message Process message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IProcess, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Process message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Process.verify|verify} messages.
+ * @param message Process message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IProcess, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Process message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Process
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Process;
+
+ /**
+ * Decodes a Process message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Process
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Process;
+
+ /**
+ * Verifies a Process message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Process message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Process
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Process;
+
+ /**
+ * Creates a plain object from a Process message. Also converts values to other types if specified.
+ * @param message Process
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Process, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Process to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Process
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnvironmentVariable. */
+ interface IEnvironmentVariable {
+
+ /** EnvironmentVariable name */
+ name?: (string|null);
+
+ /** EnvironmentVariable val */
+ val?: (string|null);
+ }
+
+ /** Represents an EnvironmentVariable. */
+ class EnvironmentVariable implements IEnvironmentVariable {
+
+ /**
+ * Constructs a new EnvironmentVariable.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IEnvironmentVariable);
+
+ /** EnvironmentVariable name. */
+ public name: string;
+
+ /** EnvironmentVariable val. */
+ public val: string;
+
+ /**
+ * Creates a new EnvironmentVariable instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnvironmentVariable instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IEnvironmentVariable): google.cloud.securitycenter.v1.EnvironmentVariable;
+
+ /**
+ * Encodes the specified EnvironmentVariable message. Does not implicitly {@link google.cloud.securitycenter.v1.EnvironmentVariable.verify|verify} messages.
+ * @param message EnvironmentVariable message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IEnvironmentVariable, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnvironmentVariable message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.EnvironmentVariable.verify|verify} messages.
+ * @param message EnvironmentVariable message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IEnvironmentVariable, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnvironmentVariable message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnvironmentVariable
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.EnvironmentVariable;
+
+ /**
+ * Decodes an EnvironmentVariable message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnvironmentVariable
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.EnvironmentVariable;
+
+ /**
+ * Verifies an EnvironmentVariable message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnvironmentVariable message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnvironmentVariable
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.EnvironmentVariable;
+
+ /**
+ * Creates a plain object from an EnvironmentVariable message. Also converts values to other types if specified.
+ * @param message EnvironmentVariable
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.EnvironmentVariable, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnvironmentVariable to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnvironmentVariable
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Vulnerability. */
+ interface IVulnerability {
+
+ /** Vulnerability cve */
+ cve?: (google.cloud.securitycenter.v1.ICve|null);
+ }
+
+ /** Represents a Vulnerability. */
+ class Vulnerability implements IVulnerability {
+
+ /**
+ * Constructs a new Vulnerability.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IVulnerability);
+
+ /** Vulnerability cve. */
+ public cve?: (google.cloud.securitycenter.v1.ICve|null);
+
+ /**
+ * Creates a new Vulnerability instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Vulnerability instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IVulnerability): google.cloud.securitycenter.v1.Vulnerability;
+
+ /**
+ * Encodes the specified Vulnerability message. Does not implicitly {@link google.cloud.securitycenter.v1.Vulnerability.verify|verify} messages.
+ * @param message Vulnerability message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IVulnerability, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Vulnerability message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Vulnerability.verify|verify} messages.
+ * @param message Vulnerability message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IVulnerability, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Vulnerability message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Vulnerability
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Vulnerability;
+
+ /**
+ * Decodes a Vulnerability message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Vulnerability
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Vulnerability;
+
+ /**
+ * Verifies a Vulnerability message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Vulnerability message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Vulnerability
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Vulnerability;
+
+ /**
+ * Creates a plain object from a Vulnerability message. Also converts values to other types if specified.
+ * @param message Vulnerability
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Vulnerability, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Vulnerability to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Vulnerability
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Cve. */
+ interface ICve {
+
+ /** Cve id */
+ id?: (string|null);
+
+ /** Cve references */
+ references?: (google.cloud.securitycenter.v1.IReference[]|null);
+
+ /** Cve cvssv3 */
+ cvssv3?: (google.cloud.securitycenter.v1.ICvssv3|null);
+
+ /** Cve upstreamFixAvailable */
+ upstreamFixAvailable?: (boolean|null);
+ }
+
+ /** Represents a Cve. */
+ class Cve implements ICve {
+
+ /**
+ * Constructs a new Cve.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICve);
+
+ /** Cve id. */
+ public id: string;
+
+ /** Cve references. */
+ public references: google.cloud.securitycenter.v1.IReference[];
+
+ /** Cve cvssv3. */
+ public cvssv3?: (google.cloud.securitycenter.v1.ICvssv3|null);
+
+ /** Cve upstreamFixAvailable. */
+ public upstreamFixAvailable: boolean;
+
+ /**
+ * Creates a new Cve instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Cve instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICve): google.cloud.securitycenter.v1.Cve;
+
+ /**
+ * Encodes the specified Cve message. Does not implicitly {@link google.cloud.securitycenter.v1.Cve.verify|verify} messages.
+ * @param message Cve message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICve, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Cve message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Cve.verify|verify} messages.
+ * @param message Cve message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICve, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Cve message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Cve
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Cve;
+
+ /**
+ * Decodes a Cve message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Cve
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Cve;
+
+ /**
+ * Verifies a Cve message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Cve message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Cve
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Cve;
+
+ /**
+ * Creates a plain object from a Cve message. Also converts values to other types if specified.
+ * @param message Cve
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Cve, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Cve to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Cve
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Reference. */
+ interface IReference {
+
+ /** Reference source */
+ source?: (string|null);
+
+ /** Reference uri */
+ uri?: (string|null);
+ }
+
+ /** Represents a Reference. */
+ class Reference implements IReference {
+
+ /**
+ * Constructs a new Reference.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IReference);
+
+ /** Reference source. */
+ public source: string;
+
+ /** Reference uri. */
+ public uri: string;
+
+ /**
+ * Creates a new Reference instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Reference instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IReference): google.cloud.securitycenter.v1.Reference;
+
+ /**
+ * Encodes the specified Reference message. Does not implicitly {@link google.cloud.securitycenter.v1.Reference.verify|verify} messages.
+ * @param message Reference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Reference message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Reference.verify|verify} messages.
+ * @param message Reference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Reference message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Reference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Reference;
+
+ /**
+ * Decodes a Reference message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Reference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Reference;
+
+ /**
+ * Verifies a Reference message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Reference message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Reference
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Reference;
+
+ /**
+ * Creates a plain object from a Reference message. Also converts values to other types if specified.
+ * @param message Reference
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Reference, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Reference to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Reference
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Cvssv3. */
+ interface ICvssv3 {
+
+ /** Cvssv3 baseScore */
+ baseScore?: (number|null);
+
+ /** Cvssv3 attackVector */
+ attackVector?: (google.cloud.securitycenter.v1.Cvssv3.AttackVector|keyof typeof google.cloud.securitycenter.v1.Cvssv3.AttackVector|null);
+
+ /** Cvssv3 attackComplexity */
+ attackComplexity?: (google.cloud.securitycenter.v1.Cvssv3.AttackComplexity|keyof typeof google.cloud.securitycenter.v1.Cvssv3.AttackComplexity|null);
+
+ /** Cvssv3 privilegesRequired */
+ privilegesRequired?: (google.cloud.securitycenter.v1.Cvssv3.PrivilegesRequired|keyof typeof google.cloud.securitycenter.v1.Cvssv3.PrivilegesRequired|null);
+
+ /** Cvssv3 userInteraction */
+ userInteraction?: (google.cloud.securitycenter.v1.Cvssv3.UserInteraction|keyof typeof google.cloud.securitycenter.v1.Cvssv3.UserInteraction|null);
+
+ /** Cvssv3 scope */
+ scope?: (google.cloud.securitycenter.v1.Cvssv3.Scope|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Scope|null);
+
+ /** Cvssv3 confidentialityImpact */
+ confidentialityImpact?: (google.cloud.securitycenter.v1.Cvssv3.Impact|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Impact|null);
+
+ /** Cvssv3 integrityImpact */
+ integrityImpact?: (google.cloud.securitycenter.v1.Cvssv3.Impact|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Impact|null);
+
+ /** Cvssv3 availabilityImpact */
+ availabilityImpact?: (google.cloud.securitycenter.v1.Cvssv3.Impact|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Impact|null);
+ }
+
+ /** Represents a Cvssv3. */
+ class Cvssv3 implements ICvssv3 {
+
+ /**
+ * Constructs a new Cvssv3.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICvssv3);
+
+ /** Cvssv3 baseScore. */
+ public baseScore: number;
+
+ /** Cvssv3 attackVector. */
+ public attackVector: (google.cloud.securitycenter.v1.Cvssv3.AttackVector|keyof typeof google.cloud.securitycenter.v1.Cvssv3.AttackVector);
+
+ /** Cvssv3 attackComplexity. */
+ public attackComplexity: (google.cloud.securitycenter.v1.Cvssv3.AttackComplexity|keyof typeof google.cloud.securitycenter.v1.Cvssv3.AttackComplexity);
+
+ /** Cvssv3 privilegesRequired. */
+ public privilegesRequired: (google.cloud.securitycenter.v1.Cvssv3.PrivilegesRequired|keyof typeof google.cloud.securitycenter.v1.Cvssv3.PrivilegesRequired);
+
+ /** Cvssv3 userInteraction. */
+ public userInteraction: (google.cloud.securitycenter.v1.Cvssv3.UserInteraction|keyof typeof google.cloud.securitycenter.v1.Cvssv3.UserInteraction);
+
+ /** Cvssv3 scope. */
+ public scope: (google.cloud.securitycenter.v1.Cvssv3.Scope|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Scope);
+
+ /** Cvssv3 confidentialityImpact. */
+ public confidentialityImpact: (google.cloud.securitycenter.v1.Cvssv3.Impact|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Impact);
+
+ /** Cvssv3 integrityImpact. */
+ public integrityImpact: (google.cloud.securitycenter.v1.Cvssv3.Impact|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Impact);
+
+ /** Cvssv3 availabilityImpact. */
+ public availabilityImpact: (google.cloud.securitycenter.v1.Cvssv3.Impact|keyof typeof google.cloud.securitycenter.v1.Cvssv3.Impact);
+
+ /**
+ * Creates a new Cvssv3 instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Cvssv3 instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICvssv3): google.cloud.securitycenter.v1.Cvssv3;
+
+ /**
+ * Encodes the specified Cvssv3 message. Does not implicitly {@link google.cloud.securitycenter.v1.Cvssv3.verify|verify} messages.
+ * @param message Cvssv3 message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICvssv3, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Cvssv3 message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Cvssv3.verify|verify} messages.
+ * @param message Cvssv3 message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICvssv3, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Cvssv3 message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Cvssv3
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Cvssv3;
+
+ /**
+ * Decodes a Cvssv3 message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Cvssv3
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Cvssv3;
+
+ /**
+ * Verifies a Cvssv3 message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Cvssv3 message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Cvssv3
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Cvssv3;
+
+ /**
+ * Creates a plain object from a Cvssv3 message. Also converts values to other types if specified.
+ * @param message Cvssv3
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Cvssv3, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Cvssv3 to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Cvssv3
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Cvssv3 {
+
+ /** AttackVector enum. */
+ enum AttackVector {
+ ATTACK_VECTOR_UNSPECIFIED = 0,
+ ATTACK_VECTOR_NETWORK = 1,
+ ATTACK_VECTOR_ADJACENT = 2,
+ ATTACK_VECTOR_LOCAL = 3,
+ ATTACK_VECTOR_PHYSICAL = 4
+ }
+
+ /** AttackComplexity enum. */
+ enum AttackComplexity {
+ ATTACK_COMPLEXITY_UNSPECIFIED = 0,
+ ATTACK_COMPLEXITY_LOW = 1,
+ ATTACK_COMPLEXITY_HIGH = 2
+ }
+
+ /** PrivilegesRequired enum. */
+ enum PrivilegesRequired {
+ PRIVILEGES_REQUIRED_UNSPECIFIED = 0,
+ PRIVILEGES_REQUIRED_NONE = 1,
+ PRIVILEGES_REQUIRED_LOW = 2,
+ PRIVILEGES_REQUIRED_HIGH = 3
+ }
+
+ /** UserInteraction enum. */
+ enum UserInteraction {
+ USER_INTERACTION_UNSPECIFIED = 0,
+ USER_INTERACTION_NONE = 1,
+ USER_INTERACTION_REQUIRED = 2
+ }
+
+ /** Scope enum. */
+ enum Scope {
+ SCOPE_UNSPECIFIED = 0,
+ SCOPE_UNCHANGED = 1,
+ SCOPE_CHANGED = 2
+ }
+
+ /** Impact enum. */
+ enum Impact {
+ IMPACT_UNSPECIFIED = 0,
+ IMPACT_HIGH = 1,
+ IMPACT_LOW = 2,
+ IMPACT_NONE = 3
+ }
+ }
+
+ /** Properties of a MuteConfig. */
+ interface IMuteConfig {
+
+ /** MuteConfig name */
+ name?: (string|null);
+
+ /** MuteConfig displayName */
+ displayName?: (string|null);
+
+ /** MuteConfig description */
+ description?: (string|null);
+
+ /** MuteConfig filter */
+ filter?: (string|null);
+
+ /** MuteConfig createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** MuteConfig updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** MuteConfig mostRecentEditor */
+ mostRecentEditor?: (string|null);
+ }
+
+ /** Represents a MuteConfig. */
+ class MuteConfig implements IMuteConfig {
+
+ /**
+ * Constructs a new MuteConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IMuteConfig);
+
+ /** MuteConfig name. */
+ public name: string;
+
+ /** MuteConfig displayName. */
+ public displayName: string;
+
+ /** MuteConfig description. */
+ public description: string;
+
+ /** MuteConfig filter. */
+ public filter: string;
+
+ /** MuteConfig createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** MuteConfig updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** MuteConfig mostRecentEditor. */
+ public mostRecentEditor: string;
+
+ /**
+ * Creates a new MuteConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MuteConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IMuteConfig): google.cloud.securitycenter.v1.MuteConfig;
+
+ /**
+ * Encodes the specified MuteConfig message. Does not implicitly {@link google.cloud.securitycenter.v1.MuteConfig.verify|verify} messages.
+ * @param message MuteConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IMuteConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MuteConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.MuteConfig.verify|verify} messages.
+ * @param message MuteConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IMuteConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MuteConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MuteConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.MuteConfig;
+
+ /**
+ * Decodes a MuteConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MuteConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.MuteConfig;
+
+ /**
+ * Verifies a MuteConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MuteConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MuteConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.MuteConfig;
+
+ /**
+ * Creates a plain object from a MuteConfig message. Also converts values to other types if specified.
+ * @param message MuteConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.MuteConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MuteConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MuteConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a NotificationConfig. */
+ interface INotificationConfig {
+
+ /** NotificationConfig name */
+ name?: (string|null);
+
+ /** NotificationConfig description */
+ description?: (string|null);
+
+ /** NotificationConfig pubsubTopic */
+ pubsubTopic?: (string|null);
+
+ /** NotificationConfig serviceAccount */
+ serviceAccount?: (string|null);
+
+ /** NotificationConfig streamingConfig */
+ streamingConfig?: (google.cloud.securitycenter.v1.NotificationConfig.IStreamingConfig|null);
+ }
+
+ /** Represents a NotificationConfig. */
+ class NotificationConfig implements INotificationConfig {
+
+ /**
+ * Constructs a new NotificationConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.INotificationConfig);
+
+ /** NotificationConfig name. */
+ public name: string;
+
+ /** NotificationConfig description. */
+ public description: string;
+
+ /** NotificationConfig pubsubTopic. */
+ public pubsubTopic: string;
+
+ /** NotificationConfig serviceAccount. */
+ public serviceAccount: string;
+
+ /** NotificationConfig streamingConfig. */
+ public streamingConfig?: (google.cloud.securitycenter.v1.NotificationConfig.IStreamingConfig|null);
+
+ /** NotificationConfig notifyConfig. */
+ public notifyConfig?: "streamingConfig";
+
+ /**
+ * Creates a new NotificationConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NotificationConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.INotificationConfig): google.cloud.securitycenter.v1.NotificationConfig;
+
+ /**
+ * Encodes the specified NotificationConfig message. Does not implicitly {@link google.cloud.securitycenter.v1.NotificationConfig.verify|verify} messages.
+ * @param message NotificationConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.INotificationConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NotificationConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.NotificationConfig.verify|verify} messages.
+ * @param message NotificationConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.INotificationConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NotificationConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NotificationConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.NotificationConfig;
+
+ /**
+ * Decodes a NotificationConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NotificationConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.NotificationConfig;
+
+ /**
+ * Verifies a NotificationConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NotificationConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NotificationConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.NotificationConfig;
+
+ /**
+ * Creates a plain object from a NotificationConfig message. Also converts values to other types if specified.
+ * @param message NotificationConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.NotificationConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NotificationConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NotificationConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NotificationConfig {
+
+ /** Properties of a StreamingConfig. */
+ interface IStreamingConfig {
+
+ /** StreamingConfig filter */
+ filter?: (string|null);
+ }
+
+ /** Represents a StreamingConfig. */
+ class StreamingConfig implements IStreamingConfig {
+
+ /**
+ * Constructs a new StreamingConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.NotificationConfig.IStreamingConfig);
+
+ /** StreamingConfig filter. */
+ public filter: string;
+
+ /**
+ * Creates a new StreamingConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StreamingConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.NotificationConfig.IStreamingConfig): google.cloud.securitycenter.v1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Encodes the specified StreamingConfig message. Does not implicitly {@link google.cloud.securitycenter.v1.NotificationConfig.StreamingConfig.verify|verify} messages.
+ * @param message StreamingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.NotificationConfig.IStreamingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StreamingConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.NotificationConfig.StreamingConfig.verify|verify} messages.
+ * @param message StreamingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.NotificationConfig.IStreamingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StreamingConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StreamingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Decodes a StreamingConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StreamingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Verifies a StreamingConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StreamingConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StreamingConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Creates a plain object from a StreamingConfig message. Also converts values to other types if specified.
+ * @param message StreamingConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.NotificationConfig.StreamingConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StreamingConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StreamingConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a NotificationMessage. */
+ interface INotificationMessage {
+
+ /** NotificationMessage notificationConfigName */
+ notificationConfigName?: (string|null);
+
+ /** NotificationMessage finding */
+ finding?: (google.cloud.securitycenter.v1.IFinding|null);
+
+ /** NotificationMessage resource */
+ resource?: (google.cloud.securitycenter.v1.IResource|null);
+ }
+
+ /** Represents a NotificationMessage. */
+ class NotificationMessage implements INotificationMessage {
+
+ /**
+ * Constructs a new NotificationMessage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.INotificationMessage);
+
+ /** NotificationMessage notificationConfigName. */
+ public notificationConfigName: string;
+
+ /** NotificationMessage finding. */
+ public finding?: (google.cloud.securitycenter.v1.IFinding|null);
+
+ /** NotificationMessage resource. */
+ public resource?: (google.cloud.securitycenter.v1.IResource|null);
+
+ /** NotificationMessage event. */
+ public event?: "finding";
+
+ /**
+ * Creates a new NotificationMessage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NotificationMessage instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.INotificationMessage): google.cloud.securitycenter.v1.NotificationMessage;
+
+ /**
+ * Encodes the specified NotificationMessage message. Does not implicitly {@link google.cloud.securitycenter.v1.NotificationMessage.verify|verify} messages.
+ * @param message NotificationMessage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.INotificationMessage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NotificationMessage message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.NotificationMessage.verify|verify} messages.
+ * @param message NotificationMessage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.INotificationMessage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NotificationMessage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NotificationMessage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.NotificationMessage;
+
+ /**
+ * Decodes a NotificationMessage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NotificationMessage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.NotificationMessage;
+
+ /**
+ * Verifies a NotificationMessage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NotificationMessage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NotificationMessage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.NotificationMessage;
+
+ /**
+ * Creates a plain object from a NotificationMessage message. Also converts values to other types if specified.
+ * @param message NotificationMessage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.NotificationMessage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NotificationMessage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NotificationMessage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Resource. */
+ interface IResource {
+
+ /** Resource name */
+ name?: (string|null);
+
+ /** Resource displayName */
+ displayName?: (string|null);
+
+ /** Resource type */
+ type?: (string|null);
+
+ /** Resource project */
+ project?: (string|null);
+
+ /** Resource projectDisplayName */
+ projectDisplayName?: (string|null);
+
+ /** Resource parent */
+ parent?: (string|null);
+
+ /** Resource parentDisplayName */
+ parentDisplayName?: (string|null);
+
+ /** Resource folders */
+ folders?: (google.cloud.securitycenter.v1.IFolder[]|null);
+ }
+
+ /** Represents a Resource. */
+ class Resource implements IResource {
+
+ /**
+ * Constructs a new Resource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IResource);
+
+ /** Resource name. */
+ public name: string;
+
+ /** Resource displayName. */
+ public displayName: string;
+
+ /** Resource type. */
+ public type: string;
+
+ /** Resource project. */
+ public project: string;
+
+ /** Resource projectDisplayName. */
+ public projectDisplayName: string;
+
+ /** Resource parent. */
+ public parent: string;
+
+ /** Resource parentDisplayName. */
+ public parentDisplayName: string;
+
+ /** Resource folders. */
+ public folders: google.cloud.securitycenter.v1.IFolder[];
+
+ /**
+ * Creates a new Resource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Resource instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IResource): google.cloud.securitycenter.v1.Resource;
+
+ /**
+ * Encodes the specified Resource message. Does not implicitly {@link google.cloud.securitycenter.v1.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Resource message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Resource;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Resource;
+
+ /**
+ * Verifies a Resource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Resource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Resource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Resource;
+
+ /**
+ * Creates a plain object from a Resource message. Also converts values to other types if specified.
+ * @param message Resource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Resource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Resource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Resource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OrganizationSettings. */
+ interface IOrganizationSettings {
+
+ /** OrganizationSettings name */
+ name?: (string|null);
+
+ /** OrganizationSettings enableAssetDiscovery */
+ enableAssetDiscovery?: (boolean|null);
+
+ /** OrganizationSettings assetDiscoveryConfig */
+ assetDiscoveryConfig?: (google.cloud.securitycenter.v1.OrganizationSettings.IAssetDiscoveryConfig|null);
+ }
+
+ /** Represents an OrganizationSettings. */
+ class OrganizationSettings implements IOrganizationSettings {
+
+ /**
+ * Constructs a new OrganizationSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IOrganizationSettings);
+
+ /** OrganizationSettings name. */
+ public name: string;
+
+ /** OrganizationSettings enableAssetDiscovery. */
+ public enableAssetDiscovery: boolean;
+
+ /** OrganizationSettings assetDiscoveryConfig. */
+ public assetDiscoveryConfig?: (google.cloud.securitycenter.v1.OrganizationSettings.IAssetDiscoveryConfig|null);
+
+ /**
+ * Creates a new OrganizationSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OrganizationSettings instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IOrganizationSettings): google.cloud.securitycenter.v1.OrganizationSettings;
+
+ /**
+ * Encodes the specified OrganizationSettings message. Does not implicitly {@link google.cloud.securitycenter.v1.OrganizationSettings.verify|verify} messages.
+ * @param message OrganizationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IOrganizationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OrganizationSettings message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.OrganizationSettings.verify|verify} messages.
+ * @param message OrganizationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IOrganizationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OrganizationSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OrganizationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.OrganizationSettings;
+
+ /**
+ * Decodes an OrganizationSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OrganizationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.OrganizationSettings;
+
+ /**
+ * Verifies an OrganizationSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OrganizationSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OrganizationSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.OrganizationSettings;
+
+ /**
+ * Creates a plain object from an OrganizationSettings message. Also converts values to other types if specified.
+ * @param message OrganizationSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.OrganizationSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OrganizationSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OrganizationSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OrganizationSettings {
+
+ /** Properties of an AssetDiscoveryConfig. */
+ interface IAssetDiscoveryConfig {
+
+ /** AssetDiscoveryConfig projectIds */
+ projectIds?: (string[]|null);
+
+ /** AssetDiscoveryConfig inclusionMode */
+ inclusionMode?: (google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|keyof typeof google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|null);
+
+ /** AssetDiscoveryConfig folderIds */
+ folderIds?: (string[]|null);
+ }
+
+ /** Represents an AssetDiscoveryConfig. */
+ class AssetDiscoveryConfig implements IAssetDiscoveryConfig {
+
+ /**
+ * Constructs a new AssetDiscoveryConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.OrganizationSettings.IAssetDiscoveryConfig);
+
+ /** AssetDiscoveryConfig projectIds. */
+ public projectIds: string[];
+
+ /** AssetDiscoveryConfig inclusionMode. */
+ public inclusionMode: (google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|keyof typeof google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode);
+
+ /** AssetDiscoveryConfig folderIds. */
+ public folderIds: string[];
+
+ /**
+ * Creates a new AssetDiscoveryConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AssetDiscoveryConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.OrganizationSettings.IAssetDiscoveryConfig): google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Encodes the specified AssetDiscoveryConfig message. Does not implicitly {@link google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig.verify|verify} messages.
+ * @param message AssetDiscoveryConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.OrganizationSettings.IAssetDiscoveryConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AssetDiscoveryConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig.verify|verify} messages.
+ * @param message AssetDiscoveryConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.OrganizationSettings.IAssetDiscoveryConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AssetDiscoveryConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AssetDiscoveryConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Decodes an AssetDiscoveryConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AssetDiscoveryConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Verifies an AssetDiscoveryConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AssetDiscoveryConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AssetDiscoveryConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Creates a plain object from an AssetDiscoveryConfig message. Also converts values to other types if specified.
+ * @param message AssetDiscoveryConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.OrganizationSettings.AssetDiscoveryConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AssetDiscoveryConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AssetDiscoveryConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AssetDiscoveryConfig {
+
+ /** InclusionMode enum. */
+ enum InclusionMode {
+ INCLUSION_MODE_UNSPECIFIED = 0,
+ INCLUDE_ONLY = 1,
+ EXCLUDE = 2
+ }
+ }
+ }
+
+ /** Properties of a RunAssetDiscoveryResponse. */
+ interface IRunAssetDiscoveryResponse {
+
+ /** RunAssetDiscoveryResponse state */
+ state?: (google.cloud.securitycenter.v1.RunAssetDiscoveryResponse.State|keyof typeof google.cloud.securitycenter.v1.RunAssetDiscoveryResponse.State|null);
+
+ /** RunAssetDiscoveryResponse duration */
+ duration?: (google.protobuf.IDuration|null);
+ }
+
+ /** Represents a RunAssetDiscoveryResponse. */
+ class RunAssetDiscoveryResponse implements IRunAssetDiscoveryResponse {
+
+ /**
+ * Constructs a new RunAssetDiscoveryResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IRunAssetDiscoveryResponse);
+
+ /** RunAssetDiscoveryResponse state. */
+ public state: (google.cloud.securitycenter.v1.RunAssetDiscoveryResponse.State|keyof typeof google.cloud.securitycenter.v1.RunAssetDiscoveryResponse.State);
+
+ /** RunAssetDiscoveryResponse duration. */
+ public duration?: (google.protobuf.IDuration|null);
+
+ /**
+ * Creates a new RunAssetDiscoveryResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RunAssetDiscoveryResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IRunAssetDiscoveryResponse): google.cloud.securitycenter.v1.RunAssetDiscoveryResponse;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.RunAssetDiscoveryResponse.verify|verify} messages.
+ * @param message RunAssetDiscoveryResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IRunAssetDiscoveryResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.RunAssetDiscoveryResponse.verify|verify} messages.
+ * @param message RunAssetDiscoveryResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IRunAssetDiscoveryResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RunAssetDiscoveryResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RunAssetDiscoveryResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.RunAssetDiscoveryResponse;
+
+ /**
+ * Decodes a RunAssetDiscoveryResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RunAssetDiscoveryResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.RunAssetDiscoveryResponse;
+
+ /**
+ * Verifies a RunAssetDiscoveryResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RunAssetDiscoveryResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RunAssetDiscoveryResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.RunAssetDiscoveryResponse;
+
+ /**
+ * Creates a plain object from a RunAssetDiscoveryResponse message. Also converts values to other types if specified.
+ * @param message RunAssetDiscoveryResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.RunAssetDiscoveryResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RunAssetDiscoveryResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RunAssetDiscoveryResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace RunAssetDiscoveryResponse {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ COMPLETED = 1,
+ SUPERSEDED = 2,
+ TERMINATED = 3
+ }
+ }
+
+ /** Represents a SecurityCenter */
+ class SecurityCenter extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new SecurityCenter service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new SecurityCenter service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): SecurityCenter;
+
+ /**
+ * Calls BulkMuteFindings.
+ * @param request BulkMuteFindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public bulkMuteFindings(request: google.cloud.securitycenter.v1.IBulkMuteFindingsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.BulkMuteFindingsCallback): void;
+
+ /**
+ * Calls BulkMuteFindings.
+ * @param request BulkMuteFindingsRequest message or plain object
+ * @returns Promise
+ */
+ public bulkMuteFindings(request: google.cloud.securitycenter.v1.IBulkMuteFindingsRequest): Promise;
+
+ /**
+ * Calls CreateSource.
+ * @param request CreateSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public createSource(request: google.cloud.securitycenter.v1.ICreateSourceRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.CreateSourceCallback): void;
+
+ /**
+ * Calls CreateSource.
+ * @param request CreateSourceRequest message or plain object
+ * @returns Promise
+ */
+ public createSource(request: google.cloud.securitycenter.v1.ICreateSourceRequest): Promise;
+
+ /**
+ * Calls CreateFinding.
+ * @param request CreateFindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public createFinding(request: google.cloud.securitycenter.v1.ICreateFindingRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.CreateFindingCallback): void;
+
+ /**
+ * Calls CreateFinding.
+ * @param request CreateFindingRequest message or plain object
+ * @returns Promise
+ */
+ public createFinding(request: google.cloud.securitycenter.v1.ICreateFindingRequest): Promise;
+
+ /**
+ * Calls CreateMuteConfig.
+ * @param request CreateMuteConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and MuteConfig
+ */
+ public createMuteConfig(request: google.cloud.securitycenter.v1.ICreateMuteConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.CreateMuteConfigCallback): void;
+
+ /**
+ * Calls CreateMuteConfig.
+ * @param request CreateMuteConfigRequest message or plain object
+ * @returns Promise
+ */
+ public createMuteConfig(request: google.cloud.securitycenter.v1.ICreateMuteConfigRequest): Promise;
+
+ /**
+ * Calls CreateNotificationConfig.
+ * @param request CreateNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and NotificationConfig
+ */
+ public createNotificationConfig(request: google.cloud.securitycenter.v1.ICreateNotificationConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.CreateNotificationConfigCallback): void;
+
+ /**
+ * Calls CreateNotificationConfig.
+ * @param request CreateNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public createNotificationConfig(request: google.cloud.securitycenter.v1.ICreateNotificationConfigRequest): Promise;
+
+ /**
+ * Calls DeleteMuteConfig.
+ * @param request DeleteMuteConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteMuteConfig(request: google.cloud.securitycenter.v1.IDeleteMuteConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.DeleteMuteConfigCallback): void;
+
+ /**
+ * Calls DeleteMuteConfig.
+ * @param request DeleteMuteConfigRequest message or plain object
+ * @returns Promise
+ */
+ public deleteMuteConfig(request: google.cloud.securitycenter.v1.IDeleteMuteConfigRequest): Promise;
+
+ /**
+ * Calls DeleteNotificationConfig.
+ * @param request DeleteNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteNotificationConfig(request: google.cloud.securitycenter.v1.IDeleteNotificationConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.DeleteNotificationConfigCallback): void;
+
+ /**
+ * Calls DeleteNotificationConfig.
+ * @param request DeleteNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public deleteNotificationConfig(request: google.cloud.securitycenter.v1.IDeleteNotificationConfigRequest): Promise;
+
+ /**
+ * Calls GetBigQueryExport.
+ * @param request GetBigQueryExportRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BigQueryExport
+ */
+ public getBigQueryExport(request: google.cloud.securitycenter.v1.IGetBigQueryExportRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GetBigQueryExportCallback): void;
+
+ /**
+ * Calls GetBigQueryExport.
+ * @param request GetBigQueryExportRequest message or plain object
+ * @returns Promise
+ */
+ public getBigQueryExport(request: google.cloud.securitycenter.v1.IGetBigQueryExportRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetMuteConfig.
+ * @param request GetMuteConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and MuteConfig
+ */
+ public getMuteConfig(request: google.cloud.securitycenter.v1.IGetMuteConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GetMuteConfigCallback): void;
+
+ /**
+ * Calls GetMuteConfig.
+ * @param request GetMuteConfigRequest message or plain object
+ * @returns Promise
+ */
+ public getMuteConfig(request: google.cloud.securitycenter.v1.IGetMuteConfigRequest): Promise;
+
+ /**
+ * Calls GetNotificationConfig.
+ * @param request GetNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and NotificationConfig
+ */
+ public getNotificationConfig(request: google.cloud.securitycenter.v1.IGetNotificationConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GetNotificationConfigCallback): void;
+
+ /**
+ * Calls GetNotificationConfig.
+ * @param request GetNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public getNotificationConfig(request: google.cloud.securitycenter.v1.IGetNotificationConfigRequest): Promise;
+
+ /**
+ * Calls GetOrganizationSettings.
+ * @param request GetOrganizationSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and OrganizationSettings
+ */
+ public getOrganizationSettings(request: google.cloud.securitycenter.v1.IGetOrganizationSettingsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GetOrganizationSettingsCallback): void;
+
+ /**
+ * Calls GetOrganizationSettings.
+ * @param request GetOrganizationSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public getOrganizationSettings(request: google.cloud.securitycenter.v1.IGetOrganizationSettingsRequest): Promise;
+
+ /**
+ * Calls GetSource.
+ * @param request GetSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public getSource(request: google.cloud.securitycenter.v1.IGetSourceRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GetSourceCallback): void;
+
+ /**
+ * Calls GetSource.
+ * @param request GetSourceRequest message or plain object
+ * @returns Promise
+ */
+ public getSource(request: google.cloud.securitycenter.v1.IGetSourceRequest): Promise;
+
+ /**
+ * Calls GroupAssets.
+ * @param request GroupAssetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GroupAssetsResponse
+ */
+ public groupAssets(request: google.cloud.securitycenter.v1.IGroupAssetsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GroupAssetsCallback): void;
+
+ /**
+ * Calls GroupAssets.
+ * @param request GroupAssetsRequest message or plain object
+ * @returns Promise
+ */
+ public groupAssets(request: google.cloud.securitycenter.v1.IGroupAssetsRequest): Promise;
+
+ /**
+ * Calls GroupFindings.
+ * @param request GroupFindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GroupFindingsResponse
+ */
+ public groupFindings(request: google.cloud.securitycenter.v1.IGroupFindingsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.GroupFindingsCallback): void;
+
+ /**
+ * Calls GroupFindings.
+ * @param request GroupFindingsRequest message or plain object
+ * @returns Promise
+ */
+ public groupFindings(request: google.cloud.securitycenter.v1.IGroupFindingsRequest): Promise;
+
+ /**
+ * Calls ListAssets.
+ * @param request ListAssetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListAssetsResponse
+ */
+ public listAssets(request: google.cloud.securitycenter.v1.IListAssetsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.ListAssetsCallback): void;
+
+ /**
+ * Calls ListAssets.
+ * @param request ListAssetsRequest message or plain object
+ * @returns Promise
+ */
+ public listAssets(request: google.cloud.securitycenter.v1.IListAssetsRequest): Promise;
+
+ /**
+ * Calls ListFindings.
+ * @param request ListFindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListFindingsResponse
+ */
+ public listFindings(request: google.cloud.securitycenter.v1.IListFindingsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.ListFindingsCallback): void;
+
+ /**
+ * Calls ListFindings.
+ * @param request ListFindingsRequest message or plain object
+ * @returns Promise
+ */
+ public listFindings(request: google.cloud.securitycenter.v1.IListFindingsRequest): Promise;
+
+ /**
+ * Calls ListMuteConfigs.
+ * @param request ListMuteConfigsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListMuteConfigsResponse
+ */
+ public listMuteConfigs(request: google.cloud.securitycenter.v1.IListMuteConfigsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.ListMuteConfigsCallback): void;
+
+ /**
+ * Calls ListMuteConfigs.
+ * @param request ListMuteConfigsRequest message or plain object
+ * @returns Promise
+ */
+ public listMuteConfigs(request: google.cloud.securitycenter.v1.IListMuteConfigsRequest): Promise;
+
+ /**
+ * Calls ListNotificationConfigs.
+ * @param request ListNotificationConfigsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListNotificationConfigsResponse
+ */
+ public listNotificationConfigs(request: google.cloud.securitycenter.v1.IListNotificationConfigsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.ListNotificationConfigsCallback): void;
+
+ /**
+ * Calls ListNotificationConfigs.
+ * @param request ListNotificationConfigsRequest message or plain object
+ * @returns Promise
+ */
+ public listNotificationConfigs(request: google.cloud.securitycenter.v1.IListNotificationConfigsRequest): Promise;
+
+ /**
+ * Calls ListSources.
+ * @param request ListSourcesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListSourcesResponse
+ */
+ public listSources(request: google.cloud.securitycenter.v1.IListSourcesRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.ListSourcesCallback): void;
+
+ /**
+ * Calls ListSources.
+ * @param request ListSourcesRequest message or plain object
+ * @returns Promise
+ */
+ public listSources(request: google.cloud.securitycenter.v1.IListSourcesRequest): Promise;
+
+ /**
+ * Calls RunAssetDiscovery.
+ * @param request RunAssetDiscoveryRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public runAssetDiscovery(request: google.cloud.securitycenter.v1.IRunAssetDiscoveryRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.RunAssetDiscoveryCallback): void;
+
+ /**
+ * Calls RunAssetDiscovery.
+ * @param request RunAssetDiscoveryRequest message or plain object
+ * @returns Promise
+ */
+ public runAssetDiscovery(request: google.cloud.securitycenter.v1.IRunAssetDiscoveryRequest): Promise;
+
+ /**
+ * Calls SetFindingState.
+ * @param request SetFindingStateRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public setFindingState(request: google.cloud.securitycenter.v1.ISetFindingStateRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.SetFindingStateCallback): void;
+
+ /**
+ * Calls SetFindingState.
+ * @param request SetFindingStateRequest message or plain object
+ * @returns Promise
+ */
+ public setFindingState(request: google.cloud.securitycenter.v1.ISetFindingStateRequest): Promise;
+
+ /**
+ * Calls SetMute.
+ * @param request SetMuteRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public setMute(request: google.cloud.securitycenter.v1.ISetMuteRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.SetMuteCallback): void;
+
+ /**
+ * Calls SetMute.
+ * @param request SetMuteRequest message or plain object
+ * @returns Promise
+ */
+ public setMute(request: google.cloud.securitycenter.v1.ISetMuteRequest): Promise;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+
+ /**
+ * Calls UpdateExternalSystem.
+ * @param request UpdateExternalSystemRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ExternalSystem
+ */
+ public updateExternalSystem(request: google.cloud.securitycenter.v1.IUpdateExternalSystemRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateExternalSystemCallback): void;
+
+ /**
+ * Calls UpdateExternalSystem.
+ * @param request UpdateExternalSystemRequest message or plain object
+ * @returns Promise
+ */
+ public updateExternalSystem(request: google.cloud.securitycenter.v1.IUpdateExternalSystemRequest): Promise;
+
+ /**
+ * Calls UpdateFinding.
+ * @param request UpdateFindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public updateFinding(request: google.cloud.securitycenter.v1.IUpdateFindingRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateFindingCallback): void;
+
+ /**
+ * Calls UpdateFinding.
+ * @param request UpdateFindingRequest message or plain object
+ * @returns Promise
+ */
+ public updateFinding(request: google.cloud.securitycenter.v1.IUpdateFindingRequest): Promise;
+
+ /**
+ * Calls UpdateMuteConfig.
+ * @param request UpdateMuteConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and MuteConfig
+ */
+ public updateMuteConfig(request: google.cloud.securitycenter.v1.IUpdateMuteConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateMuteConfigCallback): void;
+
+ /**
+ * Calls UpdateMuteConfig.
+ * @param request UpdateMuteConfigRequest message or plain object
+ * @returns Promise
+ */
+ public updateMuteConfig(request: google.cloud.securitycenter.v1.IUpdateMuteConfigRequest): Promise;
+
+ /**
+ * Calls UpdateNotificationConfig.
+ * @param request UpdateNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and NotificationConfig
+ */
+ public updateNotificationConfig(request: google.cloud.securitycenter.v1.IUpdateNotificationConfigRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateNotificationConfigCallback): void;
+
+ /**
+ * Calls UpdateNotificationConfig.
+ * @param request UpdateNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public updateNotificationConfig(request: google.cloud.securitycenter.v1.IUpdateNotificationConfigRequest): Promise;
+
+ /**
+ * Calls UpdateOrganizationSettings.
+ * @param request UpdateOrganizationSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and OrganizationSettings
+ */
+ public updateOrganizationSettings(request: google.cloud.securitycenter.v1.IUpdateOrganizationSettingsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateOrganizationSettingsCallback): void;
+
+ /**
+ * Calls UpdateOrganizationSettings.
+ * @param request UpdateOrganizationSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public updateOrganizationSettings(request: google.cloud.securitycenter.v1.IUpdateOrganizationSettingsRequest): Promise;
+
+ /**
+ * Calls UpdateSource.
+ * @param request UpdateSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public updateSource(request: google.cloud.securitycenter.v1.IUpdateSourceRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateSourceCallback): void;
+
+ /**
+ * Calls UpdateSource.
+ * @param request UpdateSourceRequest message or plain object
+ * @returns Promise
+ */
+ public updateSource(request: google.cloud.securitycenter.v1.IUpdateSourceRequest): Promise;
+
+ /**
+ * Calls UpdateSecurityMarks.
+ * @param request UpdateSecurityMarksRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and SecurityMarks
+ */
+ public updateSecurityMarks(request: google.cloud.securitycenter.v1.IUpdateSecurityMarksRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateSecurityMarksCallback): void;
+
+ /**
+ * Calls UpdateSecurityMarks.
+ * @param request UpdateSecurityMarksRequest message or plain object
+ * @returns Promise
+ */
+ public updateSecurityMarks(request: google.cloud.securitycenter.v1.IUpdateSecurityMarksRequest): Promise;
+
+ /**
+ * Calls CreateBigQueryExport.
+ * @param request CreateBigQueryExportRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BigQueryExport
+ */
+ public createBigQueryExport(request: google.cloud.securitycenter.v1.ICreateBigQueryExportRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.CreateBigQueryExportCallback): void;
+
+ /**
+ * Calls CreateBigQueryExport.
+ * @param request CreateBigQueryExportRequest message or plain object
+ * @returns Promise
+ */
+ public createBigQueryExport(request: google.cloud.securitycenter.v1.ICreateBigQueryExportRequest): Promise;
+
+ /**
+ * Calls DeleteBigQueryExport.
+ * @param request DeleteBigQueryExportRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteBigQueryExport(request: google.cloud.securitycenter.v1.IDeleteBigQueryExportRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.DeleteBigQueryExportCallback): void;
+
+ /**
+ * Calls DeleteBigQueryExport.
+ * @param request DeleteBigQueryExportRequest message or plain object
+ * @returns Promise
+ */
+ public deleteBigQueryExport(request: google.cloud.securitycenter.v1.IDeleteBigQueryExportRequest): Promise;
+
+ /**
+ * Calls UpdateBigQueryExport.
+ * @param request UpdateBigQueryExportRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and BigQueryExport
+ */
+ public updateBigQueryExport(request: google.cloud.securitycenter.v1.IUpdateBigQueryExportRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.UpdateBigQueryExportCallback): void;
+
+ /**
+ * Calls UpdateBigQueryExport.
+ * @param request UpdateBigQueryExportRequest message or plain object
+ * @returns Promise
+ */
+ public updateBigQueryExport(request: google.cloud.securitycenter.v1.IUpdateBigQueryExportRequest): Promise;
+
+ /**
+ * Calls ListBigQueryExports.
+ * @param request ListBigQueryExportsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListBigQueryExportsResponse
+ */
+ public listBigQueryExports(request: google.cloud.securitycenter.v1.IListBigQueryExportsRequest, callback: google.cloud.securitycenter.v1.SecurityCenter.ListBigQueryExportsCallback): void;
+
+ /**
+ * Calls ListBigQueryExports.
+ * @param request ListBigQueryExportsRequest message or plain object
+ * @returns Promise
+ */
+ public listBigQueryExports(request: google.cloud.securitycenter.v1.IListBigQueryExportsRequest): Promise;
+ }
+
+ namespace SecurityCenter {
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|bulkMuteFindings}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type BulkMuteFindingsCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|createSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type CreateSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|createFinding}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type CreateFindingCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|createMuteConfig}.
+ * @param error Error, if any
+ * @param [response] MuteConfig
+ */
+ type CreateMuteConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.MuteConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|createNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] NotificationConfig
+ */
+ type CreateNotificationConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.NotificationConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|deleteMuteConfig}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteMuteConfigCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|deleteNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteNotificationConfigCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|getBigQueryExport}.
+ * @param error Error, if any
+ * @param [response] BigQueryExport
+ */
+ type GetBigQueryExportCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.BigQueryExport) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|getMuteConfig}.
+ * @param error Error, if any
+ * @param [response] MuteConfig
+ */
+ type GetMuteConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.MuteConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|getNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] NotificationConfig
+ */
+ type GetNotificationConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.NotificationConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|getOrganizationSettings}.
+ * @param error Error, if any
+ * @param [response] OrganizationSettings
+ */
+ type GetOrganizationSettingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.OrganizationSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|getSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type GetSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|groupAssets}.
+ * @param error Error, if any
+ * @param [response] GroupAssetsResponse
+ */
+ type GroupAssetsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.GroupAssetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|groupFindings}.
+ * @param error Error, if any
+ * @param [response] GroupFindingsResponse
+ */
+ type GroupFindingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.GroupFindingsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|listAssets}.
+ * @param error Error, if any
+ * @param [response] ListAssetsResponse
+ */
+ type ListAssetsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.ListAssetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|listFindings}.
+ * @param error Error, if any
+ * @param [response] ListFindingsResponse
+ */
+ type ListFindingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.ListFindingsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|listMuteConfigs}.
+ * @param error Error, if any
+ * @param [response] ListMuteConfigsResponse
+ */
+ type ListMuteConfigsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.ListMuteConfigsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|listNotificationConfigs}.
+ * @param error Error, if any
+ * @param [response] ListNotificationConfigsResponse
+ */
+ type ListNotificationConfigsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.ListNotificationConfigsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|listSources}.
+ * @param error Error, if any
+ * @param [response] ListSourcesResponse
+ */
+ type ListSourcesCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.ListSourcesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|runAssetDiscovery}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type RunAssetDiscoveryCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|setFindingState}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type SetFindingStateCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|setMute}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type SetMuteCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateExternalSystem}.
+ * @param error Error, if any
+ * @param [response] ExternalSystem
+ */
+ type UpdateExternalSystemCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.ExternalSystem) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateFinding}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type UpdateFindingCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateMuteConfig}.
+ * @param error Error, if any
+ * @param [response] MuteConfig
+ */
+ type UpdateMuteConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.MuteConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] NotificationConfig
+ */
+ type UpdateNotificationConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.NotificationConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateOrganizationSettings}.
+ * @param error Error, if any
+ * @param [response] OrganizationSettings
+ */
+ type UpdateOrganizationSettingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.OrganizationSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type UpdateSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateSecurityMarks}.
+ * @param error Error, if any
+ * @param [response] SecurityMarks
+ */
+ type UpdateSecurityMarksCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.SecurityMarks) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|createBigQueryExport}.
+ * @param error Error, if any
+ * @param [response] BigQueryExport
+ */
+ type CreateBigQueryExportCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.BigQueryExport) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|deleteBigQueryExport}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteBigQueryExportCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|updateBigQueryExport}.
+ * @param error Error, if any
+ * @param [response] BigQueryExport
+ */
+ type UpdateBigQueryExportCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.BigQueryExport) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1.SecurityCenter|listBigQueryExports}.
+ * @param error Error, if any
+ * @param [response] ListBigQueryExportsResponse
+ */
+ type ListBigQueryExportsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1.ListBigQueryExportsResponse) => void;
+ }
+
+ /** Properties of a BulkMuteFindingsRequest. */
+ interface IBulkMuteFindingsRequest {
+
+ /** BulkMuteFindingsRequest parent */
+ parent?: (string|null);
+
+ /** BulkMuteFindingsRequest filter */
+ filter?: (string|null);
+
+ /** BulkMuteFindingsRequest muteAnnotation */
+ muteAnnotation?: (string|null);
+ }
+
+ /** Represents a BulkMuteFindingsRequest. */
+ class BulkMuteFindingsRequest implements IBulkMuteFindingsRequest {
+
+ /**
+ * Constructs a new BulkMuteFindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IBulkMuteFindingsRequest);
+
+ /** BulkMuteFindingsRequest parent. */
+ public parent: string;
+
+ /** BulkMuteFindingsRequest filter. */
+ public filter: string;
+
+ /** BulkMuteFindingsRequest muteAnnotation. */
+ public muteAnnotation: string;
+
+ /**
+ * Creates a new BulkMuteFindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BulkMuteFindingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IBulkMuteFindingsRequest): google.cloud.securitycenter.v1.BulkMuteFindingsRequest;
+
+ /**
+ * Encodes the specified BulkMuteFindingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.BulkMuteFindingsRequest.verify|verify} messages.
+ * @param message BulkMuteFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IBulkMuteFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BulkMuteFindingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.BulkMuteFindingsRequest.verify|verify} messages.
+ * @param message BulkMuteFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IBulkMuteFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BulkMuteFindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BulkMuteFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.BulkMuteFindingsRequest;
+
+ /**
+ * Decodes a BulkMuteFindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BulkMuteFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.BulkMuteFindingsRequest;
+
+ /**
+ * Verifies a BulkMuteFindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BulkMuteFindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BulkMuteFindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.BulkMuteFindingsRequest;
+
+ /**
+ * Creates a plain object from a BulkMuteFindingsRequest message. Also converts values to other types if specified.
+ * @param message BulkMuteFindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.BulkMuteFindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BulkMuteFindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BulkMuteFindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BulkMuteFindingsResponse. */
+ interface IBulkMuteFindingsResponse {
+ }
+
+ /** Represents a BulkMuteFindingsResponse. */
+ class BulkMuteFindingsResponse implements IBulkMuteFindingsResponse {
+
+ /**
+ * Constructs a new BulkMuteFindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IBulkMuteFindingsResponse);
+
+ /**
+ * Creates a new BulkMuteFindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BulkMuteFindingsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IBulkMuteFindingsResponse): google.cloud.securitycenter.v1.BulkMuteFindingsResponse;
+
+ /**
+ * Encodes the specified BulkMuteFindingsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.BulkMuteFindingsResponse.verify|verify} messages.
+ * @param message BulkMuteFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IBulkMuteFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BulkMuteFindingsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.BulkMuteFindingsResponse.verify|verify} messages.
+ * @param message BulkMuteFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IBulkMuteFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BulkMuteFindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BulkMuteFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.BulkMuteFindingsResponse;
+
+ /**
+ * Decodes a BulkMuteFindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BulkMuteFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.BulkMuteFindingsResponse;
+
+ /**
+ * Verifies a BulkMuteFindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BulkMuteFindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BulkMuteFindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.BulkMuteFindingsResponse;
+
+ /**
+ * Creates a plain object from a BulkMuteFindingsResponse message. Also converts values to other types if specified.
+ * @param message BulkMuteFindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.BulkMuteFindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BulkMuteFindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BulkMuteFindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateFindingRequest. */
+ interface ICreateFindingRequest {
+
+ /** CreateFindingRequest parent */
+ parent?: (string|null);
+
+ /** CreateFindingRequest findingId */
+ findingId?: (string|null);
+
+ /** CreateFindingRequest finding */
+ finding?: (google.cloud.securitycenter.v1.IFinding|null);
+ }
+
+ /** Represents a CreateFindingRequest. */
+ class CreateFindingRequest implements ICreateFindingRequest {
+
+ /**
+ * Constructs a new CreateFindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICreateFindingRequest);
+
+ /** CreateFindingRequest parent. */
+ public parent: string;
+
+ /** CreateFindingRequest findingId. */
+ public findingId: string;
+
+ /** CreateFindingRequest finding. */
+ public finding?: (google.cloud.securitycenter.v1.IFinding|null);
+
+ /**
+ * Creates a new CreateFindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateFindingRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICreateFindingRequest): google.cloud.securitycenter.v1.CreateFindingRequest;
+
+ /**
+ * Encodes the specified CreateFindingRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.CreateFindingRequest.verify|verify} messages.
+ * @param message CreateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICreateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateFindingRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.CreateFindingRequest.verify|verify} messages.
+ * @param message CreateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICreateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateFindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.CreateFindingRequest;
+
+ /**
+ * Decodes a CreateFindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.CreateFindingRequest;
+
+ /**
+ * Verifies a CreateFindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateFindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateFindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.CreateFindingRequest;
+
+ /**
+ * Creates a plain object from a CreateFindingRequest message. Also converts values to other types if specified.
+ * @param message CreateFindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.CreateFindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateFindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateFindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateMuteConfigRequest. */
+ interface ICreateMuteConfigRequest {
+
+ /** CreateMuteConfigRequest parent */
+ parent?: (string|null);
+
+ /** CreateMuteConfigRequest muteConfig */
+ muteConfig?: (google.cloud.securitycenter.v1.IMuteConfig|null);
+
+ /** CreateMuteConfigRequest muteConfigId */
+ muteConfigId?: (string|null);
+ }
+
+ /** Represents a CreateMuteConfigRequest. */
+ class CreateMuteConfigRequest implements ICreateMuteConfigRequest {
+
+ /**
+ * Constructs a new CreateMuteConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICreateMuteConfigRequest);
+
+ /** CreateMuteConfigRequest parent. */
+ public parent: string;
+
+ /** CreateMuteConfigRequest muteConfig. */
+ public muteConfig?: (google.cloud.securitycenter.v1.IMuteConfig|null);
+
+ /** CreateMuteConfigRequest muteConfigId. */
+ public muteConfigId: string;
+
+ /**
+ * Creates a new CreateMuteConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateMuteConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICreateMuteConfigRequest): google.cloud.securitycenter.v1.CreateMuteConfigRequest;
+
+ /**
+ * Encodes the specified CreateMuteConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.CreateMuteConfigRequest.verify|verify} messages.
+ * @param message CreateMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICreateMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateMuteConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.CreateMuteConfigRequest.verify|verify} messages.
+ * @param message CreateMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICreateMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateMuteConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.CreateMuteConfigRequest;
+
+ /**
+ * Decodes a CreateMuteConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.CreateMuteConfigRequest;
+
+ /**
+ * Verifies a CreateMuteConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateMuteConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateMuteConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.CreateMuteConfigRequest;
+
+ /**
+ * Creates a plain object from a CreateMuteConfigRequest message. Also converts values to other types if specified.
+ * @param message CreateMuteConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.CreateMuteConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateMuteConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateMuteConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateNotificationConfigRequest. */
+ interface ICreateNotificationConfigRequest {
+
+ /** CreateNotificationConfigRequest parent */
+ parent?: (string|null);
+
+ /** CreateNotificationConfigRequest configId */
+ configId?: (string|null);
+
+ /** CreateNotificationConfigRequest notificationConfig */
+ notificationConfig?: (google.cloud.securitycenter.v1.INotificationConfig|null);
+ }
+
+ /** Represents a CreateNotificationConfigRequest. */
+ class CreateNotificationConfigRequest implements ICreateNotificationConfigRequest {
+
+ /**
+ * Constructs a new CreateNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICreateNotificationConfigRequest);
+
+ /** CreateNotificationConfigRequest parent. */
+ public parent: string;
+
+ /** CreateNotificationConfigRequest configId. */
+ public configId: string;
+
+ /** CreateNotificationConfigRequest notificationConfig. */
+ public notificationConfig?: (google.cloud.securitycenter.v1.INotificationConfig|null);
+
+ /**
+ * Creates a new CreateNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICreateNotificationConfigRequest): google.cloud.securitycenter.v1.CreateNotificationConfigRequest;
+
+ /**
+ * Encodes the specified CreateNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.CreateNotificationConfigRequest.verify|verify} messages.
+ * @param message CreateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICreateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.CreateNotificationConfigRequest.verify|verify} messages.
+ * @param message CreateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICreateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.CreateNotificationConfigRequest;
+
+ /**
+ * Decodes a CreateNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.CreateNotificationConfigRequest;
+
+ /**
+ * Verifies a CreateNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.CreateNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from a CreateNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message CreateNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.CreateNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateSourceRequest. */
+ interface ICreateSourceRequest {
+
+ /** CreateSourceRequest parent */
+ parent?: (string|null);
+
+ /** CreateSourceRequest source */
+ source?: (google.cloud.securitycenter.v1.ISource|null);
+ }
+
+ /** Represents a CreateSourceRequest. */
+ class CreateSourceRequest implements ICreateSourceRequest {
+
+ /**
+ * Constructs a new CreateSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICreateSourceRequest);
+
+ /** CreateSourceRequest parent. */
+ public parent: string;
+
+ /** CreateSourceRequest source. */
+ public source?: (google.cloud.securitycenter.v1.ISource|null);
+
+ /**
+ * Creates a new CreateSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICreateSourceRequest): google.cloud.securitycenter.v1.CreateSourceRequest;
+
+ /**
+ * Encodes the specified CreateSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.CreateSourceRequest.verify|verify} messages.
+ * @param message CreateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICreateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.CreateSourceRequest.verify|verify} messages.
+ * @param message CreateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICreateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.CreateSourceRequest;
+
+ /**
+ * Decodes a CreateSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.CreateSourceRequest;
+
+ /**
+ * Verifies a CreateSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.CreateSourceRequest;
+
+ /**
+ * Creates a plain object from a CreateSourceRequest message. Also converts values to other types if specified.
+ * @param message CreateSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.CreateSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteMuteConfigRequest. */
+ interface IDeleteMuteConfigRequest {
+
+ /** DeleteMuteConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteMuteConfigRequest. */
+ class DeleteMuteConfigRequest implements IDeleteMuteConfigRequest {
+
+ /**
+ * Constructs a new DeleteMuteConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IDeleteMuteConfigRequest);
+
+ /** DeleteMuteConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteMuteConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteMuteConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IDeleteMuteConfigRequest): google.cloud.securitycenter.v1.DeleteMuteConfigRequest;
+
+ /**
+ * Encodes the specified DeleteMuteConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.DeleteMuteConfigRequest.verify|verify} messages.
+ * @param message DeleteMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IDeleteMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteMuteConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.DeleteMuteConfigRequest.verify|verify} messages.
+ * @param message DeleteMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IDeleteMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteMuteConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.DeleteMuteConfigRequest;
+
+ /**
+ * Decodes a DeleteMuteConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.DeleteMuteConfigRequest;
+
+ /**
+ * Verifies a DeleteMuteConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteMuteConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteMuteConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.DeleteMuteConfigRequest;
+
+ /**
+ * Creates a plain object from a DeleteMuteConfigRequest message. Also converts values to other types if specified.
+ * @param message DeleteMuteConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.DeleteMuteConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteMuteConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteMuteConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteNotificationConfigRequest. */
+ interface IDeleteNotificationConfigRequest {
+
+ /** DeleteNotificationConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteNotificationConfigRequest. */
+ class DeleteNotificationConfigRequest implements IDeleteNotificationConfigRequest {
+
+ /**
+ * Constructs a new DeleteNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IDeleteNotificationConfigRequest);
+
+ /** DeleteNotificationConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IDeleteNotificationConfigRequest): google.cloud.securitycenter.v1.DeleteNotificationConfigRequest;
+
+ /**
+ * Encodes the specified DeleteNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.DeleteNotificationConfigRequest.verify|verify} messages.
+ * @param message DeleteNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IDeleteNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.DeleteNotificationConfigRequest.verify|verify} messages.
+ * @param message DeleteNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IDeleteNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.DeleteNotificationConfigRequest;
+
+ /**
+ * Decodes a DeleteNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.DeleteNotificationConfigRequest;
+
+ /**
+ * Verifies a DeleteNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.DeleteNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from a DeleteNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message DeleteNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.DeleteNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetBigQueryExportRequest. */
+ interface IGetBigQueryExportRequest {
+
+ /** GetBigQueryExportRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetBigQueryExportRequest. */
+ class GetBigQueryExportRequest implements IGetBigQueryExportRequest {
+
+ /**
+ * Constructs a new GetBigQueryExportRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGetBigQueryExportRequest);
+
+ /** GetBigQueryExportRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetBigQueryExportRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetBigQueryExportRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGetBigQueryExportRequest): google.cloud.securitycenter.v1.GetBigQueryExportRequest;
+
+ /**
+ * Encodes the specified GetBigQueryExportRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.GetBigQueryExportRequest.verify|verify} messages.
+ * @param message GetBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGetBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetBigQueryExportRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GetBigQueryExportRequest.verify|verify} messages.
+ * @param message GetBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGetBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetBigQueryExportRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GetBigQueryExportRequest;
+
+ /**
+ * Decodes a GetBigQueryExportRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GetBigQueryExportRequest;
+
+ /**
+ * Verifies a GetBigQueryExportRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetBigQueryExportRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetBigQueryExportRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GetBigQueryExportRequest;
+
+ /**
+ * Creates a plain object from a GetBigQueryExportRequest message. Also converts values to other types if specified.
+ * @param message GetBigQueryExportRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GetBigQueryExportRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetBigQueryExportRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetBigQueryExportRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetMuteConfigRequest. */
+ interface IGetMuteConfigRequest {
+
+ /** GetMuteConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetMuteConfigRequest. */
+ class GetMuteConfigRequest implements IGetMuteConfigRequest {
+
+ /**
+ * Constructs a new GetMuteConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGetMuteConfigRequest);
+
+ /** GetMuteConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetMuteConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetMuteConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGetMuteConfigRequest): google.cloud.securitycenter.v1.GetMuteConfigRequest;
+
+ /**
+ * Encodes the specified GetMuteConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.GetMuteConfigRequest.verify|verify} messages.
+ * @param message GetMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGetMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetMuteConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GetMuteConfigRequest.verify|verify} messages.
+ * @param message GetMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGetMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetMuteConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GetMuteConfigRequest;
+
+ /**
+ * Decodes a GetMuteConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GetMuteConfigRequest;
+
+ /**
+ * Verifies a GetMuteConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetMuteConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetMuteConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GetMuteConfigRequest;
+
+ /**
+ * Creates a plain object from a GetMuteConfigRequest message. Also converts values to other types if specified.
+ * @param message GetMuteConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GetMuteConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetMuteConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetMuteConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetNotificationConfigRequest. */
+ interface IGetNotificationConfigRequest {
+
+ /** GetNotificationConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetNotificationConfigRequest. */
+ class GetNotificationConfigRequest implements IGetNotificationConfigRequest {
+
+ /**
+ * Constructs a new GetNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGetNotificationConfigRequest);
+
+ /** GetNotificationConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGetNotificationConfigRequest): google.cloud.securitycenter.v1.GetNotificationConfigRequest;
+
+ /**
+ * Encodes the specified GetNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.GetNotificationConfigRequest.verify|verify} messages.
+ * @param message GetNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGetNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GetNotificationConfigRequest.verify|verify} messages.
+ * @param message GetNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGetNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GetNotificationConfigRequest;
+
+ /**
+ * Decodes a GetNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GetNotificationConfigRequest;
+
+ /**
+ * Verifies a GetNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GetNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from a GetNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message GetNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GetNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOrganizationSettingsRequest. */
+ interface IGetOrganizationSettingsRequest {
+
+ /** GetOrganizationSettingsRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOrganizationSettingsRequest. */
+ class GetOrganizationSettingsRequest implements IGetOrganizationSettingsRequest {
+
+ /**
+ * Constructs a new GetOrganizationSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGetOrganizationSettingsRequest);
+
+ /** GetOrganizationSettingsRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOrganizationSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOrganizationSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGetOrganizationSettingsRequest): google.cloud.securitycenter.v1.GetOrganizationSettingsRequest;
+
+ /**
+ * Encodes the specified GetOrganizationSettingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.GetOrganizationSettingsRequest.verify|verify} messages.
+ * @param message GetOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGetOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOrganizationSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GetOrganizationSettingsRequest.verify|verify} messages.
+ * @param message GetOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGetOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOrganizationSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GetOrganizationSettingsRequest;
+
+ /**
+ * Decodes a GetOrganizationSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GetOrganizationSettingsRequest;
+
+ /**
+ * Verifies a GetOrganizationSettingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOrganizationSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOrganizationSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GetOrganizationSettingsRequest;
+
+ /**
+ * Creates a plain object from a GetOrganizationSettingsRequest message. Also converts values to other types if specified.
+ * @param message GetOrganizationSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GetOrganizationSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOrganizationSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOrganizationSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetSourceRequest. */
+ interface IGetSourceRequest {
+
+ /** GetSourceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetSourceRequest. */
+ class GetSourceRequest implements IGetSourceRequest {
+
+ /**
+ * Constructs a new GetSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGetSourceRequest);
+
+ /** GetSourceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGetSourceRequest): google.cloud.securitycenter.v1.GetSourceRequest;
+
+ /**
+ * Encodes the specified GetSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.GetSourceRequest.verify|verify} messages.
+ * @param message GetSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGetSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GetSourceRequest.verify|verify} messages.
+ * @param message GetSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGetSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GetSourceRequest;
+
+ /**
+ * Decodes a GetSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GetSourceRequest;
+
+ /**
+ * Verifies a GetSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GetSourceRequest;
+
+ /**
+ * Creates a plain object from a GetSourceRequest message. Also converts values to other types if specified.
+ * @param message GetSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GetSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupAssetsRequest. */
+ interface IGroupAssetsRequest {
+
+ /** GroupAssetsRequest parent */
+ parent?: (string|null);
+
+ /** GroupAssetsRequest filter */
+ filter?: (string|null);
+
+ /** GroupAssetsRequest groupBy */
+ groupBy?: (string|null);
+
+ /** GroupAssetsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupAssetsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** GroupAssetsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a GroupAssetsRequest. */
+ class GroupAssetsRequest implements IGroupAssetsRequest {
+
+ /**
+ * Constructs a new GroupAssetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGroupAssetsRequest);
+
+ /** GroupAssetsRequest parent. */
+ public parent: string;
+
+ /** GroupAssetsRequest filter. */
+ public filter: string;
+
+ /** GroupAssetsRequest groupBy. */
+ public groupBy: string;
+
+ /** GroupAssetsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupAssetsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsRequest pageToken. */
+ public pageToken: string;
+
+ /** GroupAssetsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new GroupAssetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupAssetsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGroupAssetsRequest): google.cloud.securitycenter.v1.GroupAssetsRequest;
+
+ /**
+ * Encodes the specified GroupAssetsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.GroupAssetsRequest.verify|verify} messages.
+ * @param message GroupAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGroupAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupAssetsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GroupAssetsRequest.verify|verify} messages.
+ * @param message GroupAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGroupAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupAssetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GroupAssetsRequest;
+
+ /**
+ * Decodes a GroupAssetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GroupAssetsRequest;
+
+ /**
+ * Verifies a GroupAssetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupAssetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupAssetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GroupAssetsRequest;
+
+ /**
+ * Creates a plain object from a GroupAssetsRequest message. Also converts values to other types if specified.
+ * @param message GroupAssetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GroupAssetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupAssetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupAssetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupAssetsResponse. */
+ interface IGroupAssetsResponse {
+
+ /** GroupAssetsResponse groupByResults */
+ groupByResults?: (google.cloud.securitycenter.v1.IGroupResult[]|null);
+
+ /** GroupAssetsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** GroupAssetsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a GroupAssetsResponse. */
+ class GroupAssetsResponse implements IGroupAssetsResponse {
+
+ /**
+ * Constructs a new GroupAssetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGroupAssetsResponse);
+
+ /** GroupAssetsResponse groupByResults. */
+ public groupByResults: google.cloud.securitycenter.v1.IGroupResult[];
+
+ /** GroupAssetsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** GroupAssetsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new GroupAssetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupAssetsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGroupAssetsResponse): google.cloud.securitycenter.v1.GroupAssetsResponse;
+
+ /**
+ * Encodes the specified GroupAssetsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.GroupAssetsResponse.verify|verify} messages.
+ * @param message GroupAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGroupAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupAssetsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GroupAssetsResponse.verify|verify} messages.
+ * @param message GroupAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGroupAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupAssetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GroupAssetsResponse;
+
+ /**
+ * Decodes a GroupAssetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GroupAssetsResponse;
+
+ /**
+ * Verifies a GroupAssetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupAssetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupAssetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GroupAssetsResponse;
+
+ /**
+ * Creates a plain object from a GroupAssetsResponse message. Also converts values to other types if specified.
+ * @param message GroupAssetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GroupAssetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupAssetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupAssetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupFindingsRequest. */
+ interface IGroupFindingsRequest {
+
+ /** GroupFindingsRequest parent */
+ parent?: (string|null);
+
+ /** GroupFindingsRequest filter */
+ filter?: (string|null);
+
+ /** GroupFindingsRequest groupBy */
+ groupBy?: (string|null);
+
+ /** GroupFindingsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupFindingsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** GroupFindingsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a GroupFindingsRequest. */
+ class GroupFindingsRequest implements IGroupFindingsRequest {
+
+ /**
+ * Constructs a new GroupFindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGroupFindingsRequest);
+
+ /** GroupFindingsRequest parent. */
+ public parent: string;
+
+ /** GroupFindingsRequest filter. */
+ public filter: string;
+
+ /** GroupFindingsRequest groupBy. */
+ public groupBy: string;
+
+ /** GroupFindingsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupFindingsRequest pageToken. */
+ public pageToken: string;
+
+ /** GroupFindingsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new GroupFindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupFindingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGroupFindingsRequest): google.cloud.securitycenter.v1.GroupFindingsRequest;
+
+ /**
+ * Encodes the specified GroupFindingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.GroupFindingsRequest.verify|verify} messages.
+ * @param message GroupFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGroupFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupFindingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GroupFindingsRequest.verify|verify} messages.
+ * @param message GroupFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGroupFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupFindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GroupFindingsRequest;
+
+ /**
+ * Decodes a GroupFindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GroupFindingsRequest;
+
+ /**
+ * Verifies a GroupFindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupFindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupFindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GroupFindingsRequest;
+
+ /**
+ * Creates a plain object from a GroupFindingsRequest message. Also converts values to other types if specified.
+ * @param message GroupFindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GroupFindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupFindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupFindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupFindingsResponse. */
+ interface IGroupFindingsResponse {
+
+ /** GroupFindingsResponse groupByResults */
+ groupByResults?: (google.cloud.securitycenter.v1.IGroupResult[]|null);
+
+ /** GroupFindingsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** GroupFindingsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a GroupFindingsResponse. */
+ class GroupFindingsResponse implements IGroupFindingsResponse {
+
+ /**
+ * Constructs a new GroupFindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGroupFindingsResponse);
+
+ /** GroupFindingsResponse groupByResults. */
+ public groupByResults: google.cloud.securitycenter.v1.IGroupResult[];
+
+ /** GroupFindingsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** GroupFindingsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new GroupFindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupFindingsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGroupFindingsResponse): google.cloud.securitycenter.v1.GroupFindingsResponse;
+
+ /**
+ * Encodes the specified GroupFindingsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.GroupFindingsResponse.verify|verify} messages.
+ * @param message GroupFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGroupFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupFindingsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GroupFindingsResponse.verify|verify} messages.
+ * @param message GroupFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGroupFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupFindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GroupFindingsResponse;
+
+ /**
+ * Decodes a GroupFindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GroupFindingsResponse;
+
+ /**
+ * Verifies a GroupFindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupFindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupFindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GroupFindingsResponse;
+
+ /**
+ * Creates a plain object from a GroupFindingsResponse message. Also converts values to other types if specified.
+ * @param message GroupFindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GroupFindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupFindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupFindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupResult. */
+ interface IGroupResult {
+
+ /** GroupResult properties */
+ properties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** GroupResult count */
+ count?: (number|Long|string|null);
+ }
+
+ /** Represents a GroupResult. */
+ class GroupResult implements IGroupResult {
+
+ /**
+ * Constructs a new GroupResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IGroupResult);
+
+ /** GroupResult properties. */
+ public properties: { [k: string]: google.protobuf.IValue };
+
+ /** GroupResult count. */
+ public count: (number|Long|string);
+
+ /**
+ * Creates a new GroupResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IGroupResult): google.cloud.securitycenter.v1.GroupResult;
+
+ /**
+ * Encodes the specified GroupResult message. Does not implicitly {@link google.cloud.securitycenter.v1.GroupResult.verify|verify} messages.
+ * @param message GroupResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IGroupResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.GroupResult.verify|verify} messages.
+ * @param message GroupResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IGroupResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.GroupResult;
+
+ /**
+ * Decodes a GroupResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.GroupResult;
+
+ /**
+ * Verifies a GroupResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.GroupResult;
+
+ /**
+ * Creates a plain object from a GroupResult message. Also converts values to other types if specified.
+ * @param message GroupResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.GroupResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListMuteConfigsRequest. */
+ interface IListMuteConfigsRequest {
+
+ /** ListMuteConfigsRequest parent */
+ parent?: (string|null);
+
+ /** ListMuteConfigsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListMuteConfigsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListMuteConfigsRequest. */
+ class ListMuteConfigsRequest implements IListMuteConfigsRequest {
+
+ /**
+ * Constructs a new ListMuteConfigsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListMuteConfigsRequest);
+
+ /** ListMuteConfigsRequest parent. */
+ public parent: string;
+
+ /** ListMuteConfigsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListMuteConfigsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListMuteConfigsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListMuteConfigsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListMuteConfigsRequest): google.cloud.securitycenter.v1.ListMuteConfigsRequest;
+
+ /**
+ * Encodes the specified ListMuteConfigsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.ListMuteConfigsRequest.verify|verify} messages.
+ * @param message ListMuteConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListMuteConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListMuteConfigsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListMuteConfigsRequest.verify|verify} messages.
+ * @param message ListMuteConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListMuteConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListMuteConfigsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListMuteConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListMuteConfigsRequest;
+
+ /**
+ * Decodes a ListMuteConfigsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListMuteConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListMuteConfigsRequest;
+
+ /**
+ * Verifies a ListMuteConfigsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListMuteConfigsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListMuteConfigsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListMuteConfigsRequest;
+
+ /**
+ * Creates a plain object from a ListMuteConfigsRequest message. Also converts values to other types if specified.
+ * @param message ListMuteConfigsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListMuteConfigsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListMuteConfigsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListMuteConfigsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListMuteConfigsResponse. */
+ interface IListMuteConfigsResponse {
+
+ /** ListMuteConfigsResponse muteConfigs */
+ muteConfigs?: (google.cloud.securitycenter.v1.IMuteConfig[]|null);
+
+ /** ListMuteConfigsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListMuteConfigsResponse. */
+ class ListMuteConfigsResponse implements IListMuteConfigsResponse {
+
+ /**
+ * Constructs a new ListMuteConfigsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListMuteConfigsResponse);
+
+ /** ListMuteConfigsResponse muteConfigs. */
+ public muteConfigs: google.cloud.securitycenter.v1.IMuteConfig[];
+
+ /** ListMuteConfigsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListMuteConfigsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListMuteConfigsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListMuteConfigsResponse): google.cloud.securitycenter.v1.ListMuteConfigsResponse;
+
+ /**
+ * Encodes the specified ListMuteConfigsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.ListMuteConfigsResponse.verify|verify} messages.
+ * @param message ListMuteConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListMuteConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListMuteConfigsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListMuteConfigsResponse.verify|verify} messages.
+ * @param message ListMuteConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListMuteConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListMuteConfigsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListMuteConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListMuteConfigsResponse;
+
+ /**
+ * Decodes a ListMuteConfigsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListMuteConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListMuteConfigsResponse;
+
+ /**
+ * Verifies a ListMuteConfigsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListMuteConfigsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListMuteConfigsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListMuteConfigsResponse;
+
+ /**
+ * Creates a plain object from a ListMuteConfigsResponse message. Also converts values to other types if specified.
+ * @param message ListMuteConfigsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListMuteConfigsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListMuteConfigsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListMuteConfigsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotificationConfigsRequest. */
+ interface IListNotificationConfigsRequest {
+
+ /** ListNotificationConfigsRequest parent */
+ parent?: (string|null);
+
+ /** ListNotificationConfigsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListNotificationConfigsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListNotificationConfigsRequest. */
+ class ListNotificationConfigsRequest implements IListNotificationConfigsRequest {
+
+ /**
+ * Constructs a new ListNotificationConfigsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListNotificationConfigsRequest);
+
+ /** ListNotificationConfigsRequest parent. */
+ public parent: string;
+
+ /** ListNotificationConfigsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListNotificationConfigsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListNotificationConfigsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotificationConfigsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListNotificationConfigsRequest): google.cloud.securitycenter.v1.ListNotificationConfigsRequest;
+
+ /**
+ * Encodes the specified ListNotificationConfigsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.ListNotificationConfigsRequest.verify|verify} messages.
+ * @param message ListNotificationConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListNotificationConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotificationConfigsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListNotificationConfigsRequest.verify|verify} messages.
+ * @param message ListNotificationConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListNotificationConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotificationConfigsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotificationConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListNotificationConfigsRequest;
+
+ /**
+ * Decodes a ListNotificationConfigsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotificationConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListNotificationConfigsRequest;
+
+ /**
+ * Verifies a ListNotificationConfigsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListNotificationConfigsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotificationConfigsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListNotificationConfigsRequest;
+
+ /**
+ * Creates a plain object from a ListNotificationConfigsRequest message. Also converts values to other types if specified.
+ * @param message ListNotificationConfigsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListNotificationConfigsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotificationConfigsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotificationConfigsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotificationConfigsResponse. */
+ interface IListNotificationConfigsResponse {
+
+ /** ListNotificationConfigsResponse notificationConfigs */
+ notificationConfigs?: (google.cloud.securitycenter.v1.INotificationConfig[]|null);
+
+ /** ListNotificationConfigsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListNotificationConfigsResponse. */
+ class ListNotificationConfigsResponse implements IListNotificationConfigsResponse {
+
+ /**
+ * Constructs a new ListNotificationConfigsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListNotificationConfigsResponse);
+
+ /** ListNotificationConfigsResponse notificationConfigs. */
+ public notificationConfigs: google.cloud.securitycenter.v1.INotificationConfig[];
+
+ /** ListNotificationConfigsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListNotificationConfigsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotificationConfigsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListNotificationConfigsResponse): google.cloud.securitycenter.v1.ListNotificationConfigsResponse;
+
+ /**
+ * Encodes the specified ListNotificationConfigsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.ListNotificationConfigsResponse.verify|verify} messages.
+ * @param message ListNotificationConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListNotificationConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotificationConfigsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListNotificationConfigsResponse.verify|verify} messages.
+ * @param message ListNotificationConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListNotificationConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotificationConfigsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotificationConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListNotificationConfigsResponse;
+
+ /**
+ * Decodes a ListNotificationConfigsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotificationConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListNotificationConfigsResponse;
+
+ /**
+ * Verifies a ListNotificationConfigsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListNotificationConfigsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotificationConfigsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListNotificationConfigsResponse;
+
+ /**
+ * Creates a plain object from a ListNotificationConfigsResponse message. Also converts values to other types if specified.
+ * @param message ListNotificationConfigsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListNotificationConfigsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotificationConfigsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotificationConfigsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListSourcesRequest. */
+ interface IListSourcesRequest {
+
+ /** ListSourcesRequest parent */
+ parent?: (string|null);
+
+ /** ListSourcesRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListSourcesRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListSourcesRequest. */
+ class ListSourcesRequest implements IListSourcesRequest {
+
+ /**
+ * Constructs a new ListSourcesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListSourcesRequest);
+
+ /** ListSourcesRequest parent. */
+ public parent: string;
+
+ /** ListSourcesRequest pageToken. */
+ public pageToken: string;
+
+ /** ListSourcesRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListSourcesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListSourcesRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListSourcesRequest): google.cloud.securitycenter.v1.ListSourcesRequest;
+
+ /**
+ * Encodes the specified ListSourcesRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.ListSourcesRequest.verify|verify} messages.
+ * @param message ListSourcesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListSourcesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListSourcesRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListSourcesRequest.verify|verify} messages.
+ * @param message ListSourcesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListSourcesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListSourcesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListSourcesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListSourcesRequest;
+
+ /**
+ * Decodes a ListSourcesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListSourcesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListSourcesRequest;
+
+ /**
+ * Verifies a ListSourcesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListSourcesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListSourcesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListSourcesRequest;
+
+ /**
+ * Creates a plain object from a ListSourcesRequest message. Also converts values to other types if specified.
+ * @param message ListSourcesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListSourcesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListSourcesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListSourcesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListSourcesResponse. */
+ interface IListSourcesResponse {
+
+ /** ListSourcesResponse sources */
+ sources?: (google.cloud.securitycenter.v1.ISource[]|null);
+
+ /** ListSourcesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListSourcesResponse. */
+ class ListSourcesResponse implements IListSourcesResponse {
+
+ /**
+ * Constructs a new ListSourcesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListSourcesResponse);
+
+ /** ListSourcesResponse sources. */
+ public sources: google.cloud.securitycenter.v1.ISource[];
+
+ /** ListSourcesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListSourcesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListSourcesResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListSourcesResponse): google.cloud.securitycenter.v1.ListSourcesResponse;
+
+ /**
+ * Encodes the specified ListSourcesResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.ListSourcesResponse.verify|verify} messages.
+ * @param message ListSourcesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListSourcesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListSourcesResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListSourcesResponse.verify|verify} messages.
+ * @param message ListSourcesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListSourcesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListSourcesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListSourcesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListSourcesResponse;
+
+ /**
+ * Decodes a ListSourcesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListSourcesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListSourcesResponse;
+
+ /**
+ * Verifies a ListSourcesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListSourcesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListSourcesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListSourcesResponse;
+
+ /**
+ * Creates a plain object from a ListSourcesResponse message. Also converts values to other types if specified.
+ * @param message ListSourcesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListSourcesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListSourcesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListSourcesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAssetsRequest. */
+ interface IListAssetsRequest {
+
+ /** ListAssetsRequest parent */
+ parent?: (string|null);
+
+ /** ListAssetsRequest filter */
+ filter?: (string|null);
+
+ /** ListAssetsRequest orderBy */
+ orderBy?: (string|null);
+
+ /** ListAssetsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListAssetsRequest fieldMask */
+ fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListAssetsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListAssetsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListAssetsRequest. */
+ class ListAssetsRequest implements IListAssetsRequest {
+
+ /**
+ * Constructs a new ListAssetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListAssetsRequest);
+
+ /** ListAssetsRequest parent. */
+ public parent: string;
+
+ /** ListAssetsRequest filter. */
+ public filter: string;
+
+ /** ListAssetsRequest orderBy. */
+ public orderBy: string;
+
+ /** ListAssetsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListAssetsRequest fieldMask. */
+ public fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListAssetsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListAssetsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListAssetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListAssetsRequest): google.cloud.securitycenter.v1.ListAssetsRequest;
+
+ /**
+ * Encodes the specified ListAssetsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.ListAssetsRequest.verify|verify} messages.
+ * @param message ListAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListAssetsRequest.verify|verify} messages.
+ * @param message ListAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListAssetsRequest;
+
+ /**
+ * Decodes a ListAssetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListAssetsRequest;
+
+ /**
+ * Verifies a ListAssetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListAssetsRequest;
+
+ /**
+ * Creates a plain object from a ListAssetsRequest message. Also converts values to other types if specified.
+ * @param message ListAssetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListAssetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAssetsResponse. */
+ interface IListAssetsResponse {
+
+ /** ListAssetsResponse listAssetsResults */
+ listAssetsResults?: (google.cloud.securitycenter.v1.ListAssetsResponse.IListAssetsResult[]|null);
+
+ /** ListAssetsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListAssetsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a ListAssetsResponse. */
+ class ListAssetsResponse implements IListAssetsResponse {
+
+ /**
+ * Constructs a new ListAssetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListAssetsResponse);
+
+ /** ListAssetsResponse listAssetsResults. */
+ public listAssetsResults: google.cloud.securitycenter.v1.ListAssetsResponse.IListAssetsResult[];
+
+ /** ListAssetsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListAssetsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new ListAssetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListAssetsResponse): google.cloud.securitycenter.v1.ListAssetsResponse;
+
+ /**
+ * Encodes the specified ListAssetsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.ListAssetsResponse.verify|verify} messages.
+ * @param message ListAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListAssetsResponse.verify|verify} messages.
+ * @param message ListAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListAssetsResponse;
+
+ /**
+ * Decodes a ListAssetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListAssetsResponse;
+
+ /**
+ * Verifies a ListAssetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListAssetsResponse;
+
+ /**
+ * Creates a plain object from a ListAssetsResponse message. Also converts values to other types if specified.
+ * @param message ListAssetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListAssetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListAssetsResponse {
+
+ /** Properties of a ListAssetsResult. */
+ interface IListAssetsResult {
+
+ /** ListAssetsResult asset */
+ asset?: (google.cloud.securitycenter.v1.IAsset|null);
+
+ /** ListAssetsResult stateChange */
+ stateChange?: (google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult.StateChange|keyof typeof google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult.StateChange|null);
+ }
+
+ /** Represents a ListAssetsResult. */
+ class ListAssetsResult implements IListAssetsResult {
+
+ /**
+ * Constructs a new ListAssetsResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ListAssetsResponse.IListAssetsResult);
+
+ /** ListAssetsResult asset. */
+ public asset?: (google.cloud.securitycenter.v1.IAsset|null);
+
+ /** ListAssetsResult stateChange. */
+ public stateChange: (google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult.StateChange|keyof typeof google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult.StateChange);
+
+ /**
+ * Creates a new ListAssetsResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ListAssetsResponse.IListAssetsResult): google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Encodes the specified ListAssetsResult message. Does not implicitly {@link google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult.verify|verify} messages.
+ * @param message ListAssetsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ListAssetsResponse.IListAssetsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult.verify|verify} messages.
+ * @param message ListAssetsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ListAssetsResponse.IListAssetsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Decodes a ListAssetsResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Verifies a ListAssetsResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Creates a plain object from a ListAssetsResult message. Also converts values to other types if specified.
+ * @param message ListAssetsResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListAssetsResponse.ListAssetsResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListAssetsResult {
+
+ /** StateChange enum. */
+ enum StateChange {
+ UNUSED = 0,
+ ADDED = 1,
+ REMOVED = 2,
+ ACTIVE = 3
+ }
+ }
+ }
+
+ /** Properties of a ListFindingsRequest. */
+ interface IListFindingsRequest {
+
+ /** ListFindingsRequest parent */
+ parent?: (string|null);
+
+ /** ListFindingsRequest filter */
+ filter?: (string|null);
+
+ /** ListFindingsRequest orderBy */
+ orderBy?: (string|null);
+
+ /** ListFindingsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListFindingsRequest fieldMask */
+ fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListFindingsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListFindingsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListFindingsRequest. */
+ class ListFindingsRequest implements IListFindingsRequest {
+
+ /**
+ * Constructs a new ListFindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListFindingsRequest);
+
+ /** ListFindingsRequest parent. */
+ public parent: string;
+
+ /** ListFindingsRequest filter. */
+ public filter: string;
+
+ /** ListFindingsRequest orderBy. */
+ public orderBy: string;
+
+ /** ListFindingsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListFindingsRequest fieldMask. */
+ public fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListFindingsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListFindingsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListFindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListFindingsRequest): google.cloud.securitycenter.v1.ListFindingsRequest;
+
+ /**
+ * Encodes the specified ListFindingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsRequest.verify|verify} messages.
+ * @param message ListFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsRequest.verify|verify} messages.
+ * @param message ListFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListFindingsRequest;
+
+ /**
+ * Decodes a ListFindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListFindingsRequest;
+
+ /**
+ * Verifies a ListFindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListFindingsRequest;
+
+ /**
+ * Creates a plain object from a ListFindingsRequest message. Also converts values to other types if specified.
+ * @param message ListFindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListFindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListFindingsResponse. */
+ interface IListFindingsResponse {
+
+ /** ListFindingsResponse listFindingsResults */
+ listFindingsResults?: (google.cloud.securitycenter.v1.ListFindingsResponse.IListFindingsResult[]|null);
+
+ /** ListFindingsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListFindingsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a ListFindingsResponse. */
+ class ListFindingsResponse implements IListFindingsResponse {
+
+ /**
+ * Constructs a new ListFindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListFindingsResponse);
+
+ /** ListFindingsResponse listFindingsResults. */
+ public listFindingsResults: google.cloud.securitycenter.v1.ListFindingsResponse.IListFindingsResult[];
+
+ /** ListFindingsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListFindingsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new ListFindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListFindingsResponse): google.cloud.securitycenter.v1.ListFindingsResponse;
+
+ /**
+ * Encodes the specified ListFindingsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsResponse.verify|verify} messages.
+ * @param message ListFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsResponse.verify|verify} messages.
+ * @param message ListFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListFindingsResponse;
+
+ /**
+ * Decodes a ListFindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListFindingsResponse;
+
+ /**
+ * Verifies a ListFindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListFindingsResponse;
+
+ /**
+ * Creates a plain object from a ListFindingsResponse message. Also converts values to other types if specified.
+ * @param message ListFindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListFindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListFindingsResponse {
+
+ /** Properties of a ListFindingsResult. */
+ interface IListFindingsResult {
+
+ /** ListFindingsResult finding */
+ finding?: (google.cloud.securitycenter.v1.IFinding|null);
+
+ /** ListFindingsResult stateChange */
+ stateChange?: (google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.StateChange|keyof typeof google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.StateChange|null);
+
+ /** ListFindingsResult resource */
+ resource?: (google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.IResource|null);
+ }
+
+ /** Represents a ListFindingsResult. */
+ class ListFindingsResult implements IListFindingsResult {
+
+ /**
+ * Constructs a new ListFindingsResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ListFindingsResponse.IListFindingsResult);
+
+ /** ListFindingsResult finding. */
+ public finding?: (google.cloud.securitycenter.v1.IFinding|null);
+
+ /** ListFindingsResult stateChange. */
+ public stateChange: (google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.StateChange|keyof typeof google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.StateChange);
+
+ /** ListFindingsResult resource. */
+ public resource?: (google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.IResource|null);
+
+ /**
+ * Creates a new ListFindingsResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ListFindingsResponse.IListFindingsResult): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Encodes the specified ListFindingsResult message. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.verify|verify} messages.
+ * @param message ListFindingsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ListFindingsResponse.IListFindingsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.verify|verify} messages.
+ * @param message ListFindingsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ListFindingsResponse.IListFindingsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Decodes a ListFindingsResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Verifies a ListFindingsResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Creates a plain object from a ListFindingsResult message. Also converts values to other types if specified.
+ * @param message ListFindingsResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListFindingsResult {
+
+ /** StateChange enum. */
+ enum StateChange {
+ UNUSED = 0,
+ CHANGED = 1,
+ UNCHANGED = 2,
+ ADDED = 3,
+ REMOVED = 4
+ }
+
+ /** Properties of a Resource. */
+ interface IResource {
+
+ /** Resource name */
+ name?: (string|null);
+
+ /** Resource displayName */
+ displayName?: (string|null);
+
+ /** Resource type */
+ type?: (string|null);
+
+ /** Resource projectName */
+ projectName?: (string|null);
+
+ /** Resource projectDisplayName */
+ projectDisplayName?: (string|null);
+
+ /** Resource parentName */
+ parentName?: (string|null);
+
+ /** Resource parentDisplayName */
+ parentDisplayName?: (string|null);
+
+ /** Resource folders */
+ folders?: (google.cloud.securitycenter.v1.IFolder[]|null);
+ }
+
+ /** Represents a Resource. */
+ class Resource implements IResource {
+
+ /**
+ * Constructs a new Resource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.IResource);
+
+ /** Resource name. */
+ public name: string;
+
+ /** Resource displayName. */
+ public displayName: string;
+
+ /** Resource type. */
+ public type: string;
+
+ /** Resource projectName. */
+ public projectName: string;
+
+ /** Resource projectDisplayName. */
+ public projectDisplayName: string;
+
+ /** Resource parentName. */
+ public parentName: string;
+
+ /** Resource parentDisplayName. */
+ public parentDisplayName: string;
+
+ /** Resource folders. */
+ public folders: google.cloud.securitycenter.v1.IFolder[];
+
+ /**
+ * Creates a new Resource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Resource instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.IResource): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Encodes the specified Resource message. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Resource message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Verifies a Resource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Resource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Resource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Creates a plain object from a Resource message. Also converts values to other types if specified.
+ * @param message Resource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListFindingsResponse.ListFindingsResult.Resource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Resource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Resource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+
+ /** Properties of a SetFindingStateRequest. */
+ interface ISetFindingStateRequest {
+
+ /** SetFindingStateRequest name */
+ name?: (string|null);
+
+ /** SetFindingStateRequest state */
+ state?: (google.cloud.securitycenter.v1.Finding.State|keyof typeof google.cloud.securitycenter.v1.Finding.State|null);
+
+ /** SetFindingStateRequest startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a SetFindingStateRequest. */
+ class SetFindingStateRequest implements ISetFindingStateRequest {
+
+ /**
+ * Constructs a new SetFindingStateRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ISetFindingStateRequest);
+
+ /** SetFindingStateRequest name. */
+ public name: string;
+
+ /** SetFindingStateRequest state. */
+ public state: (google.cloud.securitycenter.v1.Finding.State|keyof typeof google.cloud.securitycenter.v1.Finding.State);
+
+ /** SetFindingStateRequest startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new SetFindingStateRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetFindingStateRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ISetFindingStateRequest): google.cloud.securitycenter.v1.SetFindingStateRequest;
+
+ /**
+ * Encodes the specified SetFindingStateRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.SetFindingStateRequest.verify|verify} messages.
+ * @param message SetFindingStateRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ISetFindingStateRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetFindingStateRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.SetFindingStateRequest.verify|verify} messages.
+ * @param message SetFindingStateRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ISetFindingStateRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetFindingStateRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetFindingStateRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.SetFindingStateRequest;
+
+ /**
+ * Decodes a SetFindingStateRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetFindingStateRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.SetFindingStateRequest;
+
+ /**
+ * Verifies a SetFindingStateRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetFindingStateRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetFindingStateRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.SetFindingStateRequest;
+
+ /**
+ * Creates a plain object from a SetFindingStateRequest message. Also converts values to other types if specified.
+ * @param message SetFindingStateRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.SetFindingStateRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetFindingStateRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetFindingStateRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetMuteRequest. */
+ interface ISetMuteRequest {
+
+ /** SetMuteRequest name */
+ name?: (string|null);
+
+ /** SetMuteRequest mute */
+ mute?: (google.cloud.securitycenter.v1.Finding.Mute|keyof typeof google.cloud.securitycenter.v1.Finding.Mute|null);
+ }
+
+ /** Represents a SetMuteRequest. */
+ class SetMuteRequest implements ISetMuteRequest {
+
+ /**
+ * Constructs a new SetMuteRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ISetMuteRequest);
+
+ /** SetMuteRequest name. */
+ public name: string;
+
+ /** SetMuteRequest mute. */
+ public mute: (google.cloud.securitycenter.v1.Finding.Mute|keyof typeof google.cloud.securitycenter.v1.Finding.Mute);
+
+ /**
+ * Creates a new SetMuteRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetMuteRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ISetMuteRequest): google.cloud.securitycenter.v1.SetMuteRequest;
+
+ /**
+ * Encodes the specified SetMuteRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.SetMuteRequest.verify|verify} messages.
+ * @param message SetMuteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ISetMuteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetMuteRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.SetMuteRequest.verify|verify} messages.
+ * @param message SetMuteRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ISetMuteRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetMuteRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetMuteRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.SetMuteRequest;
+
+ /**
+ * Decodes a SetMuteRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetMuteRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.SetMuteRequest;
+
+ /**
+ * Verifies a SetMuteRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetMuteRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetMuteRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.SetMuteRequest;
+
+ /**
+ * Creates a plain object from a SetMuteRequest message. Also converts values to other types if specified.
+ * @param message SetMuteRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.SetMuteRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetMuteRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetMuteRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RunAssetDiscoveryRequest. */
+ interface IRunAssetDiscoveryRequest {
+
+ /** RunAssetDiscoveryRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a RunAssetDiscoveryRequest. */
+ class RunAssetDiscoveryRequest implements IRunAssetDiscoveryRequest {
+
+ /**
+ * Constructs a new RunAssetDiscoveryRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IRunAssetDiscoveryRequest);
+
+ /** RunAssetDiscoveryRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new RunAssetDiscoveryRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RunAssetDiscoveryRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IRunAssetDiscoveryRequest): google.cloud.securitycenter.v1.RunAssetDiscoveryRequest;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.RunAssetDiscoveryRequest.verify|verify} messages.
+ * @param message RunAssetDiscoveryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IRunAssetDiscoveryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.RunAssetDiscoveryRequest.verify|verify} messages.
+ * @param message RunAssetDiscoveryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IRunAssetDiscoveryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RunAssetDiscoveryRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RunAssetDiscoveryRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.RunAssetDiscoveryRequest;
+
+ /**
+ * Decodes a RunAssetDiscoveryRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RunAssetDiscoveryRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.RunAssetDiscoveryRequest;
+
+ /**
+ * Verifies a RunAssetDiscoveryRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RunAssetDiscoveryRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RunAssetDiscoveryRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.RunAssetDiscoveryRequest;
+
+ /**
+ * Creates a plain object from a RunAssetDiscoveryRequest message. Also converts values to other types if specified.
+ * @param message RunAssetDiscoveryRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.RunAssetDiscoveryRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RunAssetDiscoveryRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RunAssetDiscoveryRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateExternalSystemRequest. */
+ interface IUpdateExternalSystemRequest {
+
+ /** UpdateExternalSystemRequest externalSystem */
+ externalSystem?: (google.cloud.securitycenter.v1.IExternalSystem|null);
+
+ /** UpdateExternalSystemRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateExternalSystemRequest. */
+ class UpdateExternalSystemRequest implements IUpdateExternalSystemRequest {
+
+ /**
+ * Constructs a new UpdateExternalSystemRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateExternalSystemRequest);
+
+ /** UpdateExternalSystemRequest externalSystem. */
+ public externalSystem?: (google.cloud.securitycenter.v1.IExternalSystem|null);
+
+ /** UpdateExternalSystemRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateExternalSystemRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateExternalSystemRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateExternalSystemRequest): google.cloud.securitycenter.v1.UpdateExternalSystemRequest;
+
+ /**
+ * Encodes the specified UpdateExternalSystemRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateExternalSystemRequest.verify|verify} messages.
+ * @param message UpdateExternalSystemRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateExternalSystemRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateExternalSystemRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateExternalSystemRequest.verify|verify} messages.
+ * @param message UpdateExternalSystemRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateExternalSystemRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateExternalSystemRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateExternalSystemRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateExternalSystemRequest;
+
+ /**
+ * Decodes an UpdateExternalSystemRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateExternalSystemRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateExternalSystemRequest;
+
+ /**
+ * Verifies an UpdateExternalSystemRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateExternalSystemRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateExternalSystemRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateExternalSystemRequest;
+
+ /**
+ * Creates a plain object from an UpdateExternalSystemRequest message. Also converts values to other types if specified.
+ * @param message UpdateExternalSystemRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateExternalSystemRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateExternalSystemRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateExternalSystemRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateFindingRequest. */
+ interface IUpdateFindingRequest {
+
+ /** UpdateFindingRequest finding */
+ finding?: (google.cloud.securitycenter.v1.IFinding|null);
+
+ /** UpdateFindingRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateFindingRequest. */
+ class UpdateFindingRequest implements IUpdateFindingRequest {
+
+ /**
+ * Constructs a new UpdateFindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateFindingRequest);
+
+ /** UpdateFindingRequest finding. */
+ public finding?: (google.cloud.securitycenter.v1.IFinding|null);
+
+ /** UpdateFindingRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateFindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateFindingRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateFindingRequest): google.cloud.securitycenter.v1.UpdateFindingRequest;
+
+ /**
+ * Encodes the specified UpdateFindingRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateFindingRequest.verify|verify} messages.
+ * @param message UpdateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateFindingRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateFindingRequest.verify|verify} messages.
+ * @param message UpdateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateFindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateFindingRequest;
+
+ /**
+ * Decodes an UpdateFindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateFindingRequest;
+
+ /**
+ * Verifies an UpdateFindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateFindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateFindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateFindingRequest;
+
+ /**
+ * Creates a plain object from an UpdateFindingRequest message. Also converts values to other types if specified.
+ * @param message UpdateFindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateFindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateFindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateFindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateMuteConfigRequest. */
+ interface IUpdateMuteConfigRequest {
+
+ /** UpdateMuteConfigRequest muteConfig */
+ muteConfig?: (google.cloud.securitycenter.v1.IMuteConfig|null);
+
+ /** UpdateMuteConfigRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateMuteConfigRequest. */
+ class UpdateMuteConfigRequest implements IUpdateMuteConfigRequest {
+
+ /**
+ * Constructs a new UpdateMuteConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateMuteConfigRequest);
+
+ /** UpdateMuteConfigRequest muteConfig. */
+ public muteConfig?: (google.cloud.securitycenter.v1.IMuteConfig|null);
+
+ /** UpdateMuteConfigRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateMuteConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateMuteConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateMuteConfigRequest): google.cloud.securitycenter.v1.UpdateMuteConfigRequest;
+
+ /**
+ * Encodes the specified UpdateMuteConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateMuteConfigRequest.verify|verify} messages.
+ * @param message UpdateMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateMuteConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateMuteConfigRequest.verify|verify} messages.
+ * @param message UpdateMuteConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateMuteConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateMuteConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateMuteConfigRequest;
+
+ /**
+ * Decodes an UpdateMuteConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateMuteConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateMuteConfigRequest;
+
+ /**
+ * Verifies an UpdateMuteConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateMuteConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateMuteConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateMuteConfigRequest;
+
+ /**
+ * Creates a plain object from an UpdateMuteConfigRequest message. Also converts values to other types if specified.
+ * @param message UpdateMuteConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateMuteConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateMuteConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateMuteConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateNotificationConfigRequest. */
+ interface IUpdateNotificationConfigRequest {
+
+ /** UpdateNotificationConfigRequest notificationConfig */
+ notificationConfig?: (google.cloud.securitycenter.v1.INotificationConfig|null);
+
+ /** UpdateNotificationConfigRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateNotificationConfigRequest. */
+ class UpdateNotificationConfigRequest implements IUpdateNotificationConfigRequest {
+
+ /**
+ * Constructs a new UpdateNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateNotificationConfigRequest);
+
+ /** UpdateNotificationConfigRequest notificationConfig. */
+ public notificationConfig?: (google.cloud.securitycenter.v1.INotificationConfig|null);
+
+ /** UpdateNotificationConfigRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateNotificationConfigRequest): google.cloud.securitycenter.v1.UpdateNotificationConfigRequest;
+
+ /**
+ * Encodes the specified UpdateNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateNotificationConfigRequest.verify|verify} messages.
+ * @param message UpdateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateNotificationConfigRequest.verify|verify} messages.
+ * @param message UpdateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateNotificationConfigRequest;
+
+ /**
+ * Decodes an UpdateNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateNotificationConfigRequest;
+
+ /**
+ * Verifies an UpdateNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from an UpdateNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message UpdateNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateOrganizationSettingsRequest. */
+ interface IUpdateOrganizationSettingsRequest {
+
+ /** UpdateOrganizationSettingsRequest organizationSettings */
+ organizationSettings?: (google.cloud.securitycenter.v1.IOrganizationSettings|null);
+
+ /** UpdateOrganizationSettingsRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateOrganizationSettingsRequest. */
+ class UpdateOrganizationSettingsRequest implements IUpdateOrganizationSettingsRequest {
+
+ /**
+ * Constructs a new UpdateOrganizationSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateOrganizationSettingsRequest);
+
+ /** UpdateOrganizationSettingsRequest organizationSettings. */
+ public organizationSettings?: (google.cloud.securitycenter.v1.IOrganizationSettings|null);
+
+ /** UpdateOrganizationSettingsRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateOrganizationSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateOrganizationSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateOrganizationSettingsRequest): google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Encodes the specified UpdateOrganizationSettingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest.verify|verify} messages.
+ * @param message UpdateOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateOrganizationSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest.verify|verify} messages.
+ * @param message UpdateOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateOrganizationSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Decodes an UpdateOrganizationSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Verifies an UpdateOrganizationSettingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateOrganizationSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateOrganizationSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Creates a plain object from an UpdateOrganizationSettingsRequest message. Also converts values to other types if specified.
+ * @param message UpdateOrganizationSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateOrganizationSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateOrganizationSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateOrganizationSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateSourceRequest. */
+ interface IUpdateSourceRequest {
+
+ /** UpdateSourceRequest source */
+ source?: (google.cloud.securitycenter.v1.ISource|null);
+
+ /** UpdateSourceRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateSourceRequest. */
+ class UpdateSourceRequest implements IUpdateSourceRequest {
+
+ /**
+ * Constructs a new UpdateSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateSourceRequest);
+
+ /** UpdateSourceRequest source. */
+ public source?: (google.cloud.securitycenter.v1.ISource|null);
+
+ /** UpdateSourceRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateSourceRequest): google.cloud.securitycenter.v1.UpdateSourceRequest;
+
+ /**
+ * Encodes the specified UpdateSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateSourceRequest.verify|verify} messages.
+ * @param message UpdateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateSourceRequest.verify|verify} messages.
+ * @param message UpdateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateSourceRequest;
+
+ /**
+ * Decodes an UpdateSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateSourceRequest;
+
+ /**
+ * Verifies an UpdateSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateSourceRequest;
+
+ /**
+ * Creates a plain object from an UpdateSourceRequest message. Also converts values to other types if specified.
+ * @param message UpdateSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateSecurityMarksRequest. */
+ interface IUpdateSecurityMarksRequest {
+
+ /** UpdateSecurityMarksRequest securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1.ISecurityMarks|null);
+
+ /** UpdateSecurityMarksRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateSecurityMarksRequest startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an UpdateSecurityMarksRequest. */
+ class UpdateSecurityMarksRequest implements IUpdateSecurityMarksRequest {
+
+ /**
+ * Constructs a new UpdateSecurityMarksRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateSecurityMarksRequest);
+
+ /** UpdateSecurityMarksRequest securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1.ISecurityMarks|null);
+
+ /** UpdateSecurityMarksRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateSecurityMarksRequest startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new UpdateSecurityMarksRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateSecurityMarksRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateSecurityMarksRequest): google.cloud.securitycenter.v1.UpdateSecurityMarksRequest;
+
+ /**
+ * Encodes the specified UpdateSecurityMarksRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateSecurityMarksRequest.verify|verify} messages.
+ * @param message UpdateSecurityMarksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateSecurityMarksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateSecurityMarksRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateSecurityMarksRequest.verify|verify} messages.
+ * @param message UpdateSecurityMarksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateSecurityMarksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateSecurityMarksRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateSecurityMarksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateSecurityMarksRequest;
+
+ /**
+ * Decodes an UpdateSecurityMarksRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateSecurityMarksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateSecurityMarksRequest;
+
+ /**
+ * Verifies an UpdateSecurityMarksRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateSecurityMarksRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateSecurityMarksRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateSecurityMarksRequest;
+
+ /**
+ * Creates a plain object from an UpdateSecurityMarksRequest message. Also converts values to other types if specified.
+ * @param message UpdateSecurityMarksRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateSecurityMarksRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateSecurityMarksRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateSecurityMarksRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateBigQueryExportRequest. */
+ interface ICreateBigQueryExportRequest {
+
+ /** CreateBigQueryExportRequest parent */
+ parent?: (string|null);
+
+ /** CreateBigQueryExportRequest bigQueryExport */
+ bigQueryExport?: (google.cloud.securitycenter.v1.IBigQueryExport|null);
+
+ /** CreateBigQueryExportRequest bigQueryExportId */
+ bigQueryExportId?: (string|null);
+ }
+
+ /** Represents a CreateBigQueryExportRequest. */
+ class CreateBigQueryExportRequest implements ICreateBigQueryExportRequest {
+
+ /**
+ * Constructs a new CreateBigQueryExportRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ICreateBigQueryExportRequest);
+
+ /** CreateBigQueryExportRequest parent. */
+ public parent: string;
+
+ /** CreateBigQueryExportRequest bigQueryExport. */
+ public bigQueryExport?: (google.cloud.securitycenter.v1.IBigQueryExport|null);
+
+ /** CreateBigQueryExportRequest bigQueryExportId. */
+ public bigQueryExportId: string;
+
+ /**
+ * Creates a new CreateBigQueryExportRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateBigQueryExportRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ICreateBigQueryExportRequest): google.cloud.securitycenter.v1.CreateBigQueryExportRequest;
+
+ /**
+ * Encodes the specified CreateBigQueryExportRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.CreateBigQueryExportRequest.verify|verify} messages.
+ * @param message CreateBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ICreateBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateBigQueryExportRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.CreateBigQueryExportRequest.verify|verify} messages.
+ * @param message CreateBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ICreateBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateBigQueryExportRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.CreateBigQueryExportRequest;
+
+ /**
+ * Decodes a CreateBigQueryExportRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.CreateBigQueryExportRequest;
+
+ /**
+ * Verifies a CreateBigQueryExportRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateBigQueryExportRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateBigQueryExportRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.CreateBigQueryExportRequest;
+
+ /**
+ * Creates a plain object from a CreateBigQueryExportRequest message. Also converts values to other types if specified.
+ * @param message CreateBigQueryExportRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.CreateBigQueryExportRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateBigQueryExportRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateBigQueryExportRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateBigQueryExportRequest. */
+ interface IUpdateBigQueryExportRequest {
+
+ /** UpdateBigQueryExportRequest bigQueryExport */
+ bigQueryExport?: (google.cloud.securitycenter.v1.IBigQueryExport|null);
+
+ /** UpdateBigQueryExportRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateBigQueryExportRequest. */
+ class UpdateBigQueryExportRequest implements IUpdateBigQueryExportRequest {
+
+ /**
+ * Constructs a new UpdateBigQueryExportRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IUpdateBigQueryExportRequest);
+
+ /** UpdateBigQueryExportRequest bigQueryExport. */
+ public bigQueryExport?: (google.cloud.securitycenter.v1.IBigQueryExport|null);
+
+ /** UpdateBigQueryExportRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateBigQueryExportRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateBigQueryExportRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IUpdateBigQueryExportRequest): google.cloud.securitycenter.v1.UpdateBigQueryExportRequest;
+
+ /**
+ * Encodes the specified UpdateBigQueryExportRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateBigQueryExportRequest.verify|verify} messages.
+ * @param message UpdateBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IUpdateBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateBigQueryExportRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.UpdateBigQueryExportRequest.verify|verify} messages.
+ * @param message UpdateBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IUpdateBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateBigQueryExportRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.UpdateBigQueryExportRequest;
+
+ /**
+ * Decodes an UpdateBigQueryExportRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.UpdateBigQueryExportRequest;
+
+ /**
+ * Verifies an UpdateBigQueryExportRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateBigQueryExportRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateBigQueryExportRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.UpdateBigQueryExportRequest;
+
+ /**
+ * Creates a plain object from an UpdateBigQueryExportRequest message. Also converts values to other types if specified.
+ * @param message UpdateBigQueryExportRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.UpdateBigQueryExportRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateBigQueryExportRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateBigQueryExportRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListBigQueryExportsRequest. */
+ interface IListBigQueryExportsRequest {
+
+ /** ListBigQueryExportsRequest parent */
+ parent?: (string|null);
+
+ /** ListBigQueryExportsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListBigQueryExportsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListBigQueryExportsRequest. */
+ class ListBigQueryExportsRequest implements IListBigQueryExportsRequest {
+
+ /**
+ * Constructs a new ListBigQueryExportsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListBigQueryExportsRequest);
+
+ /** ListBigQueryExportsRequest parent. */
+ public parent: string;
+
+ /** ListBigQueryExportsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListBigQueryExportsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListBigQueryExportsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListBigQueryExportsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListBigQueryExportsRequest): google.cloud.securitycenter.v1.ListBigQueryExportsRequest;
+
+ /**
+ * Encodes the specified ListBigQueryExportsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.ListBigQueryExportsRequest.verify|verify} messages.
+ * @param message ListBigQueryExportsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListBigQueryExportsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListBigQueryExportsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListBigQueryExportsRequest.verify|verify} messages.
+ * @param message ListBigQueryExportsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListBigQueryExportsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListBigQueryExportsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListBigQueryExportsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListBigQueryExportsRequest;
+
+ /**
+ * Decodes a ListBigQueryExportsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListBigQueryExportsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListBigQueryExportsRequest;
+
+ /**
+ * Verifies a ListBigQueryExportsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListBigQueryExportsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListBigQueryExportsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListBigQueryExportsRequest;
+
+ /**
+ * Creates a plain object from a ListBigQueryExportsRequest message. Also converts values to other types if specified.
+ * @param message ListBigQueryExportsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListBigQueryExportsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListBigQueryExportsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListBigQueryExportsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListBigQueryExportsResponse. */
+ interface IListBigQueryExportsResponse {
+
+ /** ListBigQueryExportsResponse bigQueryExports */
+ bigQueryExports?: (google.cloud.securitycenter.v1.IBigQueryExport[]|null);
+
+ /** ListBigQueryExportsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListBigQueryExportsResponse. */
+ class ListBigQueryExportsResponse implements IListBigQueryExportsResponse {
+
+ /**
+ * Constructs a new ListBigQueryExportsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IListBigQueryExportsResponse);
+
+ /** ListBigQueryExportsResponse bigQueryExports. */
+ public bigQueryExports: google.cloud.securitycenter.v1.IBigQueryExport[];
+
+ /** ListBigQueryExportsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListBigQueryExportsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListBigQueryExportsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IListBigQueryExportsResponse): google.cloud.securitycenter.v1.ListBigQueryExportsResponse;
+
+ /**
+ * Encodes the specified ListBigQueryExportsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1.ListBigQueryExportsResponse.verify|verify} messages.
+ * @param message ListBigQueryExportsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IListBigQueryExportsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListBigQueryExportsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ListBigQueryExportsResponse.verify|verify} messages.
+ * @param message ListBigQueryExportsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IListBigQueryExportsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListBigQueryExportsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListBigQueryExportsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.ListBigQueryExportsResponse;
+
+ /**
+ * Decodes a ListBigQueryExportsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListBigQueryExportsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.ListBigQueryExportsResponse;
+
+ /**
+ * Verifies a ListBigQueryExportsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListBigQueryExportsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListBigQueryExportsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.ListBigQueryExportsResponse;
+
+ /**
+ * Creates a plain object from a ListBigQueryExportsResponse message. Also converts values to other types if specified.
+ * @param message ListBigQueryExportsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.ListBigQueryExportsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListBigQueryExportsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListBigQueryExportsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteBigQueryExportRequest. */
+ interface IDeleteBigQueryExportRequest {
+
+ /** DeleteBigQueryExportRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteBigQueryExportRequest. */
+ class DeleteBigQueryExportRequest implements IDeleteBigQueryExportRequest {
+
+ /**
+ * Constructs a new DeleteBigQueryExportRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.IDeleteBigQueryExportRequest);
+
+ /** DeleteBigQueryExportRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteBigQueryExportRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteBigQueryExportRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.IDeleteBigQueryExportRequest): google.cloud.securitycenter.v1.DeleteBigQueryExportRequest;
+
+ /**
+ * Encodes the specified DeleteBigQueryExportRequest message. Does not implicitly {@link google.cloud.securitycenter.v1.DeleteBigQueryExportRequest.verify|verify} messages.
+ * @param message DeleteBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.IDeleteBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteBigQueryExportRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.DeleteBigQueryExportRequest.verify|verify} messages.
+ * @param message DeleteBigQueryExportRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.IDeleteBigQueryExportRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteBigQueryExportRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.DeleteBigQueryExportRequest;
+
+ /**
+ * Decodes a DeleteBigQueryExportRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteBigQueryExportRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.DeleteBigQueryExportRequest;
+
+ /**
+ * Verifies a DeleteBigQueryExportRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteBigQueryExportRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteBigQueryExportRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.DeleteBigQueryExportRequest;
+
+ /**
+ * Creates a plain object from a DeleteBigQueryExportRequest message. Also converts values to other types if specified.
+ * @param message DeleteBigQueryExportRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.DeleteBigQueryExportRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteBigQueryExportRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteBigQueryExportRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Source. */
+ interface ISource {
+
+ /** Source name */
+ name?: (string|null);
+
+ /** Source displayName */
+ displayName?: (string|null);
+
+ /** Source description */
+ description?: (string|null);
+
+ /** Source canonicalName */
+ canonicalName?: (string|null);
+ }
+
+ /** Represents a Source. */
+ class Source implements ISource {
+
+ /**
+ * Constructs a new Source.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1.ISource);
+
+ /** Source name. */
+ public name: string;
+
+ /** Source displayName. */
+ public displayName: string;
+
+ /** Source description. */
+ public description: string;
+
+ /** Source canonicalName. */
+ public canonicalName: string;
+
+ /**
+ * Creates a new Source instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Source instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1.ISource): google.cloud.securitycenter.v1.Source;
+
+ /**
+ * Encodes the specified Source message. Does not implicitly {@link google.cloud.securitycenter.v1.Source.verify|verify} messages.
+ * @param message Source message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Source message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Source.verify|verify} messages.
+ * @param message Source message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Source message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1.Source;
+
+ /**
+ * Decodes a Source message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1.Source;
+
+ /**
+ * Verifies a Source message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Source message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Source
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1.Source;
+
+ /**
+ * Creates a plain object from a Source message. Also converts values to other types if specified.
+ * @param message Source
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1.Source, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Source to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Source
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace v1beta1. */
+ namespace v1beta1 {
+
+ /** Properties of an Asset. */
+ interface IAsset {
+
+ /** Asset name */
+ name?: (string|null);
+
+ /** Asset securityCenterProperties */
+ securityCenterProperties?: (google.cloud.securitycenter.v1beta1.Asset.ISecurityCenterProperties|null);
+
+ /** Asset resourceProperties */
+ resourceProperties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** Asset securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1beta1.ISecurityMarks|null);
+
+ /** Asset createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an Asset. */
+ class Asset implements IAsset {
+
+ /**
+ * Constructs a new Asset.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IAsset);
+
+ /** Asset name. */
+ public name: string;
+
+ /** Asset securityCenterProperties. */
+ public securityCenterProperties?: (google.cloud.securitycenter.v1beta1.Asset.ISecurityCenterProperties|null);
+
+ /** Asset resourceProperties. */
+ public resourceProperties: { [k: string]: google.protobuf.IValue };
+
+ /** Asset securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1beta1.ISecurityMarks|null);
+
+ /** Asset createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new Asset instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Asset instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IAsset): google.cloud.securitycenter.v1beta1.Asset;
+
+ /**
+ * Encodes the specified Asset message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Asset.verify|verify} messages.
+ * @param message Asset message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IAsset, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Asset message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Asset.verify|verify} messages.
+ * @param message Asset message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IAsset, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.Asset;
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.Asset;
+
+ /**
+ * Verifies an Asset message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Asset message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Asset
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.Asset;
+
+ /**
+ * Creates a plain object from an Asset message. Also converts values to other types if specified.
+ * @param message Asset
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.Asset, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Asset to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Asset
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Asset {
+
+ /** Properties of a SecurityCenterProperties. */
+ interface ISecurityCenterProperties {
+
+ /** SecurityCenterProperties resourceName */
+ resourceName?: (string|null);
+
+ /** SecurityCenterProperties resourceType */
+ resourceType?: (string|null);
+
+ /** SecurityCenterProperties resourceParent */
+ resourceParent?: (string|null);
+
+ /** SecurityCenterProperties resourceProject */
+ resourceProject?: (string|null);
+
+ /** SecurityCenterProperties resourceOwners */
+ resourceOwners?: (string[]|null);
+ }
+
+ /** Represents a SecurityCenterProperties. */
+ class SecurityCenterProperties implements ISecurityCenterProperties {
+
+ /**
+ * Constructs a new SecurityCenterProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.Asset.ISecurityCenterProperties);
+
+ /** SecurityCenterProperties resourceName. */
+ public resourceName: string;
+
+ /** SecurityCenterProperties resourceType. */
+ public resourceType: string;
+
+ /** SecurityCenterProperties resourceParent. */
+ public resourceParent: string;
+
+ /** SecurityCenterProperties resourceProject. */
+ public resourceProject: string;
+
+ /** SecurityCenterProperties resourceOwners. */
+ public resourceOwners: string[];
+
+ /**
+ * Creates a new SecurityCenterProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SecurityCenterProperties instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.Asset.ISecurityCenterProperties): google.cloud.securitycenter.v1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Encodes the specified SecurityCenterProperties message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @param message SecurityCenterProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.Asset.ISecurityCenterProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SecurityCenterProperties message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @param message SecurityCenterProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.Asset.ISecurityCenterProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Verifies a SecurityCenterProperties message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SecurityCenterProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SecurityCenterProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Creates a plain object from a SecurityCenterProperties message. Also converts values to other types if specified.
+ * @param message SecurityCenterProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.Asset.SecurityCenterProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SecurityCenterProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SecurityCenterProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a SecurityMarks. */
+ interface ISecurityMarks {
+
+ /** SecurityMarks name */
+ name?: (string|null);
+
+ /** SecurityMarks marks */
+ marks?: ({ [k: string]: string }|null);
+ }
+
+ /** Represents a SecurityMarks. */
+ class SecurityMarks implements ISecurityMarks {
+
+ /**
+ * Constructs a new SecurityMarks.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.ISecurityMarks);
+
+ /** SecurityMarks name. */
+ public name: string;
+
+ /** SecurityMarks marks. */
+ public marks: { [k: string]: string };
+
+ /**
+ * Creates a new SecurityMarks instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SecurityMarks instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.ISecurityMarks): google.cloud.securitycenter.v1beta1.SecurityMarks;
+
+ /**
+ * Encodes the specified SecurityMarks message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.SecurityMarks.verify|verify} messages.
+ * @param message SecurityMarks message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.ISecurityMarks, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SecurityMarks message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.SecurityMarks.verify|verify} messages.
+ * @param message SecurityMarks message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.ISecurityMarks, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.SecurityMarks;
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.SecurityMarks;
+
+ /**
+ * Verifies a SecurityMarks message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SecurityMarks message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SecurityMarks
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.SecurityMarks;
+
+ /**
+ * Creates a plain object from a SecurityMarks message. Also converts values to other types if specified.
+ * @param message SecurityMarks
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.SecurityMarks, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SecurityMarks to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SecurityMarks
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Finding. */
+ interface IFinding {
+
+ /** Finding name */
+ name?: (string|null);
+
+ /** Finding parent */
+ parent?: (string|null);
+
+ /** Finding resourceName */
+ resourceName?: (string|null);
+
+ /** Finding state */
+ state?: (google.cloud.securitycenter.v1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1beta1.Finding.State|null);
+
+ /** Finding category */
+ category?: (string|null);
+
+ /** Finding externalUri */
+ externalUri?: (string|null);
+
+ /** Finding sourceProperties */
+ sourceProperties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** Finding securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1beta1.ISecurityMarks|null);
+
+ /** Finding eventTime */
+ eventTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a Finding. */
+ class Finding implements IFinding {
+
+ /**
+ * Constructs a new Finding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IFinding);
+
+ /** Finding name. */
+ public name: string;
+
+ /** Finding parent. */
+ public parent: string;
+
+ /** Finding resourceName. */
+ public resourceName: string;
+
+ /** Finding state. */
+ public state: (google.cloud.securitycenter.v1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1beta1.Finding.State);
+
+ /** Finding category. */
+ public category: string;
+
+ /** Finding externalUri. */
+ public externalUri: string;
+
+ /** Finding sourceProperties. */
+ public sourceProperties: { [k: string]: google.protobuf.IValue };
+
+ /** Finding securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1beta1.ISecurityMarks|null);
+
+ /** Finding eventTime. */
+ public eventTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new Finding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Finding instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IFinding): google.cloud.securitycenter.v1beta1.Finding;
+
+ /**
+ * Encodes the specified Finding message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Finding.verify|verify} messages.
+ * @param message Finding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IFinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Finding message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Finding.verify|verify} messages.
+ * @param message Finding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IFinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Finding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Finding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.Finding;
+
+ /**
+ * Decodes a Finding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Finding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.Finding;
+
+ /**
+ * Verifies a Finding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Finding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Finding
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.Finding;
+
+ /**
+ * Creates a plain object from a Finding message. Also converts values to other types if specified.
+ * @param message Finding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.Finding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Finding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Finding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Finding {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ ACTIVE = 1,
+ INACTIVE = 2
+ }
+ }
+
+ /** Properties of an OrganizationSettings. */
+ interface IOrganizationSettings {
+
+ /** OrganizationSettings name */
+ name?: (string|null);
+
+ /** OrganizationSettings enableAssetDiscovery */
+ enableAssetDiscovery?: (boolean|null);
+
+ /** OrganizationSettings assetDiscoveryConfig */
+ assetDiscoveryConfig?: (google.cloud.securitycenter.v1beta1.OrganizationSettings.IAssetDiscoveryConfig|null);
+ }
+
+ /** Represents an OrganizationSettings. */
+ class OrganizationSettings implements IOrganizationSettings {
+
+ /**
+ * Constructs a new OrganizationSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IOrganizationSettings);
+
+ /** OrganizationSettings name. */
+ public name: string;
+
+ /** OrganizationSettings enableAssetDiscovery. */
+ public enableAssetDiscovery: boolean;
+
+ /** OrganizationSettings assetDiscoveryConfig. */
+ public assetDiscoveryConfig?: (google.cloud.securitycenter.v1beta1.OrganizationSettings.IAssetDiscoveryConfig|null);
+
+ /**
+ * Creates a new OrganizationSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OrganizationSettings instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IOrganizationSettings): google.cloud.securitycenter.v1beta1.OrganizationSettings;
+
+ /**
+ * Encodes the specified OrganizationSettings message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.OrganizationSettings.verify|verify} messages.
+ * @param message OrganizationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IOrganizationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OrganizationSettings message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.OrganizationSettings.verify|verify} messages.
+ * @param message OrganizationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IOrganizationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OrganizationSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OrganizationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.OrganizationSettings;
+
+ /**
+ * Decodes an OrganizationSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OrganizationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.OrganizationSettings;
+
+ /**
+ * Verifies an OrganizationSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OrganizationSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OrganizationSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.OrganizationSettings;
+
+ /**
+ * Creates a plain object from an OrganizationSettings message. Also converts values to other types if specified.
+ * @param message OrganizationSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.OrganizationSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OrganizationSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OrganizationSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OrganizationSettings {
+
+ /** Properties of an AssetDiscoveryConfig. */
+ interface IAssetDiscoveryConfig {
+
+ /** AssetDiscoveryConfig projectIds */
+ projectIds?: (string[]|null);
+
+ /** AssetDiscoveryConfig inclusionMode */
+ inclusionMode?: (google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|keyof typeof google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|null);
+ }
+
+ /** Represents an AssetDiscoveryConfig. */
+ class AssetDiscoveryConfig implements IAssetDiscoveryConfig {
+
+ /**
+ * Constructs a new AssetDiscoveryConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.OrganizationSettings.IAssetDiscoveryConfig);
+
+ /** AssetDiscoveryConfig projectIds. */
+ public projectIds: string[];
+
+ /** AssetDiscoveryConfig inclusionMode. */
+ public inclusionMode: (google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|keyof typeof google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode);
+
+ /**
+ * Creates a new AssetDiscoveryConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AssetDiscoveryConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.OrganizationSettings.IAssetDiscoveryConfig): google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Encodes the specified AssetDiscoveryConfig message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig.verify|verify} messages.
+ * @param message AssetDiscoveryConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.OrganizationSettings.IAssetDiscoveryConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AssetDiscoveryConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig.verify|verify} messages.
+ * @param message AssetDiscoveryConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.OrganizationSettings.IAssetDiscoveryConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AssetDiscoveryConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AssetDiscoveryConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Decodes an AssetDiscoveryConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AssetDiscoveryConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Verifies an AssetDiscoveryConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AssetDiscoveryConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AssetDiscoveryConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Creates a plain object from an AssetDiscoveryConfig message. Also converts values to other types if specified.
+ * @param message AssetDiscoveryConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.OrganizationSettings.AssetDiscoveryConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AssetDiscoveryConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AssetDiscoveryConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AssetDiscoveryConfig {
+
+ /** InclusionMode enum. */
+ enum InclusionMode {
+ INCLUSION_MODE_UNSPECIFIED = 0,
+ INCLUDE_ONLY = 1,
+ EXCLUDE = 2
+ }
+ }
+ }
+
+ /** Properties of a RunAssetDiscoveryResponse. */
+ interface IRunAssetDiscoveryResponse {
+
+ /** RunAssetDiscoveryResponse state */
+ state?: (google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse.State|keyof typeof google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse.State|null);
+
+ /** RunAssetDiscoveryResponse duration */
+ duration?: (google.protobuf.IDuration|null);
+ }
+
+ /** Represents a RunAssetDiscoveryResponse. */
+ class RunAssetDiscoveryResponse implements IRunAssetDiscoveryResponse {
+
+ /**
+ * Constructs a new RunAssetDiscoveryResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryResponse);
+
+ /** RunAssetDiscoveryResponse state. */
+ public state: (google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse.State|keyof typeof google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse.State);
+
+ /** RunAssetDiscoveryResponse duration. */
+ public duration?: (google.protobuf.IDuration|null);
+
+ /**
+ * Creates a new RunAssetDiscoveryResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RunAssetDiscoveryResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryResponse): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryResponse message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse.verify|verify} messages.
+ * @param message RunAssetDiscoveryResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse.verify|verify} messages.
+ * @param message RunAssetDiscoveryResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RunAssetDiscoveryResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RunAssetDiscoveryResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Decodes a RunAssetDiscoveryResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RunAssetDiscoveryResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Verifies a RunAssetDiscoveryResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RunAssetDiscoveryResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RunAssetDiscoveryResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Creates a plain object from a RunAssetDiscoveryResponse message. Also converts values to other types if specified.
+ * @param message RunAssetDiscoveryResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.RunAssetDiscoveryResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RunAssetDiscoveryResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RunAssetDiscoveryResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace RunAssetDiscoveryResponse {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ COMPLETED = 1,
+ SUPERSEDED = 2,
+ TERMINATED = 3
+ }
+ }
+
+ /** Represents a SecurityCenter */
+ class SecurityCenter extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new SecurityCenter service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new SecurityCenter service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): SecurityCenter;
+
+ /**
+ * Calls CreateSource.
+ * @param request CreateSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public createSource(request: google.cloud.securitycenter.v1beta1.ICreateSourceRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.CreateSourceCallback): void;
+
+ /**
+ * Calls CreateSource.
+ * @param request CreateSourceRequest message or plain object
+ * @returns Promise
+ */
+ public createSource(request: google.cloud.securitycenter.v1beta1.ICreateSourceRequest): Promise;
+
+ /**
+ * Calls CreateFinding.
+ * @param request CreateFindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public createFinding(request: google.cloud.securitycenter.v1beta1.ICreateFindingRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.CreateFindingCallback): void;
+
+ /**
+ * Calls CreateFinding.
+ * @param request CreateFindingRequest message or plain object
+ * @returns Promise
+ */
+ public createFinding(request: google.cloud.securitycenter.v1beta1.ICreateFindingRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetOrganizationSettings.
+ * @param request GetOrganizationSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and OrganizationSettings
+ */
+ public getOrganizationSettings(request: google.cloud.securitycenter.v1beta1.IGetOrganizationSettingsRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.GetOrganizationSettingsCallback): void;
+
+ /**
+ * Calls GetOrganizationSettings.
+ * @param request GetOrganizationSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public getOrganizationSettings(request: google.cloud.securitycenter.v1beta1.IGetOrganizationSettingsRequest): Promise;
+
+ /**
+ * Calls GetSource.
+ * @param request GetSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public getSource(request: google.cloud.securitycenter.v1beta1.IGetSourceRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.GetSourceCallback): void;
+
+ /**
+ * Calls GetSource.
+ * @param request GetSourceRequest message or plain object
+ * @returns Promise
+ */
+ public getSource(request: google.cloud.securitycenter.v1beta1.IGetSourceRequest): Promise;
+
+ /**
+ * Calls GroupAssets.
+ * @param request GroupAssetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GroupAssetsResponse
+ */
+ public groupAssets(request: google.cloud.securitycenter.v1beta1.IGroupAssetsRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.GroupAssetsCallback): void;
+
+ /**
+ * Calls GroupAssets.
+ * @param request GroupAssetsRequest message or plain object
+ * @returns Promise
+ */
+ public groupAssets(request: google.cloud.securitycenter.v1beta1.IGroupAssetsRequest): Promise;
+
+ /**
+ * Calls GroupFindings.
+ * @param request GroupFindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GroupFindingsResponse
+ */
+ public groupFindings(request: google.cloud.securitycenter.v1beta1.IGroupFindingsRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.GroupFindingsCallback): void;
+
+ /**
+ * Calls GroupFindings.
+ * @param request GroupFindingsRequest message or plain object
+ * @returns Promise
+ */
+ public groupFindings(request: google.cloud.securitycenter.v1beta1.IGroupFindingsRequest): Promise;
+
+ /**
+ * Calls ListAssets.
+ * @param request ListAssetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListAssetsResponse
+ */
+ public listAssets(request: google.cloud.securitycenter.v1beta1.IListAssetsRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.ListAssetsCallback): void;
+
+ /**
+ * Calls ListAssets.
+ * @param request ListAssetsRequest message or plain object
+ * @returns Promise
+ */
+ public listAssets(request: google.cloud.securitycenter.v1beta1.IListAssetsRequest): Promise;
+
+ /**
+ * Calls ListFindings.
+ * @param request ListFindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListFindingsResponse
+ */
+ public listFindings(request: google.cloud.securitycenter.v1beta1.IListFindingsRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.ListFindingsCallback): void;
+
+ /**
+ * Calls ListFindings.
+ * @param request ListFindingsRequest message or plain object
+ * @returns Promise
+ */
+ public listFindings(request: google.cloud.securitycenter.v1beta1.IListFindingsRequest): Promise;
+
+ /**
+ * Calls ListSources.
+ * @param request ListSourcesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListSourcesResponse
+ */
+ public listSources(request: google.cloud.securitycenter.v1beta1.IListSourcesRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.ListSourcesCallback): void;
+
+ /**
+ * Calls ListSources.
+ * @param request ListSourcesRequest message or plain object
+ * @returns Promise
+ */
+ public listSources(request: google.cloud.securitycenter.v1beta1.IListSourcesRequest): Promise;
+
+ /**
+ * Calls RunAssetDiscovery.
+ * @param request RunAssetDiscoveryRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public runAssetDiscovery(request: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.RunAssetDiscoveryCallback): void;
+
+ /**
+ * Calls RunAssetDiscovery.
+ * @param request RunAssetDiscoveryRequest message or plain object
+ * @returns Promise
+ */
+ public runAssetDiscovery(request: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryRequest): Promise;
+
+ /**
+ * Calls SetFindingState.
+ * @param request SetFindingStateRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public setFindingState(request: google.cloud.securitycenter.v1beta1.ISetFindingStateRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.SetFindingStateCallback): void;
+
+ /**
+ * Calls SetFindingState.
+ * @param request SetFindingStateRequest message or plain object
+ * @returns Promise
+ */
+ public setFindingState(request: google.cloud.securitycenter.v1beta1.ISetFindingStateRequest): Promise;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+
+ /**
+ * Calls UpdateFinding.
+ * @param request UpdateFindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public updateFinding(request: google.cloud.securitycenter.v1beta1.IUpdateFindingRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateFindingCallback): void;
+
+ /**
+ * Calls UpdateFinding.
+ * @param request UpdateFindingRequest message or plain object
+ * @returns Promise
+ */
+ public updateFinding(request: google.cloud.securitycenter.v1beta1.IUpdateFindingRequest): Promise;
+
+ /**
+ * Calls UpdateOrganizationSettings.
+ * @param request UpdateOrganizationSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and OrganizationSettings
+ */
+ public updateOrganizationSettings(request: google.cloud.securitycenter.v1beta1.IUpdateOrganizationSettingsRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateOrganizationSettingsCallback): void;
+
+ /**
+ * Calls UpdateOrganizationSettings.
+ * @param request UpdateOrganizationSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public updateOrganizationSettings(request: google.cloud.securitycenter.v1beta1.IUpdateOrganizationSettingsRequest): Promise;
+
+ /**
+ * Calls UpdateSource.
+ * @param request UpdateSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public updateSource(request: google.cloud.securitycenter.v1beta1.IUpdateSourceRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateSourceCallback): void;
+
+ /**
+ * Calls UpdateSource.
+ * @param request UpdateSourceRequest message or plain object
+ * @returns Promise
+ */
+ public updateSource(request: google.cloud.securitycenter.v1beta1.IUpdateSourceRequest): Promise;
+
+ /**
+ * Calls UpdateSecurityMarks.
+ * @param request UpdateSecurityMarksRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and SecurityMarks
+ */
+ public updateSecurityMarks(request: google.cloud.securitycenter.v1beta1.IUpdateSecurityMarksRequest, callback: google.cloud.securitycenter.v1beta1.SecurityCenter.UpdateSecurityMarksCallback): void;
+
+ /**
+ * Calls UpdateSecurityMarks.
+ * @param request UpdateSecurityMarksRequest message or plain object
+ * @returns Promise
+ */
+ public updateSecurityMarks(request: google.cloud.securitycenter.v1beta1.IUpdateSecurityMarksRequest): Promise;
+ }
+
+ namespace SecurityCenter {
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|createSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type CreateSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|createFinding}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type CreateFindingCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|getOrganizationSettings}.
+ * @param error Error, if any
+ * @param [response] OrganizationSettings
+ */
+ type GetOrganizationSettingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.OrganizationSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|getSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type GetSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|groupAssets}.
+ * @param error Error, if any
+ * @param [response] GroupAssetsResponse
+ */
+ type GroupAssetsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.GroupAssetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|groupFindings}.
+ * @param error Error, if any
+ * @param [response] GroupFindingsResponse
+ */
+ type GroupFindingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.GroupFindingsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|listAssets}.
+ * @param error Error, if any
+ * @param [response] ListAssetsResponse
+ */
+ type ListAssetsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.ListAssetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|listFindings}.
+ * @param error Error, if any
+ * @param [response] ListFindingsResponse
+ */
+ type ListFindingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.ListFindingsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|listSources}.
+ * @param error Error, if any
+ * @param [response] ListSourcesResponse
+ */
+ type ListSourcesCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.ListSourcesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|runAssetDiscovery}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type RunAssetDiscoveryCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|setFindingState}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type SetFindingStateCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|updateFinding}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type UpdateFindingCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|updateOrganizationSettings}.
+ * @param error Error, if any
+ * @param [response] OrganizationSettings
+ */
+ type UpdateOrganizationSettingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.OrganizationSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|updateSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type UpdateSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1beta1.SecurityCenter|updateSecurityMarks}.
+ * @param error Error, if any
+ * @param [response] SecurityMarks
+ */
+ type UpdateSecurityMarksCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1beta1.SecurityMarks) => void;
+ }
+
+ /** Properties of a CreateFindingRequest. */
+ interface ICreateFindingRequest {
+
+ /** CreateFindingRequest parent */
+ parent?: (string|null);
+
+ /** CreateFindingRequest findingId */
+ findingId?: (string|null);
+
+ /** CreateFindingRequest finding */
+ finding?: (google.cloud.securitycenter.v1beta1.IFinding|null);
+ }
+
+ /** Represents a CreateFindingRequest. */
+ class CreateFindingRequest implements ICreateFindingRequest {
+
+ /**
+ * Constructs a new CreateFindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.ICreateFindingRequest);
+
+ /** CreateFindingRequest parent. */
+ public parent: string;
+
+ /** CreateFindingRequest findingId. */
+ public findingId: string;
+
+ /** CreateFindingRequest finding. */
+ public finding?: (google.cloud.securitycenter.v1beta1.IFinding|null);
+
+ /**
+ * Creates a new CreateFindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateFindingRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.ICreateFindingRequest): google.cloud.securitycenter.v1beta1.CreateFindingRequest;
+
+ /**
+ * Encodes the specified CreateFindingRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.CreateFindingRequest.verify|verify} messages.
+ * @param message CreateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.ICreateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateFindingRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.CreateFindingRequest.verify|verify} messages.
+ * @param message CreateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.ICreateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateFindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.CreateFindingRequest;
+
+ /**
+ * Decodes a CreateFindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.CreateFindingRequest;
+
+ /**
+ * Verifies a CreateFindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateFindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateFindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.CreateFindingRequest;
+
+ /**
+ * Creates a plain object from a CreateFindingRequest message. Also converts values to other types if specified.
+ * @param message CreateFindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.CreateFindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateFindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateFindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateSourceRequest. */
+ interface ICreateSourceRequest {
+
+ /** CreateSourceRequest parent */
+ parent?: (string|null);
+
+ /** CreateSourceRequest source */
+ source?: (google.cloud.securitycenter.v1beta1.ISource|null);
+ }
+
+ /** Represents a CreateSourceRequest. */
+ class CreateSourceRequest implements ICreateSourceRequest {
+
+ /**
+ * Constructs a new CreateSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.ICreateSourceRequest);
+
+ /** CreateSourceRequest parent. */
+ public parent: string;
+
+ /** CreateSourceRequest source. */
+ public source?: (google.cloud.securitycenter.v1beta1.ISource|null);
+
+ /**
+ * Creates a new CreateSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.ICreateSourceRequest): google.cloud.securitycenter.v1beta1.CreateSourceRequest;
+
+ /**
+ * Encodes the specified CreateSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.CreateSourceRequest.verify|verify} messages.
+ * @param message CreateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.ICreateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.CreateSourceRequest.verify|verify} messages.
+ * @param message CreateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.ICreateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.CreateSourceRequest;
+
+ /**
+ * Decodes a CreateSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.CreateSourceRequest;
+
+ /**
+ * Verifies a CreateSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.CreateSourceRequest;
+
+ /**
+ * Creates a plain object from a CreateSourceRequest message. Also converts values to other types if specified.
+ * @param message CreateSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.CreateSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOrganizationSettingsRequest. */
+ interface IGetOrganizationSettingsRequest {
+
+ /** GetOrganizationSettingsRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOrganizationSettingsRequest. */
+ class GetOrganizationSettingsRequest implements IGetOrganizationSettingsRequest {
+
+ /**
+ * Constructs a new GetOrganizationSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IGetOrganizationSettingsRequest);
+
+ /** GetOrganizationSettingsRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOrganizationSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOrganizationSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IGetOrganizationSettingsRequest): google.cloud.securitycenter.v1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Encodes the specified GetOrganizationSettingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GetOrganizationSettingsRequest.verify|verify} messages.
+ * @param message GetOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IGetOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOrganizationSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GetOrganizationSettingsRequest.verify|verify} messages.
+ * @param message GetOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IGetOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOrganizationSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Decodes a GetOrganizationSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Verifies a GetOrganizationSettingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOrganizationSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOrganizationSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Creates a plain object from a GetOrganizationSettingsRequest message. Also converts values to other types if specified.
+ * @param message GetOrganizationSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.GetOrganizationSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOrganizationSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOrganizationSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetSourceRequest. */
+ interface IGetSourceRequest {
+
+ /** GetSourceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetSourceRequest. */
+ class GetSourceRequest implements IGetSourceRequest {
+
+ /**
+ * Constructs a new GetSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IGetSourceRequest);
+
+ /** GetSourceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IGetSourceRequest): google.cloud.securitycenter.v1beta1.GetSourceRequest;
+
+ /**
+ * Encodes the specified GetSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GetSourceRequest.verify|verify} messages.
+ * @param message GetSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IGetSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GetSourceRequest.verify|verify} messages.
+ * @param message GetSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IGetSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.GetSourceRequest;
+
+ /**
+ * Decodes a GetSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.GetSourceRequest;
+
+ /**
+ * Verifies a GetSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.GetSourceRequest;
+
+ /**
+ * Creates a plain object from a GetSourceRequest message. Also converts values to other types if specified.
+ * @param message GetSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.GetSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupAssetsRequest. */
+ interface IGroupAssetsRequest {
+
+ /** GroupAssetsRequest parent */
+ parent?: (string|null);
+
+ /** GroupAssetsRequest filter */
+ filter?: (string|null);
+
+ /** GroupAssetsRequest groupBy */
+ groupBy?: (string|null);
+
+ /** GroupAssetsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupAssetsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** GroupAssetsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a GroupAssetsRequest. */
+ class GroupAssetsRequest implements IGroupAssetsRequest {
+
+ /**
+ * Constructs a new GroupAssetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IGroupAssetsRequest);
+
+ /** GroupAssetsRequest parent. */
+ public parent: string;
+
+ /** GroupAssetsRequest filter. */
+ public filter: string;
+
+ /** GroupAssetsRequest groupBy. */
+ public groupBy: string;
+
+ /** GroupAssetsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupAssetsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsRequest pageToken. */
+ public pageToken: string;
+
+ /** GroupAssetsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new GroupAssetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupAssetsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IGroupAssetsRequest): google.cloud.securitycenter.v1beta1.GroupAssetsRequest;
+
+ /**
+ * Encodes the specified GroupAssetsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupAssetsRequest.verify|verify} messages.
+ * @param message GroupAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IGroupAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupAssetsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupAssetsRequest.verify|verify} messages.
+ * @param message GroupAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IGroupAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupAssetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.GroupAssetsRequest;
+
+ /**
+ * Decodes a GroupAssetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.GroupAssetsRequest;
+
+ /**
+ * Verifies a GroupAssetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupAssetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupAssetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.GroupAssetsRequest;
+
+ /**
+ * Creates a plain object from a GroupAssetsRequest message. Also converts values to other types if specified.
+ * @param message GroupAssetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.GroupAssetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupAssetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupAssetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupAssetsResponse. */
+ interface IGroupAssetsResponse {
+
+ /** GroupAssetsResponse groupByResults */
+ groupByResults?: (google.cloud.securitycenter.v1beta1.IGroupResult[]|null);
+
+ /** GroupAssetsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a GroupAssetsResponse. */
+ class GroupAssetsResponse implements IGroupAssetsResponse {
+
+ /**
+ * Constructs a new GroupAssetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IGroupAssetsResponse);
+
+ /** GroupAssetsResponse groupByResults. */
+ public groupByResults: google.cloud.securitycenter.v1beta1.IGroupResult[];
+
+ /** GroupAssetsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new GroupAssetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupAssetsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IGroupAssetsResponse): google.cloud.securitycenter.v1beta1.GroupAssetsResponse;
+
+ /**
+ * Encodes the specified GroupAssetsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupAssetsResponse.verify|verify} messages.
+ * @param message GroupAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IGroupAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupAssetsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupAssetsResponse.verify|verify} messages.
+ * @param message GroupAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IGroupAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupAssetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.GroupAssetsResponse;
+
+ /**
+ * Decodes a GroupAssetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.GroupAssetsResponse;
+
+ /**
+ * Verifies a GroupAssetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupAssetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupAssetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.GroupAssetsResponse;
+
+ /**
+ * Creates a plain object from a GroupAssetsResponse message. Also converts values to other types if specified.
+ * @param message GroupAssetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.GroupAssetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupAssetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupAssetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupFindingsRequest. */
+ interface IGroupFindingsRequest {
+
+ /** GroupFindingsRequest parent */
+ parent?: (string|null);
+
+ /** GroupFindingsRequest filter */
+ filter?: (string|null);
+
+ /** GroupFindingsRequest groupBy */
+ groupBy?: (string|null);
+
+ /** GroupFindingsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** GroupFindingsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a GroupFindingsRequest. */
+ class GroupFindingsRequest implements IGroupFindingsRequest {
+
+ /**
+ * Constructs a new GroupFindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IGroupFindingsRequest);
+
+ /** GroupFindingsRequest parent. */
+ public parent: string;
+
+ /** GroupFindingsRequest filter. */
+ public filter: string;
+
+ /** GroupFindingsRequest groupBy. */
+ public groupBy: string;
+
+ /** GroupFindingsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsRequest pageToken. */
+ public pageToken: string;
+
+ /** GroupFindingsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new GroupFindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupFindingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IGroupFindingsRequest): google.cloud.securitycenter.v1beta1.GroupFindingsRequest;
+
+ /**
+ * Encodes the specified GroupFindingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupFindingsRequest.verify|verify} messages.
+ * @param message GroupFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IGroupFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupFindingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupFindingsRequest.verify|verify} messages.
+ * @param message GroupFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IGroupFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupFindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.GroupFindingsRequest;
+
+ /**
+ * Decodes a GroupFindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.GroupFindingsRequest;
+
+ /**
+ * Verifies a GroupFindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupFindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupFindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.GroupFindingsRequest;
+
+ /**
+ * Creates a plain object from a GroupFindingsRequest message. Also converts values to other types if specified.
+ * @param message GroupFindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.GroupFindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupFindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupFindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupFindingsResponse. */
+ interface IGroupFindingsResponse {
+
+ /** GroupFindingsResponse groupByResults */
+ groupByResults?: (google.cloud.securitycenter.v1beta1.IGroupResult[]|null);
+
+ /** GroupFindingsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a GroupFindingsResponse. */
+ class GroupFindingsResponse implements IGroupFindingsResponse {
+
+ /**
+ * Constructs a new GroupFindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IGroupFindingsResponse);
+
+ /** GroupFindingsResponse groupByResults. */
+ public groupByResults: google.cloud.securitycenter.v1beta1.IGroupResult[];
+
+ /** GroupFindingsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new GroupFindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupFindingsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IGroupFindingsResponse): google.cloud.securitycenter.v1beta1.GroupFindingsResponse;
+
+ /**
+ * Encodes the specified GroupFindingsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupFindingsResponse.verify|verify} messages.
+ * @param message GroupFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IGroupFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupFindingsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupFindingsResponse.verify|verify} messages.
+ * @param message GroupFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IGroupFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupFindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.GroupFindingsResponse;
+
+ /**
+ * Decodes a GroupFindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.GroupFindingsResponse;
+
+ /**
+ * Verifies a GroupFindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupFindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupFindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.GroupFindingsResponse;
+
+ /**
+ * Creates a plain object from a GroupFindingsResponse message. Also converts values to other types if specified.
+ * @param message GroupFindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.GroupFindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupFindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupFindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupResult. */
+ interface IGroupResult {
+
+ /** GroupResult properties */
+ properties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** GroupResult count */
+ count?: (number|Long|string|null);
+ }
+
+ /** Represents a GroupResult. */
+ class GroupResult implements IGroupResult {
+
+ /**
+ * Constructs a new GroupResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IGroupResult);
+
+ /** GroupResult properties. */
+ public properties: { [k: string]: google.protobuf.IValue };
+
+ /** GroupResult count. */
+ public count: (number|Long|string);
+
+ /**
+ * Creates a new GroupResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IGroupResult): google.cloud.securitycenter.v1beta1.GroupResult;
+
+ /**
+ * Encodes the specified GroupResult message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupResult.verify|verify} messages.
+ * @param message GroupResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IGroupResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.GroupResult.verify|verify} messages.
+ * @param message GroupResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IGroupResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.GroupResult;
+
+ /**
+ * Decodes a GroupResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.GroupResult;
+
+ /**
+ * Verifies a GroupResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.GroupResult;
+
+ /**
+ * Creates a plain object from a GroupResult message. Also converts values to other types if specified.
+ * @param message GroupResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.GroupResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListSourcesRequest. */
+ interface IListSourcesRequest {
+
+ /** ListSourcesRequest parent */
+ parent?: (string|null);
+
+ /** ListSourcesRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListSourcesRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListSourcesRequest. */
+ class ListSourcesRequest implements IListSourcesRequest {
+
+ /**
+ * Constructs a new ListSourcesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IListSourcesRequest);
+
+ /** ListSourcesRequest parent. */
+ public parent: string;
+
+ /** ListSourcesRequest pageToken. */
+ public pageToken: string;
+
+ /** ListSourcesRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListSourcesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListSourcesRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IListSourcesRequest): google.cloud.securitycenter.v1beta1.ListSourcesRequest;
+
+ /**
+ * Encodes the specified ListSourcesRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListSourcesRequest.verify|verify} messages.
+ * @param message ListSourcesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IListSourcesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListSourcesRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListSourcesRequest.verify|verify} messages.
+ * @param message ListSourcesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IListSourcesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListSourcesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListSourcesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.ListSourcesRequest;
+
+ /**
+ * Decodes a ListSourcesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListSourcesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.ListSourcesRequest;
+
+ /**
+ * Verifies a ListSourcesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListSourcesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListSourcesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.ListSourcesRequest;
+
+ /**
+ * Creates a plain object from a ListSourcesRequest message. Also converts values to other types if specified.
+ * @param message ListSourcesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.ListSourcesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListSourcesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListSourcesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListSourcesResponse. */
+ interface IListSourcesResponse {
+
+ /** ListSourcesResponse sources */
+ sources?: (google.cloud.securitycenter.v1beta1.ISource[]|null);
+
+ /** ListSourcesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListSourcesResponse. */
+ class ListSourcesResponse implements IListSourcesResponse {
+
+ /**
+ * Constructs a new ListSourcesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IListSourcesResponse);
+
+ /** ListSourcesResponse sources. */
+ public sources: google.cloud.securitycenter.v1beta1.ISource[];
+
+ /** ListSourcesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListSourcesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListSourcesResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IListSourcesResponse): google.cloud.securitycenter.v1beta1.ListSourcesResponse;
+
+ /**
+ * Encodes the specified ListSourcesResponse message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListSourcesResponse.verify|verify} messages.
+ * @param message ListSourcesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IListSourcesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListSourcesResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListSourcesResponse.verify|verify} messages.
+ * @param message ListSourcesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IListSourcesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListSourcesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListSourcesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.ListSourcesResponse;
+
+ /**
+ * Decodes a ListSourcesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListSourcesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.ListSourcesResponse;
+
+ /**
+ * Verifies a ListSourcesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListSourcesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListSourcesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.ListSourcesResponse;
+
+ /**
+ * Creates a plain object from a ListSourcesResponse message. Also converts values to other types if specified.
+ * @param message ListSourcesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.ListSourcesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListSourcesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListSourcesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAssetsRequest. */
+ interface IListAssetsRequest {
+
+ /** ListAssetsRequest parent */
+ parent?: (string|null);
+
+ /** ListAssetsRequest filter */
+ filter?: (string|null);
+
+ /** ListAssetsRequest orderBy */
+ orderBy?: (string|null);
+
+ /** ListAssetsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListAssetsRequest fieldMask */
+ fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListAssetsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListAssetsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListAssetsRequest. */
+ class ListAssetsRequest implements IListAssetsRequest {
+
+ /**
+ * Constructs a new ListAssetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IListAssetsRequest);
+
+ /** ListAssetsRequest parent. */
+ public parent: string;
+
+ /** ListAssetsRequest filter. */
+ public filter: string;
+
+ /** ListAssetsRequest orderBy. */
+ public orderBy: string;
+
+ /** ListAssetsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListAssetsRequest fieldMask. */
+ public fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListAssetsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListAssetsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListAssetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IListAssetsRequest): google.cloud.securitycenter.v1beta1.ListAssetsRequest;
+
+ /**
+ * Encodes the specified ListAssetsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListAssetsRequest.verify|verify} messages.
+ * @param message ListAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IListAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListAssetsRequest.verify|verify} messages.
+ * @param message ListAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IListAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.ListAssetsRequest;
+
+ /**
+ * Decodes a ListAssetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.ListAssetsRequest;
+
+ /**
+ * Verifies a ListAssetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.ListAssetsRequest;
+
+ /**
+ * Creates a plain object from a ListAssetsRequest message. Also converts values to other types if specified.
+ * @param message ListAssetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.ListAssetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAssetsResponse. */
+ interface IListAssetsResponse {
+
+ /** ListAssetsResponse listAssetsResults */
+ listAssetsResults?: (google.cloud.securitycenter.v1beta1.ListAssetsResponse.IListAssetsResult[]|null);
+
+ /** ListAssetsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListAssetsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a ListAssetsResponse. */
+ class ListAssetsResponse implements IListAssetsResponse {
+
+ /**
+ * Constructs a new ListAssetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IListAssetsResponse);
+
+ /** ListAssetsResponse listAssetsResults. */
+ public listAssetsResults: google.cloud.securitycenter.v1beta1.ListAssetsResponse.IListAssetsResult[];
+
+ /** ListAssetsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListAssetsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new ListAssetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IListAssetsResponse): google.cloud.securitycenter.v1beta1.ListAssetsResponse;
+
+ /**
+ * Encodes the specified ListAssetsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListAssetsResponse.verify|verify} messages.
+ * @param message ListAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IListAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListAssetsResponse.verify|verify} messages.
+ * @param message ListAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IListAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.ListAssetsResponse;
+
+ /**
+ * Decodes a ListAssetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.ListAssetsResponse;
+
+ /**
+ * Verifies a ListAssetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.ListAssetsResponse;
+
+ /**
+ * Creates a plain object from a ListAssetsResponse message. Also converts values to other types if specified.
+ * @param message ListAssetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.ListAssetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListAssetsResponse {
+
+ /** Properties of a ListAssetsResult. */
+ interface IListAssetsResult {
+
+ /** ListAssetsResult asset */
+ asset?: (google.cloud.securitycenter.v1beta1.IAsset|null);
+
+ /** ListAssetsResult state */
+ state?: (google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult.State|keyof typeof google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult.State|null);
+ }
+
+ /** Represents a ListAssetsResult. */
+ class ListAssetsResult implements IListAssetsResult {
+
+ /**
+ * Constructs a new ListAssetsResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.ListAssetsResponse.IListAssetsResult);
+
+ /** ListAssetsResult asset. */
+ public asset?: (google.cloud.securitycenter.v1beta1.IAsset|null);
+
+ /** ListAssetsResult state. */
+ public state: (google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult.State|keyof typeof google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult.State);
+
+ /**
+ * Creates a new ListAssetsResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.ListAssetsResponse.IListAssetsResult): google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Encodes the specified ListAssetsResult message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult.verify|verify} messages.
+ * @param message ListAssetsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.ListAssetsResponse.IListAssetsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult.verify|verify} messages.
+ * @param message ListAssetsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.ListAssetsResponse.IListAssetsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Decodes a ListAssetsResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Verifies a ListAssetsResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Creates a plain object from a ListAssetsResult message. Also converts values to other types if specified.
+ * @param message ListAssetsResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.ListAssetsResponse.ListAssetsResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListAssetsResult {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ UNUSED = 1,
+ ADDED = 2,
+ REMOVED = 3,
+ ACTIVE = 4
+ }
+ }
+ }
+
+ /** Properties of a ListFindingsRequest. */
+ interface IListFindingsRequest {
+
+ /** ListFindingsRequest parent */
+ parent?: (string|null);
+
+ /** ListFindingsRequest filter */
+ filter?: (string|null);
+
+ /** ListFindingsRequest orderBy */
+ orderBy?: (string|null);
+
+ /** ListFindingsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsRequest fieldMask */
+ fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListFindingsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListFindingsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListFindingsRequest. */
+ class ListFindingsRequest implements IListFindingsRequest {
+
+ /**
+ * Constructs a new ListFindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IListFindingsRequest);
+
+ /** ListFindingsRequest parent. */
+ public parent: string;
+
+ /** ListFindingsRequest filter. */
+ public filter: string;
+
+ /** ListFindingsRequest orderBy. */
+ public orderBy: string;
+
+ /** ListFindingsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsRequest fieldMask. */
+ public fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListFindingsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListFindingsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListFindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IListFindingsRequest): google.cloud.securitycenter.v1beta1.ListFindingsRequest;
+
+ /**
+ * Encodes the specified ListFindingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListFindingsRequest.verify|verify} messages.
+ * @param message ListFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IListFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListFindingsRequest.verify|verify} messages.
+ * @param message ListFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IListFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.ListFindingsRequest;
+
+ /**
+ * Decodes a ListFindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.ListFindingsRequest;
+
+ /**
+ * Verifies a ListFindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.ListFindingsRequest;
+
+ /**
+ * Creates a plain object from a ListFindingsRequest message. Also converts values to other types if specified.
+ * @param message ListFindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.ListFindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListFindingsResponse. */
+ interface IListFindingsResponse {
+
+ /** ListFindingsResponse findings */
+ findings?: (google.cloud.securitycenter.v1beta1.IFinding[]|null);
+
+ /** ListFindingsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListFindingsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a ListFindingsResponse. */
+ class ListFindingsResponse implements IListFindingsResponse {
+
+ /**
+ * Constructs a new ListFindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IListFindingsResponse);
+
+ /** ListFindingsResponse findings. */
+ public findings: google.cloud.securitycenter.v1beta1.IFinding[];
+
+ /** ListFindingsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListFindingsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new ListFindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IListFindingsResponse): google.cloud.securitycenter.v1beta1.ListFindingsResponse;
+
+ /**
+ * Encodes the specified ListFindingsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListFindingsResponse.verify|verify} messages.
+ * @param message ListFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IListFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.ListFindingsResponse.verify|verify} messages.
+ * @param message ListFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IListFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.ListFindingsResponse;
+
+ /**
+ * Decodes a ListFindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.ListFindingsResponse;
+
+ /**
+ * Verifies a ListFindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.ListFindingsResponse;
+
+ /**
+ * Creates a plain object from a ListFindingsResponse message. Also converts values to other types if specified.
+ * @param message ListFindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.ListFindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SetFindingStateRequest. */
+ interface ISetFindingStateRequest {
+
+ /** SetFindingStateRequest name */
+ name?: (string|null);
+
+ /** SetFindingStateRequest state */
+ state?: (google.cloud.securitycenter.v1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1beta1.Finding.State|null);
+
+ /** SetFindingStateRequest startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a SetFindingStateRequest. */
+ class SetFindingStateRequest implements ISetFindingStateRequest {
+
+ /**
+ * Constructs a new SetFindingStateRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.ISetFindingStateRequest);
+
+ /** SetFindingStateRequest name. */
+ public name: string;
+
+ /** SetFindingStateRequest state. */
+ public state: (google.cloud.securitycenter.v1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1beta1.Finding.State);
+
+ /** SetFindingStateRequest startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new SetFindingStateRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetFindingStateRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.ISetFindingStateRequest): google.cloud.securitycenter.v1beta1.SetFindingStateRequest;
+
+ /**
+ * Encodes the specified SetFindingStateRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.SetFindingStateRequest.verify|verify} messages.
+ * @param message SetFindingStateRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.ISetFindingStateRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetFindingStateRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.SetFindingStateRequest.verify|verify} messages.
+ * @param message SetFindingStateRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.ISetFindingStateRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetFindingStateRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetFindingStateRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.SetFindingStateRequest;
+
+ /**
+ * Decodes a SetFindingStateRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetFindingStateRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.SetFindingStateRequest;
+
+ /**
+ * Verifies a SetFindingStateRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetFindingStateRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetFindingStateRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.SetFindingStateRequest;
+
+ /**
+ * Creates a plain object from a SetFindingStateRequest message. Also converts values to other types if specified.
+ * @param message SetFindingStateRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.SetFindingStateRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetFindingStateRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetFindingStateRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RunAssetDiscoveryRequest. */
+ interface IRunAssetDiscoveryRequest {
+
+ /** RunAssetDiscoveryRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a RunAssetDiscoveryRequest. */
+ class RunAssetDiscoveryRequest implements IRunAssetDiscoveryRequest {
+
+ /**
+ * Constructs a new RunAssetDiscoveryRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryRequest);
+
+ /** RunAssetDiscoveryRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new RunAssetDiscoveryRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RunAssetDiscoveryRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryRequest): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.RunAssetDiscoveryRequest.verify|verify} messages.
+ * @param message RunAssetDiscoveryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.RunAssetDiscoveryRequest.verify|verify} messages.
+ * @param message RunAssetDiscoveryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IRunAssetDiscoveryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RunAssetDiscoveryRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RunAssetDiscoveryRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Decodes a RunAssetDiscoveryRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RunAssetDiscoveryRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Verifies a RunAssetDiscoveryRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RunAssetDiscoveryRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RunAssetDiscoveryRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Creates a plain object from a RunAssetDiscoveryRequest message. Also converts values to other types if specified.
+ * @param message RunAssetDiscoveryRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.RunAssetDiscoveryRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RunAssetDiscoveryRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RunAssetDiscoveryRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateFindingRequest. */
+ interface IUpdateFindingRequest {
+
+ /** UpdateFindingRequest finding */
+ finding?: (google.cloud.securitycenter.v1beta1.IFinding|null);
+
+ /** UpdateFindingRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateFindingRequest. */
+ class UpdateFindingRequest implements IUpdateFindingRequest {
+
+ /**
+ * Constructs a new UpdateFindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IUpdateFindingRequest);
+
+ /** UpdateFindingRequest finding. */
+ public finding?: (google.cloud.securitycenter.v1beta1.IFinding|null);
+
+ /** UpdateFindingRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateFindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateFindingRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IUpdateFindingRequest): google.cloud.securitycenter.v1beta1.UpdateFindingRequest;
+
+ /**
+ * Encodes the specified UpdateFindingRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateFindingRequest.verify|verify} messages.
+ * @param message UpdateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IUpdateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateFindingRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateFindingRequest.verify|verify} messages.
+ * @param message UpdateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IUpdateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateFindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.UpdateFindingRequest;
+
+ /**
+ * Decodes an UpdateFindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.UpdateFindingRequest;
+
+ /**
+ * Verifies an UpdateFindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateFindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateFindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.UpdateFindingRequest;
+
+ /**
+ * Creates a plain object from an UpdateFindingRequest message. Also converts values to other types if specified.
+ * @param message UpdateFindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.UpdateFindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateFindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateFindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateOrganizationSettingsRequest. */
+ interface IUpdateOrganizationSettingsRequest {
+
+ /** UpdateOrganizationSettingsRequest organizationSettings */
+ organizationSettings?: (google.cloud.securitycenter.v1beta1.IOrganizationSettings|null);
+
+ /** UpdateOrganizationSettingsRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateOrganizationSettingsRequest. */
+ class UpdateOrganizationSettingsRequest implements IUpdateOrganizationSettingsRequest {
+
+ /**
+ * Constructs a new UpdateOrganizationSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IUpdateOrganizationSettingsRequest);
+
+ /** UpdateOrganizationSettingsRequest organizationSettings. */
+ public organizationSettings?: (google.cloud.securitycenter.v1beta1.IOrganizationSettings|null);
+
+ /** UpdateOrganizationSettingsRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateOrganizationSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateOrganizationSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IUpdateOrganizationSettingsRequest): google.cloud.securitycenter.v1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Encodes the specified UpdateOrganizationSettingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateOrganizationSettingsRequest.verify|verify} messages.
+ * @param message UpdateOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IUpdateOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateOrganizationSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateOrganizationSettingsRequest.verify|verify} messages.
+ * @param message UpdateOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IUpdateOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateOrganizationSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Decodes an UpdateOrganizationSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Verifies an UpdateOrganizationSettingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateOrganizationSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateOrganizationSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Creates a plain object from an UpdateOrganizationSettingsRequest message. Also converts values to other types if specified.
+ * @param message UpdateOrganizationSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.UpdateOrganizationSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateOrganizationSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateOrganizationSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateSourceRequest. */
+ interface IUpdateSourceRequest {
+
+ /** UpdateSourceRequest source */
+ source?: (google.cloud.securitycenter.v1beta1.ISource|null);
+
+ /** UpdateSourceRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateSourceRequest. */
+ class UpdateSourceRequest implements IUpdateSourceRequest {
+
+ /**
+ * Constructs a new UpdateSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IUpdateSourceRequest);
+
+ /** UpdateSourceRequest source. */
+ public source?: (google.cloud.securitycenter.v1beta1.ISource|null);
+
+ /** UpdateSourceRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IUpdateSourceRequest): google.cloud.securitycenter.v1beta1.UpdateSourceRequest;
+
+ /**
+ * Encodes the specified UpdateSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateSourceRequest.verify|verify} messages.
+ * @param message UpdateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IUpdateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateSourceRequest.verify|verify} messages.
+ * @param message UpdateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IUpdateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.UpdateSourceRequest;
+
+ /**
+ * Decodes an UpdateSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.UpdateSourceRequest;
+
+ /**
+ * Verifies an UpdateSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.UpdateSourceRequest;
+
+ /**
+ * Creates a plain object from an UpdateSourceRequest message. Also converts values to other types if specified.
+ * @param message UpdateSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.UpdateSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateSecurityMarksRequest. */
+ interface IUpdateSecurityMarksRequest {
+
+ /** UpdateSecurityMarksRequest securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1beta1.ISecurityMarks|null);
+
+ /** UpdateSecurityMarksRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateSecurityMarksRequest startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an UpdateSecurityMarksRequest. */
+ class UpdateSecurityMarksRequest implements IUpdateSecurityMarksRequest {
+
+ /**
+ * Constructs a new UpdateSecurityMarksRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.IUpdateSecurityMarksRequest);
+
+ /** UpdateSecurityMarksRequest securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1beta1.ISecurityMarks|null);
+
+ /** UpdateSecurityMarksRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateSecurityMarksRequest startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new UpdateSecurityMarksRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateSecurityMarksRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.IUpdateSecurityMarksRequest): google.cloud.securitycenter.v1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Encodes the specified UpdateSecurityMarksRequest message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateSecurityMarksRequest.verify|verify} messages.
+ * @param message UpdateSecurityMarksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.IUpdateSecurityMarksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateSecurityMarksRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.UpdateSecurityMarksRequest.verify|verify} messages.
+ * @param message UpdateSecurityMarksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.IUpdateSecurityMarksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateSecurityMarksRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateSecurityMarksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Decodes an UpdateSecurityMarksRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateSecurityMarksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Verifies an UpdateSecurityMarksRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateSecurityMarksRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateSecurityMarksRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Creates a plain object from an UpdateSecurityMarksRequest message. Also converts values to other types if specified.
+ * @param message UpdateSecurityMarksRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.UpdateSecurityMarksRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateSecurityMarksRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateSecurityMarksRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Source. */
+ interface ISource {
+
+ /** Source name */
+ name?: (string|null);
+
+ /** Source displayName */
+ displayName?: (string|null);
+
+ /** Source description */
+ description?: (string|null);
+ }
+
+ /** Represents a Source. */
+ class Source implements ISource {
+
+ /**
+ * Constructs a new Source.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1beta1.ISource);
+
+ /** Source name. */
+ public name: string;
+
+ /** Source displayName. */
+ public displayName: string;
+
+ /** Source description. */
+ public description: string;
+
+ /**
+ * Creates a new Source instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Source instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1beta1.ISource): google.cloud.securitycenter.v1beta1.Source;
+
+ /**
+ * Encodes the specified Source message. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Source.verify|verify} messages.
+ * @param message Source message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1beta1.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Source message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1beta1.Source.verify|verify} messages.
+ * @param message Source message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1beta1.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Source message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1beta1.Source;
+
+ /**
+ * Decodes a Source message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1beta1.Source;
+
+ /**
+ * Verifies a Source message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Source message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Source
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1beta1.Source;
+
+ /**
+ * Creates a plain object from a Source message. Also converts values to other types if specified.
+ * @param message Source
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1beta1.Source, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Source to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Source
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace v1p1beta1. */
+ namespace v1p1beta1 {
+
+ /** Properties of an Asset. */
+ interface IAsset {
+
+ /** Asset name */
+ name?: (string|null);
+
+ /** Asset securityCenterProperties */
+ securityCenterProperties?: (google.cloud.securitycenter.v1p1beta1.Asset.ISecurityCenterProperties|null);
+
+ /** Asset resourceProperties */
+ resourceProperties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** Asset securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1p1beta1.ISecurityMarks|null);
+
+ /** Asset createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset updateTime */
+ updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset iamPolicy */
+ iamPolicy?: (google.cloud.securitycenter.v1p1beta1.Asset.IIamPolicy|null);
+
+ /** Asset canonicalName */
+ canonicalName?: (string|null);
+ }
+
+ /** Represents an Asset. */
+ class Asset implements IAsset {
+
+ /**
+ * Constructs a new Asset.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IAsset);
+
+ /** Asset name. */
+ public name: string;
+
+ /** Asset securityCenterProperties. */
+ public securityCenterProperties?: (google.cloud.securitycenter.v1p1beta1.Asset.ISecurityCenterProperties|null);
+
+ /** Asset resourceProperties. */
+ public resourceProperties: { [k: string]: google.protobuf.IValue };
+
+ /** Asset securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1p1beta1.ISecurityMarks|null);
+
+ /** Asset createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset updateTime. */
+ public updateTime?: (google.protobuf.ITimestamp|null);
+
+ /** Asset iamPolicy. */
+ public iamPolicy?: (google.cloud.securitycenter.v1p1beta1.Asset.IIamPolicy|null);
+
+ /** Asset canonicalName. */
+ public canonicalName: string;
+
+ /**
+ * Creates a new Asset instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Asset instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IAsset): google.cloud.securitycenter.v1p1beta1.Asset;
+
+ /**
+ * Encodes the specified Asset message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Asset.verify|verify} messages.
+ * @param message Asset message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IAsset, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Asset message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Asset.verify|verify} messages.
+ * @param message Asset message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IAsset, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.Asset;
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.Asset;
+
+ /**
+ * Verifies an Asset message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Asset message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Asset
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.Asset;
+
+ /**
+ * Creates a plain object from an Asset message. Also converts values to other types if specified.
+ * @param message Asset
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.Asset, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Asset to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Asset
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Asset {
+
+ /** Properties of a SecurityCenterProperties. */
+ interface ISecurityCenterProperties {
+
+ /** SecurityCenterProperties resourceName */
+ resourceName?: (string|null);
+
+ /** SecurityCenterProperties resourceType */
+ resourceType?: (string|null);
+
+ /** SecurityCenterProperties resourceParent */
+ resourceParent?: (string|null);
+
+ /** SecurityCenterProperties resourceProject */
+ resourceProject?: (string|null);
+
+ /** SecurityCenterProperties resourceOwners */
+ resourceOwners?: (string[]|null);
+
+ /** SecurityCenterProperties resourceDisplayName */
+ resourceDisplayName?: (string|null);
+
+ /** SecurityCenterProperties resourceParentDisplayName */
+ resourceParentDisplayName?: (string|null);
+
+ /** SecurityCenterProperties resourceProjectDisplayName */
+ resourceProjectDisplayName?: (string|null);
+
+ /** SecurityCenterProperties folders */
+ folders?: (google.cloud.securitycenter.v1p1beta1.IFolder[]|null);
+ }
+
+ /** Represents a SecurityCenterProperties. */
+ class SecurityCenterProperties implements ISecurityCenterProperties {
+
+ /**
+ * Constructs a new SecurityCenterProperties.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.Asset.ISecurityCenterProperties);
+
+ /** SecurityCenterProperties resourceName. */
+ public resourceName: string;
+
+ /** SecurityCenterProperties resourceType. */
+ public resourceType: string;
+
+ /** SecurityCenterProperties resourceParent. */
+ public resourceParent: string;
+
+ /** SecurityCenterProperties resourceProject. */
+ public resourceProject: string;
+
+ /** SecurityCenterProperties resourceOwners. */
+ public resourceOwners: string[];
+
+ /** SecurityCenterProperties resourceDisplayName. */
+ public resourceDisplayName: string;
+
+ /** SecurityCenterProperties resourceParentDisplayName. */
+ public resourceParentDisplayName: string;
+
+ /** SecurityCenterProperties resourceProjectDisplayName. */
+ public resourceProjectDisplayName: string;
+
+ /** SecurityCenterProperties folders. */
+ public folders: google.cloud.securitycenter.v1p1beta1.IFolder[];
+
+ /**
+ * Creates a new SecurityCenterProperties instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SecurityCenterProperties instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.Asset.ISecurityCenterProperties): google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Encodes the specified SecurityCenterProperties message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @param message SecurityCenterProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.Asset.ISecurityCenterProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SecurityCenterProperties message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @param message SecurityCenterProperties message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.Asset.ISecurityCenterProperties, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Verifies a SecurityCenterProperties message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SecurityCenterProperties message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SecurityCenterProperties
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties;
+
+ /**
+ * Creates a plain object from a SecurityCenterProperties message. Also converts values to other types if specified.
+ * @param message SecurityCenterProperties
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.Asset.SecurityCenterProperties, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SecurityCenterProperties to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SecurityCenterProperties
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an IamPolicy. */
+ interface IIamPolicy {
+
+ /** IamPolicy policyBlob */
+ policyBlob?: (string|null);
+ }
+
+ /** Represents an IamPolicy. */
+ class IamPolicy implements IIamPolicy {
+
+ /**
+ * Constructs a new IamPolicy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.Asset.IIamPolicy);
+
+ /** IamPolicy policyBlob. */
+ public policyBlob: string;
+
+ /**
+ * Creates a new IamPolicy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns IamPolicy instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.Asset.IIamPolicy): google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy;
+
+ /**
+ * Encodes the specified IamPolicy message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy.verify|verify} messages.
+ * @param message IamPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.Asset.IIamPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified IamPolicy message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy.verify|verify} messages.
+ * @param message IamPolicy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.Asset.IIamPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an IamPolicy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns IamPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy;
+
+ /**
+ * Decodes an IamPolicy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns IamPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy;
+
+ /**
+ * Verifies an IamPolicy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an IamPolicy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns IamPolicy
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy;
+
+ /**
+ * Creates a plain object from an IamPolicy message. Also converts values to other types if specified.
+ * @param message IamPolicy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.Asset.IamPolicy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this IamPolicy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for IamPolicy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a Folder. */
+ interface IFolder {
+
+ /** Folder resourceFolder */
+ resourceFolder?: (string|null);
+
+ /** Folder resourceFolderDisplayName */
+ resourceFolderDisplayName?: (string|null);
+ }
+
+ /** Represents a Folder. */
+ class Folder implements IFolder {
+
+ /**
+ * Constructs a new Folder.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IFolder);
+
+ /** Folder resourceFolder. */
+ public resourceFolder: string;
+
+ /** Folder resourceFolderDisplayName. */
+ public resourceFolderDisplayName: string;
+
+ /**
+ * Creates a new Folder instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Folder instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IFolder): google.cloud.securitycenter.v1p1beta1.Folder;
+
+ /**
+ * Encodes the specified Folder message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Folder.verify|verify} messages.
+ * @param message Folder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IFolder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Folder message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Folder.verify|verify} messages.
+ * @param message Folder message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IFolder, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Folder message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Folder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.Folder;
+
+ /**
+ * Decodes a Folder message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Folder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.Folder;
+
+ /**
+ * Verifies a Folder message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Folder message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Folder
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.Folder;
+
+ /**
+ * Creates a plain object from a Folder message. Also converts values to other types if specified.
+ * @param message Folder
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.Folder, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Folder to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Folder
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a SecurityMarks. */
+ interface ISecurityMarks {
+
+ /** SecurityMarks name */
+ name?: (string|null);
+
+ /** SecurityMarks marks */
+ marks?: ({ [k: string]: string }|null);
+
+ /** SecurityMarks canonicalName */
+ canonicalName?: (string|null);
+ }
+
+ /** Represents a SecurityMarks. */
+ class SecurityMarks implements ISecurityMarks {
+
+ /**
+ * Constructs a new SecurityMarks.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ISecurityMarks);
+
+ /** SecurityMarks name. */
+ public name: string;
+
+ /** SecurityMarks marks. */
+ public marks: { [k: string]: string };
+
+ /** SecurityMarks canonicalName. */
+ public canonicalName: string;
+
+ /**
+ * Creates a new SecurityMarks instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SecurityMarks instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ISecurityMarks): google.cloud.securitycenter.v1p1beta1.SecurityMarks;
+
+ /**
+ * Encodes the specified SecurityMarks message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.SecurityMarks.verify|verify} messages.
+ * @param message SecurityMarks message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ISecurityMarks, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SecurityMarks message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.SecurityMarks.verify|verify} messages.
+ * @param message SecurityMarks message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ISecurityMarks, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.SecurityMarks;
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.SecurityMarks;
+
+ /**
+ * Verifies a SecurityMarks message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SecurityMarks message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SecurityMarks
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.SecurityMarks;
+
+ /**
+ * Creates a plain object from a SecurityMarks message. Also converts values to other types if specified.
+ * @param message SecurityMarks
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.SecurityMarks, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SecurityMarks to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SecurityMarks
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Finding. */
+ interface IFinding {
+
+ /** Finding name */
+ name?: (string|null);
+
+ /** Finding parent */
+ parent?: (string|null);
+
+ /** Finding resourceName */
+ resourceName?: (string|null);
+
+ /** Finding state */
+ state?: (google.cloud.securitycenter.v1p1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1p1beta1.Finding.State|null);
+
+ /** Finding category */
+ category?: (string|null);
+
+ /** Finding externalUri */
+ externalUri?: (string|null);
+
+ /** Finding sourceProperties */
+ sourceProperties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** Finding securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1p1beta1.ISecurityMarks|null);
+
+ /** Finding eventTime */
+ eventTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding createTime */
+ createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding severity */
+ severity?: (google.cloud.securitycenter.v1p1beta1.Finding.Severity|keyof typeof google.cloud.securitycenter.v1p1beta1.Finding.Severity|null);
+
+ /** Finding canonicalName */
+ canonicalName?: (string|null);
+ }
+
+ /** Represents a Finding. */
+ class Finding implements IFinding {
+
+ /**
+ * Constructs a new Finding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IFinding);
+
+ /** Finding name. */
+ public name: string;
+
+ /** Finding parent. */
+ public parent: string;
+
+ /** Finding resourceName. */
+ public resourceName: string;
+
+ /** Finding state. */
+ public state: (google.cloud.securitycenter.v1p1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1p1beta1.Finding.State);
+
+ /** Finding category. */
+ public category: string;
+
+ /** Finding externalUri. */
+ public externalUri: string;
+
+ /** Finding sourceProperties. */
+ public sourceProperties: { [k: string]: google.protobuf.IValue };
+
+ /** Finding securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1p1beta1.ISecurityMarks|null);
+
+ /** Finding eventTime. */
+ public eventTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding createTime. */
+ public createTime?: (google.protobuf.ITimestamp|null);
+
+ /** Finding severity. */
+ public severity: (google.cloud.securitycenter.v1p1beta1.Finding.Severity|keyof typeof google.cloud.securitycenter.v1p1beta1.Finding.Severity);
+
+ /** Finding canonicalName. */
+ public canonicalName: string;
+
+ /**
+ * Creates a new Finding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Finding instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IFinding): google.cloud.securitycenter.v1p1beta1.Finding;
+
+ /**
+ * Encodes the specified Finding message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Finding.verify|verify} messages.
+ * @param message Finding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IFinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Finding message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Finding.verify|verify} messages.
+ * @param message Finding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IFinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Finding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Finding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.Finding;
+
+ /**
+ * Decodes a Finding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Finding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.Finding;
+
+ /**
+ * Verifies a Finding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Finding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Finding
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.Finding;
+
+ /**
+ * Creates a plain object from a Finding message. Also converts values to other types if specified.
+ * @param message Finding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.Finding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Finding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Finding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Finding {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ ACTIVE = 1,
+ INACTIVE = 2
+ }
+
+ /** Severity enum. */
+ enum Severity {
+ SEVERITY_UNSPECIFIED = 0,
+ CRITICAL = 1,
+ HIGH = 2,
+ MEDIUM = 3,
+ LOW = 4
+ }
+ }
+
+ /** Properties of a NotificationConfig. */
+ interface INotificationConfig {
+
+ /** NotificationConfig name */
+ name?: (string|null);
+
+ /** NotificationConfig description */
+ description?: (string|null);
+
+ /** NotificationConfig eventType */
+ eventType?: (google.cloud.securitycenter.v1p1beta1.NotificationConfig.EventType|keyof typeof google.cloud.securitycenter.v1p1beta1.NotificationConfig.EventType|null);
+
+ /** NotificationConfig pubsubTopic */
+ pubsubTopic?: (string|null);
+
+ /** NotificationConfig serviceAccount */
+ serviceAccount?: (string|null);
+
+ /** NotificationConfig streamingConfig */
+ streamingConfig?: (google.cloud.securitycenter.v1p1beta1.NotificationConfig.IStreamingConfig|null);
+ }
+
+ /** Represents a NotificationConfig. */
+ class NotificationConfig implements INotificationConfig {
+
+ /**
+ * Constructs a new NotificationConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.INotificationConfig);
+
+ /** NotificationConfig name. */
+ public name: string;
+
+ /** NotificationConfig description. */
+ public description: string;
+
+ /** NotificationConfig eventType. */
+ public eventType: (google.cloud.securitycenter.v1p1beta1.NotificationConfig.EventType|keyof typeof google.cloud.securitycenter.v1p1beta1.NotificationConfig.EventType);
+
+ /** NotificationConfig pubsubTopic. */
+ public pubsubTopic: string;
+
+ /** NotificationConfig serviceAccount. */
+ public serviceAccount: string;
+
+ /** NotificationConfig streamingConfig. */
+ public streamingConfig?: (google.cloud.securitycenter.v1p1beta1.NotificationConfig.IStreamingConfig|null);
+
+ /** NotificationConfig notifyConfig. */
+ public notifyConfig?: "streamingConfig";
+
+ /**
+ * Creates a new NotificationConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NotificationConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.INotificationConfig): google.cloud.securitycenter.v1p1beta1.NotificationConfig;
+
+ /**
+ * Encodes the specified NotificationConfig message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.NotificationConfig.verify|verify} messages.
+ * @param message NotificationConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.INotificationConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NotificationConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.NotificationConfig.verify|verify} messages.
+ * @param message NotificationConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.INotificationConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NotificationConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NotificationConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.NotificationConfig;
+
+ /**
+ * Decodes a NotificationConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NotificationConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.NotificationConfig;
+
+ /**
+ * Verifies a NotificationConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NotificationConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NotificationConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.NotificationConfig;
+
+ /**
+ * Creates a plain object from a NotificationConfig message. Also converts values to other types if specified.
+ * @param message NotificationConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.NotificationConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NotificationConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NotificationConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace NotificationConfig {
+
+ /** Properties of a StreamingConfig. */
+ interface IStreamingConfig {
+
+ /** StreamingConfig filter */
+ filter?: (string|null);
+ }
+
+ /** Represents a StreamingConfig. */
+ class StreamingConfig implements IStreamingConfig {
+
+ /**
+ * Constructs a new StreamingConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.NotificationConfig.IStreamingConfig);
+
+ /** StreamingConfig filter. */
+ public filter: string;
+
+ /**
+ * Creates a new StreamingConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns StreamingConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.NotificationConfig.IStreamingConfig): google.cloud.securitycenter.v1p1beta1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Encodes the specified StreamingConfig message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.NotificationConfig.StreamingConfig.verify|verify} messages.
+ * @param message StreamingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.NotificationConfig.IStreamingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified StreamingConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.NotificationConfig.StreamingConfig.verify|verify} messages.
+ * @param message StreamingConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.NotificationConfig.IStreamingConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a StreamingConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns StreamingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Decodes a StreamingConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns StreamingConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Verifies a StreamingConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a StreamingConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns StreamingConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.NotificationConfig.StreamingConfig;
+
+ /**
+ * Creates a plain object from a StreamingConfig message. Also converts values to other types if specified.
+ * @param message StreamingConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.NotificationConfig.StreamingConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this StreamingConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for StreamingConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** EventType enum. */
+ enum EventType {
+ EVENT_TYPE_UNSPECIFIED = 0,
+ FINDING = 1
+ }
+ }
+
+ /** Properties of a NotificationMessage. */
+ interface INotificationMessage {
+
+ /** NotificationMessage notificationConfigName */
+ notificationConfigName?: (string|null);
+
+ /** NotificationMessage finding */
+ finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+
+ /** NotificationMessage resource */
+ resource?: (google.cloud.securitycenter.v1p1beta1.IResource|null);
+ }
+
+ /** Represents a NotificationMessage. */
+ class NotificationMessage implements INotificationMessage {
+
+ /**
+ * Constructs a new NotificationMessage.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.INotificationMessage);
+
+ /** NotificationMessage notificationConfigName. */
+ public notificationConfigName: string;
+
+ /** NotificationMessage finding. */
+ public finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+
+ /** NotificationMessage resource. */
+ public resource?: (google.cloud.securitycenter.v1p1beta1.IResource|null);
+
+ /** NotificationMessage event. */
+ public event?: "finding";
+
+ /**
+ * Creates a new NotificationMessage instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NotificationMessage instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.INotificationMessage): google.cloud.securitycenter.v1p1beta1.NotificationMessage;
+
+ /**
+ * Encodes the specified NotificationMessage message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.NotificationMessage.verify|verify} messages.
+ * @param message NotificationMessage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.INotificationMessage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NotificationMessage message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.NotificationMessage.verify|verify} messages.
+ * @param message NotificationMessage message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.INotificationMessage, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NotificationMessage message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NotificationMessage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.NotificationMessage;
+
+ /**
+ * Decodes a NotificationMessage message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NotificationMessage
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.NotificationMessage;
+
+ /**
+ * Verifies a NotificationMessage message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NotificationMessage message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NotificationMessage
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.NotificationMessage;
+
+ /**
+ * Creates a plain object from a NotificationMessage message. Also converts values to other types if specified.
+ * @param message NotificationMessage
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.NotificationMessage, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NotificationMessage to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NotificationMessage
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Resource. */
+ interface IResource {
+
+ /** Resource name */
+ name?: (string|null);
+
+ /** Resource project */
+ project?: (string|null);
+
+ /** Resource projectDisplayName */
+ projectDisplayName?: (string|null);
+
+ /** Resource parent */
+ parent?: (string|null);
+
+ /** Resource parentDisplayName */
+ parentDisplayName?: (string|null);
+
+ /** Resource folders */
+ folders?: (google.cloud.securitycenter.v1p1beta1.IFolder[]|null);
+ }
+
+ /** Represents a Resource. */
+ class Resource implements IResource {
+
+ /**
+ * Constructs a new Resource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IResource);
+
+ /** Resource name. */
+ public name: string;
+
+ /** Resource project. */
+ public project: string;
+
+ /** Resource projectDisplayName. */
+ public projectDisplayName: string;
+
+ /** Resource parent. */
+ public parent: string;
+
+ /** Resource parentDisplayName. */
+ public parentDisplayName: string;
+
+ /** Resource folders. */
+ public folders: google.cloud.securitycenter.v1p1beta1.IFolder[];
+
+ /**
+ * Creates a new Resource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Resource instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IResource): google.cloud.securitycenter.v1p1beta1.Resource;
+
+ /**
+ * Encodes the specified Resource message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Resource message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.Resource;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.Resource;
+
+ /**
+ * Verifies a Resource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Resource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Resource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.Resource;
+
+ /**
+ * Creates a plain object from a Resource message. Also converts values to other types if specified.
+ * @param message Resource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.Resource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Resource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Resource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OrganizationSettings. */
+ interface IOrganizationSettings {
+
+ /** OrganizationSettings name */
+ name?: (string|null);
+
+ /** OrganizationSettings enableAssetDiscovery */
+ enableAssetDiscovery?: (boolean|null);
+
+ /** OrganizationSettings assetDiscoveryConfig */
+ assetDiscoveryConfig?: (google.cloud.securitycenter.v1p1beta1.OrganizationSettings.IAssetDiscoveryConfig|null);
+ }
+
+ /** Represents an OrganizationSettings. */
+ class OrganizationSettings implements IOrganizationSettings {
+
+ /**
+ * Constructs a new OrganizationSettings.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IOrganizationSettings);
+
+ /** OrganizationSettings name. */
+ public name: string;
+
+ /** OrganizationSettings enableAssetDiscovery. */
+ public enableAssetDiscovery: boolean;
+
+ /** OrganizationSettings assetDiscoveryConfig. */
+ public assetDiscoveryConfig?: (google.cloud.securitycenter.v1p1beta1.OrganizationSettings.IAssetDiscoveryConfig|null);
+
+ /**
+ * Creates a new OrganizationSettings instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OrganizationSettings instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IOrganizationSettings): google.cloud.securitycenter.v1p1beta1.OrganizationSettings;
+
+ /**
+ * Encodes the specified OrganizationSettings message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.OrganizationSettings.verify|verify} messages.
+ * @param message OrganizationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IOrganizationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OrganizationSettings message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.OrganizationSettings.verify|verify} messages.
+ * @param message OrganizationSettings message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IOrganizationSettings, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OrganizationSettings message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OrganizationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.OrganizationSettings;
+
+ /**
+ * Decodes an OrganizationSettings message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OrganizationSettings
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.OrganizationSettings;
+
+ /**
+ * Verifies an OrganizationSettings message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OrganizationSettings message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OrganizationSettings
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.OrganizationSettings;
+
+ /**
+ * Creates a plain object from an OrganizationSettings message. Also converts values to other types if specified.
+ * @param message OrganizationSettings
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.OrganizationSettings, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OrganizationSettings to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OrganizationSettings
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace OrganizationSettings {
+
+ /** Properties of an AssetDiscoveryConfig. */
+ interface IAssetDiscoveryConfig {
+
+ /** AssetDiscoveryConfig projectIds */
+ projectIds?: (string[]|null);
+
+ /** AssetDiscoveryConfig inclusionMode */
+ inclusionMode?: (google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|keyof typeof google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|null);
+
+ /** AssetDiscoveryConfig folderIds */
+ folderIds?: (string[]|null);
+ }
+
+ /** Represents an AssetDiscoveryConfig. */
+ class AssetDiscoveryConfig implements IAssetDiscoveryConfig {
+
+ /**
+ * Constructs a new AssetDiscoveryConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.OrganizationSettings.IAssetDiscoveryConfig);
+
+ /** AssetDiscoveryConfig projectIds. */
+ public projectIds: string[];
+
+ /** AssetDiscoveryConfig inclusionMode. */
+ public inclusionMode: (google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode|keyof typeof google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig.InclusionMode);
+
+ /** AssetDiscoveryConfig folderIds. */
+ public folderIds: string[];
+
+ /**
+ * Creates a new AssetDiscoveryConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AssetDiscoveryConfig instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.OrganizationSettings.IAssetDiscoveryConfig): google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Encodes the specified AssetDiscoveryConfig message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig.verify|verify} messages.
+ * @param message AssetDiscoveryConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.OrganizationSettings.IAssetDiscoveryConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AssetDiscoveryConfig message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig.verify|verify} messages.
+ * @param message AssetDiscoveryConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.OrganizationSettings.IAssetDiscoveryConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AssetDiscoveryConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AssetDiscoveryConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Decodes an AssetDiscoveryConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AssetDiscoveryConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Verifies an AssetDiscoveryConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AssetDiscoveryConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AssetDiscoveryConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig;
+
+ /**
+ * Creates a plain object from an AssetDiscoveryConfig message. Also converts values to other types if specified.
+ * @param message AssetDiscoveryConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.OrganizationSettings.AssetDiscoveryConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AssetDiscoveryConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AssetDiscoveryConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AssetDiscoveryConfig {
+
+ /** InclusionMode enum. */
+ enum InclusionMode {
+ INCLUSION_MODE_UNSPECIFIED = 0,
+ INCLUDE_ONLY = 1,
+ EXCLUDE = 2
+ }
+ }
+ }
+
+ /** Properties of a RunAssetDiscoveryResponse. */
+ interface IRunAssetDiscoveryResponse {
+
+ /** RunAssetDiscoveryResponse state */
+ state?: (google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse.State|keyof typeof google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse.State|null);
+
+ /** RunAssetDiscoveryResponse duration */
+ duration?: (google.protobuf.IDuration|null);
+ }
+
+ /** Represents a RunAssetDiscoveryResponse. */
+ class RunAssetDiscoveryResponse implements IRunAssetDiscoveryResponse {
+
+ /**
+ * Constructs a new RunAssetDiscoveryResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryResponse);
+
+ /** RunAssetDiscoveryResponse state. */
+ public state: (google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse.State|keyof typeof google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse.State);
+
+ /** RunAssetDiscoveryResponse duration. */
+ public duration?: (google.protobuf.IDuration|null);
+
+ /**
+ * Creates a new RunAssetDiscoveryResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RunAssetDiscoveryResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryResponse): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryResponse message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse.verify|verify} messages.
+ * @param message RunAssetDiscoveryResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse.verify|verify} messages.
+ * @param message RunAssetDiscoveryResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RunAssetDiscoveryResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RunAssetDiscoveryResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Decodes a RunAssetDiscoveryResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RunAssetDiscoveryResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Verifies a RunAssetDiscoveryResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RunAssetDiscoveryResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RunAssetDiscoveryResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse;
+
+ /**
+ * Creates a plain object from a RunAssetDiscoveryResponse message. Also converts values to other types if specified.
+ * @param message RunAssetDiscoveryResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RunAssetDiscoveryResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RunAssetDiscoveryResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace RunAssetDiscoveryResponse {
+
+ /** State enum. */
+ enum State {
+ STATE_UNSPECIFIED = 0,
+ COMPLETED = 1,
+ SUPERSEDED = 2,
+ TERMINATED = 3
+ }
+ }
+
+ /** Represents a SecurityCenter */
+ class SecurityCenter extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new SecurityCenter service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new SecurityCenter service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): SecurityCenter;
+
+ /**
+ * Calls CreateSource.
+ * @param request CreateSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public createSource(request: google.cloud.securitycenter.v1p1beta1.ICreateSourceRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateSourceCallback): void;
+
+ /**
+ * Calls CreateSource.
+ * @param request CreateSourceRequest message or plain object
+ * @returns Promise
+ */
+ public createSource(request: google.cloud.securitycenter.v1p1beta1.ICreateSourceRequest): Promise;
+
+ /**
+ * Calls CreateFinding.
+ * @param request CreateFindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public createFinding(request: google.cloud.securitycenter.v1p1beta1.ICreateFindingRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateFindingCallback): void;
+
+ /**
+ * Calls CreateFinding.
+ * @param request CreateFindingRequest message or plain object
+ * @returns Promise
+ */
+ public createFinding(request: google.cloud.securitycenter.v1p1beta1.ICreateFindingRequest): Promise;
+
+ /**
+ * Calls CreateNotificationConfig.
+ * @param request CreateNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and NotificationConfig
+ */
+ public createNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.ICreateNotificationConfigRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.CreateNotificationConfigCallback): void;
+
+ /**
+ * Calls CreateNotificationConfig.
+ * @param request CreateNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public createNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.ICreateNotificationConfigRequest): Promise;
+
+ /**
+ * Calls DeleteNotificationConfig.
+ * @param request DeleteNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.IDeleteNotificationConfigRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.DeleteNotificationConfigCallback): void;
+
+ /**
+ * Calls DeleteNotificationConfig.
+ * @param request DeleteNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public deleteNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.IDeleteNotificationConfigRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetNotificationConfig.
+ * @param request GetNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and NotificationConfig
+ */
+ public getNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.IGetNotificationConfigRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetNotificationConfigCallback): void;
+
+ /**
+ * Calls GetNotificationConfig.
+ * @param request GetNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public getNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.IGetNotificationConfigRequest): Promise;
+
+ /**
+ * Calls GetOrganizationSettings.
+ * @param request GetOrganizationSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and OrganizationSettings
+ */
+ public getOrganizationSettings(request: google.cloud.securitycenter.v1p1beta1.IGetOrganizationSettingsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetOrganizationSettingsCallback): void;
+
+ /**
+ * Calls GetOrganizationSettings.
+ * @param request GetOrganizationSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public getOrganizationSettings(request: google.cloud.securitycenter.v1p1beta1.IGetOrganizationSettingsRequest): Promise;
+
+ /**
+ * Calls GetSource.
+ * @param request GetSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public getSource(request: google.cloud.securitycenter.v1p1beta1.IGetSourceRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.GetSourceCallback): void;
+
+ /**
+ * Calls GetSource.
+ * @param request GetSourceRequest message or plain object
+ * @returns Promise
+ */
+ public getSource(request: google.cloud.securitycenter.v1p1beta1.IGetSourceRequest): Promise;
+
+ /**
+ * Calls GroupAssets.
+ * @param request GroupAssetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GroupAssetsResponse
+ */
+ public groupAssets(request: google.cloud.securitycenter.v1p1beta1.IGroupAssetsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.GroupAssetsCallback): void;
+
+ /**
+ * Calls GroupAssets.
+ * @param request GroupAssetsRequest message or plain object
+ * @returns Promise
+ */
+ public groupAssets(request: google.cloud.securitycenter.v1p1beta1.IGroupAssetsRequest): Promise;
+
+ /**
+ * Calls GroupFindings.
+ * @param request GroupFindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and GroupFindingsResponse
+ */
+ public groupFindings(request: google.cloud.securitycenter.v1p1beta1.IGroupFindingsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.GroupFindingsCallback): void;
+
+ /**
+ * Calls GroupFindings.
+ * @param request GroupFindingsRequest message or plain object
+ * @returns Promise
+ */
+ public groupFindings(request: google.cloud.securitycenter.v1p1beta1.IGroupFindingsRequest): Promise;
+
+ /**
+ * Calls ListAssets.
+ * @param request ListAssetsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListAssetsResponse
+ */
+ public listAssets(request: google.cloud.securitycenter.v1p1beta1.IListAssetsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListAssetsCallback): void;
+
+ /**
+ * Calls ListAssets.
+ * @param request ListAssetsRequest message or plain object
+ * @returns Promise
+ */
+ public listAssets(request: google.cloud.securitycenter.v1p1beta1.IListAssetsRequest): Promise;
+
+ /**
+ * Calls ListFindings.
+ * @param request ListFindingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListFindingsResponse
+ */
+ public listFindings(request: google.cloud.securitycenter.v1p1beta1.IListFindingsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListFindingsCallback): void;
+
+ /**
+ * Calls ListFindings.
+ * @param request ListFindingsRequest message or plain object
+ * @returns Promise
+ */
+ public listFindings(request: google.cloud.securitycenter.v1p1beta1.IListFindingsRequest): Promise;
+
+ /**
+ * Calls ListNotificationConfigs.
+ * @param request ListNotificationConfigsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListNotificationConfigsResponse
+ */
+ public listNotificationConfigs(request: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListNotificationConfigsCallback): void;
+
+ /**
+ * Calls ListNotificationConfigs.
+ * @param request ListNotificationConfigsRequest message or plain object
+ * @returns Promise
+ */
+ public listNotificationConfigs(request: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsRequest): Promise;
+
+ /**
+ * Calls ListSources.
+ * @param request ListSourcesRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListSourcesResponse
+ */
+ public listSources(request: google.cloud.securitycenter.v1p1beta1.IListSourcesRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.ListSourcesCallback): void;
+
+ /**
+ * Calls ListSources.
+ * @param request ListSourcesRequest message or plain object
+ * @returns Promise
+ */
+ public listSources(request: google.cloud.securitycenter.v1p1beta1.IListSourcesRequest): Promise;
+
+ /**
+ * Calls RunAssetDiscovery.
+ * @param request RunAssetDiscoveryRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public runAssetDiscovery(request: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.RunAssetDiscoveryCallback): void;
+
+ /**
+ * Calls RunAssetDiscovery.
+ * @param request RunAssetDiscoveryRequest message or plain object
+ * @returns Promise
+ */
+ public runAssetDiscovery(request: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryRequest): Promise;
+
+ /**
+ * Calls SetFindingState.
+ * @param request SetFindingStateRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public setFindingState(request: google.cloud.securitycenter.v1p1beta1.ISetFindingStateRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.SetFindingStateCallback): void;
+
+ /**
+ * Calls SetFindingState.
+ * @param request SetFindingStateRequest message or plain object
+ * @returns Promise
+ */
+ public setFindingState(request: google.cloud.securitycenter.v1p1beta1.ISetFindingStateRequest): Promise;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+
+ /**
+ * Calls UpdateFinding.
+ * @param request UpdateFindingRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Finding
+ */
+ public updateFinding(request: google.cloud.securitycenter.v1p1beta1.IUpdateFindingRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateFindingCallback): void;
+
+ /**
+ * Calls UpdateFinding.
+ * @param request UpdateFindingRequest message or plain object
+ * @returns Promise
+ */
+ public updateFinding(request: google.cloud.securitycenter.v1p1beta1.IUpdateFindingRequest): Promise;
+
+ /**
+ * Calls UpdateNotificationConfig.
+ * @param request UpdateNotificationConfigRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and NotificationConfig
+ */
+ public updateNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.IUpdateNotificationConfigRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateNotificationConfigCallback): void;
+
+ /**
+ * Calls UpdateNotificationConfig.
+ * @param request UpdateNotificationConfigRequest message or plain object
+ * @returns Promise
+ */
+ public updateNotificationConfig(request: google.cloud.securitycenter.v1p1beta1.IUpdateNotificationConfigRequest): Promise;
+
+ /**
+ * Calls UpdateOrganizationSettings.
+ * @param request UpdateOrganizationSettingsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and OrganizationSettings
+ */
+ public updateOrganizationSettings(request: google.cloud.securitycenter.v1p1beta1.IUpdateOrganizationSettingsRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateOrganizationSettingsCallback): void;
+
+ /**
+ * Calls UpdateOrganizationSettings.
+ * @param request UpdateOrganizationSettingsRequest message or plain object
+ * @returns Promise
+ */
+ public updateOrganizationSettings(request: google.cloud.securitycenter.v1p1beta1.IUpdateOrganizationSettingsRequest): Promise;
+
+ /**
+ * Calls UpdateSource.
+ * @param request UpdateSourceRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Source
+ */
+ public updateSource(request: google.cloud.securitycenter.v1p1beta1.IUpdateSourceRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateSourceCallback): void;
+
+ /**
+ * Calls UpdateSource.
+ * @param request UpdateSourceRequest message or plain object
+ * @returns Promise
+ */
+ public updateSource(request: google.cloud.securitycenter.v1p1beta1.IUpdateSourceRequest): Promise;
+
+ /**
+ * Calls UpdateSecurityMarks.
+ * @param request UpdateSecurityMarksRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and SecurityMarks
+ */
+ public updateSecurityMarks(request: google.cloud.securitycenter.v1p1beta1.IUpdateSecurityMarksRequest, callback: google.cloud.securitycenter.v1p1beta1.SecurityCenter.UpdateSecurityMarksCallback): void;
+
+ /**
+ * Calls UpdateSecurityMarks.
+ * @param request UpdateSecurityMarksRequest message or plain object
+ * @returns Promise
+ */
+ public updateSecurityMarks(request: google.cloud.securitycenter.v1p1beta1.IUpdateSecurityMarksRequest): Promise;
+ }
+
+ namespace SecurityCenter {
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|createSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type CreateSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|createFinding}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type CreateFindingCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|createNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] NotificationConfig
+ */
+ type CreateNotificationConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.NotificationConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|deleteNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteNotificationConfigCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|getNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] NotificationConfig
+ */
+ type GetNotificationConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.NotificationConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|getOrganizationSettings}.
+ * @param error Error, if any
+ * @param [response] OrganizationSettings
+ */
+ type GetOrganizationSettingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.OrganizationSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|getSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type GetSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|groupAssets}.
+ * @param error Error, if any
+ * @param [response] GroupAssetsResponse
+ */
+ type GroupAssetsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|groupFindings}.
+ * @param error Error, if any
+ * @param [response] GroupFindingsResponse
+ */
+ type GroupFindingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|listAssets}.
+ * @param error Error, if any
+ * @param [response] ListAssetsResponse
+ */
+ type ListAssetsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|listFindings}.
+ * @param error Error, if any
+ * @param [response] ListFindingsResponse
+ */
+ type ListFindingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|listNotificationConfigs}.
+ * @param error Error, if any
+ * @param [response] ListNotificationConfigsResponse
+ */
+ type ListNotificationConfigsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|listSources}.
+ * @param error Error, if any
+ * @param [response] ListSourcesResponse
+ */
+ type ListSourcesCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.ListSourcesResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|runAssetDiscovery}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type RunAssetDiscoveryCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|setFindingState}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type SetFindingStateCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|updateFinding}.
+ * @param error Error, if any
+ * @param [response] Finding
+ */
+ type UpdateFindingCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.Finding) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|updateNotificationConfig}.
+ * @param error Error, if any
+ * @param [response] NotificationConfig
+ */
+ type UpdateNotificationConfigCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.NotificationConfig) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|updateOrganizationSettings}.
+ * @param error Error, if any
+ * @param [response] OrganizationSettings
+ */
+ type UpdateOrganizationSettingsCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.OrganizationSettings) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|updateSource}.
+ * @param error Error, if any
+ * @param [response] Source
+ */
+ type UpdateSourceCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.Source) => void;
+
+ /**
+ * Callback as used by {@link google.cloud.securitycenter.v1p1beta1.SecurityCenter|updateSecurityMarks}.
+ * @param error Error, if any
+ * @param [response] SecurityMarks
+ */
+ type UpdateSecurityMarksCallback = (error: (Error|null), response?: google.cloud.securitycenter.v1p1beta1.SecurityMarks) => void;
+ }
+
+ /** Properties of a CreateFindingRequest. */
+ interface ICreateFindingRequest {
+
+ /** CreateFindingRequest parent */
+ parent?: (string|null);
+
+ /** CreateFindingRequest findingId */
+ findingId?: (string|null);
+
+ /** CreateFindingRequest finding */
+ finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+ }
+
+ /** Represents a CreateFindingRequest. */
+ class CreateFindingRequest implements ICreateFindingRequest {
+
+ /**
+ * Constructs a new CreateFindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ICreateFindingRequest);
+
+ /** CreateFindingRequest parent. */
+ public parent: string;
+
+ /** CreateFindingRequest findingId. */
+ public findingId: string;
+
+ /** CreateFindingRequest finding. */
+ public finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+
+ /**
+ * Creates a new CreateFindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateFindingRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ICreateFindingRequest): google.cloud.securitycenter.v1p1beta1.CreateFindingRequest;
+
+ /**
+ * Encodes the specified CreateFindingRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.CreateFindingRequest.verify|verify} messages.
+ * @param message CreateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ICreateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateFindingRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.CreateFindingRequest.verify|verify} messages.
+ * @param message CreateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ICreateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateFindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.CreateFindingRequest;
+
+ /**
+ * Decodes a CreateFindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.CreateFindingRequest;
+
+ /**
+ * Verifies a CreateFindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateFindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateFindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.CreateFindingRequest;
+
+ /**
+ * Creates a plain object from a CreateFindingRequest message. Also converts values to other types if specified.
+ * @param message CreateFindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.CreateFindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateFindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateFindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateNotificationConfigRequest. */
+ interface ICreateNotificationConfigRequest {
+
+ /** CreateNotificationConfigRequest parent */
+ parent?: (string|null);
+
+ /** CreateNotificationConfigRequest configId */
+ configId?: (string|null);
+
+ /** CreateNotificationConfigRequest notificationConfig */
+ notificationConfig?: (google.cloud.securitycenter.v1p1beta1.INotificationConfig|null);
+ }
+
+ /** Represents a CreateNotificationConfigRequest. */
+ class CreateNotificationConfigRequest implements ICreateNotificationConfigRequest {
+
+ /**
+ * Constructs a new CreateNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ICreateNotificationConfigRequest);
+
+ /** CreateNotificationConfigRequest parent. */
+ public parent: string;
+
+ /** CreateNotificationConfigRequest configId. */
+ public configId: string;
+
+ /** CreateNotificationConfigRequest notificationConfig. */
+ public notificationConfig?: (google.cloud.securitycenter.v1p1beta1.INotificationConfig|null);
+
+ /**
+ * Creates a new CreateNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ICreateNotificationConfigRequest): google.cloud.securitycenter.v1p1beta1.CreateNotificationConfigRequest;
+
+ /**
+ * Encodes the specified CreateNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.CreateNotificationConfigRequest.verify|verify} messages.
+ * @param message CreateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ICreateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.CreateNotificationConfigRequest.verify|verify} messages.
+ * @param message CreateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ICreateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.CreateNotificationConfigRequest;
+
+ /**
+ * Decodes a CreateNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.CreateNotificationConfigRequest;
+
+ /**
+ * Verifies a CreateNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.CreateNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from a CreateNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message CreateNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.CreateNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CreateSourceRequest. */
+ interface ICreateSourceRequest {
+
+ /** CreateSourceRequest parent */
+ parent?: (string|null);
+
+ /** CreateSourceRequest source */
+ source?: (google.cloud.securitycenter.v1p1beta1.ISource|null);
+ }
+
+ /** Represents a CreateSourceRequest. */
+ class CreateSourceRequest implements ICreateSourceRequest {
+
+ /**
+ * Constructs a new CreateSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ICreateSourceRequest);
+
+ /** CreateSourceRequest parent. */
+ public parent: string;
+
+ /** CreateSourceRequest source. */
+ public source?: (google.cloud.securitycenter.v1p1beta1.ISource|null);
+
+ /**
+ * Creates a new CreateSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CreateSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ICreateSourceRequest): google.cloud.securitycenter.v1p1beta1.CreateSourceRequest;
+
+ /**
+ * Encodes the specified CreateSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.CreateSourceRequest.verify|verify} messages.
+ * @param message CreateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ICreateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CreateSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.CreateSourceRequest.verify|verify} messages.
+ * @param message CreateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ICreateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CreateSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CreateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.CreateSourceRequest;
+
+ /**
+ * Decodes a CreateSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CreateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.CreateSourceRequest;
+
+ /**
+ * Verifies a CreateSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CreateSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CreateSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.CreateSourceRequest;
+
+ /**
+ * Creates a plain object from a CreateSourceRequest message. Also converts values to other types if specified.
+ * @param message CreateSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.CreateSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CreateSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CreateSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteNotificationConfigRequest. */
+ interface IDeleteNotificationConfigRequest {
+
+ /** DeleteNotificationConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteNotificationConfigRequest. */
+ class DeleteNotificationConfigRequest implements IDeleteNotificationConfigRequest {
+
+ /**
+ * Constructs a new DeleteNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IDeleteNotificationConfigRequest);
+
+ /** DeleteNotificationConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IDeleteNotificationConfigRequest): google.cloud.securitycenter.v1p1beta1.DeleteNotificationConfigRequest;
+
+ /**
+ * Encodes the specified DeleteNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.DeleteNotificationConfigRequest.verify|verify} messages.
+ * @param message DeleteNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IDeleteNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.DeleteNotificationConfigRequest.verify|verify} messages.
+ * @param message DeleteNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IDeleteNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.DeleteNotificationConfigRequest;
+
+ /**
+ * Decodes a DeleteNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.DeleteNotificationConfigRequest;
+
+ /**
+ * Verifies a DeleteNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.DeleteNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from a DeleteNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message DeleteNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.DeleteNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetNotificationConfigRequest. */
+ interface IGetNotificationConfigRequest {
+
+ /** GetNotificationConfigRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetNotificationConfigRequest. */
+ class GetNotificationConfigRequest implements IGetNotificationConfigRequest {
+
+ /**
+ * Constructs a new GetNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGetNotificationConfigRequest);
+
+ /** GetNotificationConfigRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGetNotificationConfigRequest): google.cloud.securitycenter.v1p1beta1.GetNotificationConfigRequest;
+
+ /**
+ * Encodes the specified GetNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GetNotificationConfigRequest.verify|verify} messages.
+ * @param message GetNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGetNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GetNotificationConfigRequest.verify|verify} messages.
+ * @param message GetNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGetNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GetNotificationConfigRequest;
+
+ /**
+ * Decodes a GetNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GetNotificationConfigRequest;
+
+ /**
+ * Verifies a GetNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GetNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from a GetNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message GetNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GetNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOrganizationSettingsRequest. */
+ interface IGetOrganizationSettingsRequest {
+
+ /** GetOrganizationSettingsRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOrganizationSettingsRequest. */
+ class GetOrganizationSettingsRequest implements IGetOrganizationSettingsRequest {
+
+ /**
+ * Constructs a new GetOrganizationSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGetOrganizationSettingsRequest);
+
+ /** GetOrganizationSettingsRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOrganizationSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOrganizationSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGetOrganizationSettingsRequest): google.cloud.securitycenter.v1p1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Encodes the specified GetOrganizationSettingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GetOrganizationSettingsRequest.verify|verify} messages.
+ * @param message GetOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGetOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOrganizationSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GetOrganizationSettingsRequest.verify|verify} messages.
+ * @param message GetOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGetOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOrganizationSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Decodes a GetOrganizationSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Verifies a GetOrganizationSettingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOrganizationSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOrganizationSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GetOrganizationSettingsRequest;
+
+ /**
+ * Creates a plain object from a GetOrganizationSettingsRequest message. Also converts values to other types if specified.
+ * @param message GetOrganizationSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GetOrganizationSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOrganizationSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOrganizationSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetSourceRequest. */
+ interface IGetSourceRequest {
+
+ /** GetSourceRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetSourceRequest. */
+ class GetSourceRequest implements IGetSourceRequest {
+
+ /**
+ * Constructs a new GetSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGetSourceRequest);
+
+ /** GetSourceRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGetSourceRequest): google.cloud.securitycenter.v1p1beta1.GetSourceRequest;
+
+ /**
+ * Encodes the specified GetSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GetSourceRequest.verify|verify} messages.
+ * @param message GetSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGetSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GetSourceRequest.verify|verify} messages.
+ * @param message GetSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGetSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GetSourceRequest;
+
+ /**
+ * Decodes a GetSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GetSourceRequest;
+
+ /**
+ * Verifies a GetSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GetSourceRequest;
+
+ /**
+ * Creates a plain object from a GetSourceRequest message. Also converts values to other types if specified.
+ * @param message GetSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GetSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupAssetsRequest. */
+ interface IGroupAssetsRequest {
+
+ /** GroupAssetsRequest parent */
+ parent?: (string|null);
+
+ /** GroupAssetsRequest filter */
+ filter?: (string|null);
+
+ /** GroupAssetsRequest groupBy */
+ groupBy?: (string|null);
+
+ /** GroupAssetsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupAssetsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** GroupAssetsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a GroupAssetsRequest. */
+ class GroupAssetsRequest implements IGroupAssetsRequest {
+
+ /**
+ * Constructs a new GroupAssetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGroupAssetsRequest);
+
+ /** GroupAssetsRequest parent. */
+ public parent: string;
+
+ /** GroupAssetsRequest filter. */
+ public filter: string;
+
+ /** GroupAssetsRequest groupBy. */
+ public groupBy: string;
+
+ /** GroupAssetsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupAssetsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsRequest pageToken. */
+ public pageToken: string;
+
+ /** GroupAssetsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new GroupAssetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupAssetsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGroupAssetsRequest): google.cloud.securitycenter.v1p1beta1.GroupAssetsRequest;
+
+ /**
+ * Encodes the specified GroupAssetsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupAssetsRequest.verify|verify} messages.
+ * @param message GroupAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGroupAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupAssetsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupAssetsRequest.verify|verify} messages.
+ * @param message GroupAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGroupAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupAssetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GroupAssetsRequest;
+
+ /**
+ * Decodes a GroupAssetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GroupAssetsRequest;
+
+ /**
+ * Verifies a GroupAssetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupAssetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupAssetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GroupAssetsRequest;
+
+ /**
+ * Creates a plain object from a GroupAssetsRequest message. Also converts values to other types if specified.
+ * @param message GroupAssetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GroupAssetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupAssetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupAssetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupAssetsResponse. */
+ interface IGroupAssetsResponse {
+
+ /** GroupAssetsResponse groupByResults */
+ groupByResults?: (google.cloud.securitycenter.v1p1beta1.IGroupResult[]|null);
+
+ /** GroupAssetsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** GroupAssetsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a GroupAssetsResponse. */
+ class GroupAssetsResponse implements IGroupAssetsResponse {
+
+ /**
+ * Constructs a new GroupAssetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGroupAssetsResponse);
+
+ /** GroupAssetsResponse groupByResults. */
+ public groupByResults: google.cloud.securitycenter.v1p1beta1.IGroupResult[];
+
+ /** GroupAssetsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupAssetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** GroupAssetsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new GroupAssetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupAssetsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGroupAssetsResponse): google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse;
+
+ /**
+ * Encodes the specified GroupAssetsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse.verify|verify} messages.
+ * @param message GroupAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGroupAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupAssetsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse.verify|verify} messages.
+ * @param message GroupAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGroupAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupAssetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse;
+
+ /**
+ * Decodes a GroupAssetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse;
+
+ /**
+ * Verifies a GroupAssetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupAssetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupAssetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse;
+
+ /**
+ * Creates a plain object from a GroupAssetsResponse message. Also converts values to other types if specified.
+ * @param message GroupAssetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GroupAssetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupAssetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupAssetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupFindingsRequest. */
+ interface IGroupFindingsRequest {
+
+ /** GroupFindingsRequest parent */
+ parent?: (string|null);
+
+ /** GroupFindingsRequest filter */
+ filter?: (string|null);
+
+ /** GroupFindingsRequest groupBy */
+ groupBy?: (string|null);
+
+ /** GroupFindingsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupFindingsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** GroupFindingsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a GroupFindingsRequest. */
+ class GroupFindingsRequest implements IGroupFindingsRequest {
+
+ /**
+ * Constructs a new GroupFindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGroupFindingsRequest);
+
+ /** GroupFindingsRequest parent. */
+ public parent: string;
+
+ /** GroupFindingsRequest filter. */
+ public filter: string;
+
+ /** GroupFindingsRequest groupBy. */
+ public groupBy: string;
+
+ /** GroupFindingsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** GroupFindingsRequest pageToken. */
+ public pageToken: string;
+
+ /** GroupFindingsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new GroupFindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupFindingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGroupFindingsRequest): google.cloud.securitycenter.v1p1beta1.GroupFindingsRequest;
+
+ /**
+ * Encodes the specified GroupFindingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupFindingsRequest.verify|verify} messages.
+ * @param message GroupFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGroupFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupFindingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupFindingsRequest.verify|verify} messages.
+ * @param message GroupFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGroupFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupFindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GroupFindingsRequest;
+
+ /**
+ * Decodes a GroupFindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GroupFindingsRequest;
+
+ /**
+ * Verifies a GroupFindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupFindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupFindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GroupFindingsRequest;
+
+ /**
+ * Creates a plain object from a GroupFindingsRequest message. Also converts values to other types if specified.
+ * @param message GroupFindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GroupFindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupFindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupFindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupFindingsResponse. */
+ interface IGroupFindingsResponse {
+
+ /** GroupFindingsResponse groupByResults */
+ groupByResults?: (google.cloud.securitycenter.v1p1beta1.IGroupResult[]|null);
+
+ /** GroupFindingsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** GroupFindingsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a GroupFindingsResponse. */
+ class GroupFindingsResponse implements IGroupFindingsResponse {
+
+ /**
+ * Constructs a new GroupFindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGroupFindingsResponse);
+
+ /** GroupFindingsResponse groupByResults. */
+ public groupByResults: google.cloud.securitycenter.v1p1beta1.IGroupResult[];
+
+ /** GroupFindingsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** GroupFindingsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** GroupFindingsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new GroupFindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupFindingsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGroupFindingsResponse): google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse;
+
+ /**
+ * Encodes the specified GroupFindingsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse.verify|verify} messages.
+ * @param message GroupFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGroupFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupFindingsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse.verify|verify} messages.
+ * @param message GroupFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGroupFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupFindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse;
+
+ /**
+ * Decodes a GroupFindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse;
+
+ /**
+ * Verifies a GroupFindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupFindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupFindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse;
+
+ /**
+ * Creates a plain object from a GroupFindingsResponse message. Also converts values to other types if specified.
+ * @param message GroupFindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GroupFindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupFindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupFindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GroupResult. */
+ interface IGroupResult {
+
+ /** GroupResult properties */
+ properties?: ({ [k: string]: google.protobuf.IValue }|null);
+
+ /** GroupResult count */
+ count?: (number|Long|string|null);
+ }
+
+ /** Represents a GroupResult. */
+ class GroupResult implements IGroupResult {
+
+ /**
+ * Constructs a new GroupResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IGroupResult);
+
+ /** GroupResult properties. */
+ public properties: { [k: string]: google.protobuf.IValue };
+
+ /** GroupResult count. */
+ public count: (number|Long|string);
+
+ /**
+ * Creates a new GroupResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GroupResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IGroupResult): google.cloud.securitycenter.v1p1beta1.GroupResult;
+
+ /**
+ * Encodes the specified GroupResult message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupResult.verify|verify} messages.
+ * @param message GroupResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IGroupResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GroupResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.GroupResult.verify|verify} messages.
+ * @param message GroupResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IGroupResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GroupResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GroupResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.GroupResult;
+
+ /**
+ * Decodes a GroupResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GroupResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.GroupResult;
+
+ /**
+ * Verifies a GroupResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GroupResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GroupResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.GroupResult;
+
+ /**
+ * Creates a plain object from a GroupResult message. Also converts values to other types if specified.
+ * @param message GroupResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.GroupResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GroupResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GroupResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotificationConfigsRequest. */
+ interface IListNotificationConfigsRequest {
+
+ /** ListNotificationConfigsRequest parent */
+ parent?: (string|null);
+
+ /** ListNotificationConfigsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListNotificationConfigsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListNotificationConfigsRequest. */
+ class ListNotificationConfigsRequest implements IListNotificationConfigsRequest {
+
+ /**
+ * Constructs a new ListNotificationConfigsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsRequest);
+
+ /** ListNotificationConfigsRequest parent. */
+ public parent: string;
+
+ /** ListNotificationConfigsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListNotificationConfigsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListNotificationConfigsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotificationConfigsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsRequest): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsRequest;
+
+ /**
+ * Encodes the specified ListNotificationConfigsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsRequest.verify|verify} messages.
+ * @param message ListNotificationConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotificationConfigsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsRequest.verify|verify} messages.
+ * @param message ListNotificationConfigsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotificationConfigsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotificationConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsRequest;
+
+ /**
+ * Decodes a ListNotificationConfigsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotificationConfigsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsRequest;
+
+ /**
+ * Verifies a ListNotificationConfigsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListNotificationConfigsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotificationConfigsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsRequest;
+
+ /**
+ * Creates a plain object from a ListNotificationConfigsRequest message. Also converts values to other types if specified.
+ * @param message ListNotificationConfigsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotificationConfigsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotificationConfigsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListNotificationConfigsResponse. */
+ interface IListNotificationConfigsResponse {
+
+ /** ListNotificationConfigsResponse notificationConfigs */
+ notificationConfigs?: (google.cloud.securitycenter.v1p1beta1.INotificationConfig[]|null);
+
+ /** ListNotificationConfigsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListNotificationConfigsResponse. */
+ class ListNotificationConfigsResponse implements IListNotificationConfigsResponse {
+
+ /**
+ * Constructs a new ListNotificationConfigsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsResponse);
+
+ /** ListNotificationConfigsResponse notificationConfigs. */
+ public notificationConfigs: google.cloud.securitycenter.v1p1beta1.INotificationConfig[];
+
+ /** ListNotificationConfigsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListNotificationConfigsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListNotificationConfigsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsResponse): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse;
+
+ /**
+ * Encodes the specified ListNotificationConfigsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse.verify|verify} messages.
+ * @param message ListNotificationConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListNotificationConfigsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse.verify|verify} messages.
+ * @param message ListNotificationConfigsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListNotificationConfigsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListNotificationConfigsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListNotificationConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse;
+
+ /**
+ * Decodes a ListNotificationConfigsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListNotificationConfigsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse;
+
+ /**
+ * Verifies a ListNotificationConfigsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListNotificationConfigsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListNotificationConfigsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse;
+
+ /**
+ * Creates a plain object from a ListNotificationConfigsResponse message. Also converts values to other types if specified.
+ * @param message ListNotificationConfigsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListNotificationConfigsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListNotificationConfigsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListNotificationConfigsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListSourcesRequest. */
+ interface IListSourcesRequest {
+
+ /** ListSourcesRequest parent */
+ parent?: (string|null);
+
+ /** ListSourcesRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListSourcesRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListSourcesRequest. */
+ class ListSourcesRequest implements IListSourcesRequest {
+
+ /**
+ * Constructs a new ListSourcesRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListSourcesRequest);
+
+ /** ListSourcesRequest parent. */
+ public parent: string;
+
+ /** ListSourcesRequest pageToken. */
+ public pageToken: string;
+
+ /** ListSourcesRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListSourcesRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListSourcesRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListSourcesRequest): google.cloud.securitycenter.v1p1beta1.ListSourcesRequest;
+
+ /**
+ * Encodes the specified ListSourcesRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListSourcesRequest.verify|verify} messages.
+ * @param message ListSourcesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListSourcesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListSourcesRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListSourcesRequest.verify|verify} messages.
+ * @param message ListSourcesRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListSourcesRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListSourcesRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListSourcesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListSourcesRequest;
+
+ /**
+ * Decodes a ListSourcesRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListSourcesRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListSourcesRequest;
+
+ /**
+ * Verifies a ListSourcesRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListSourcesRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListSourcesRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListSourcesRequest;
+
+ /**
+ * Creates a plain object from a ListSourcesRequest message. Also converts values to other types if specified.
+ * @param message ListSourcesRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListSourcesRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListSourcesRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListSourcesRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListSourcesResponse. */
+ interface IListSourcesResponse {
+
+ /** ListSourcesResponse sources */
+ sources?: (google.cloud.securitycenter.v1p1beta1.ISource[]|null);
+
+ /** ListSourcesResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListSourcesResponse. */
+ class ListSourcesResponse implements IListSourcesResponse {
+
+ /**
+ * Constructs a new ListSourcesResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListSourcesResponse);
+
+ /** ListSourcesResponse sources. */
+ public sources: google.cloud.securitycenter.v1p1beta1.ISource[];
+
+ /** ListSourcesResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListSourcesResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListSourcesResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListSourcesResponse): google.cloud.securitycenter.v1p1beta1.ListSourcesResponse;
+
+ /**
+ * Encodes the specified ListSourcesResponse message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListSourcesResponse.verify|verify} messages.
+ * @param message ListSourcesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListSourcesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListSourcesResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListSourcesResponse.verify|verify} messages.
+ * @param message ListSourcesResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListSourcesResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListSourcesResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListSourcesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListSourcesResponse;
+
+ /**
+ * Decodes a ListSourcesResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListSourcesResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListSourcesResponse;
+
+ /**
+ * Verifies a ListSourcesResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListSourcesResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListSourcesResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListSourcesResponse;
+
+ /**
+ * Creates a plain object from a ListSourcesResponse message. Also converts values to other types if specified.
+ * @param message ListSourcesResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListSourcesResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListSourcesResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListSourcesResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAssetsRequest. */
+ interface IListAssetsRequest {
+
+ /** ListAssetsRequest parent */
+ parent?: (string|null);
+
+ /** ListAssetsRequest filter */
+ filter?: (string|null);
+
+ /** ListAssetsRequest orderBy */
+ orderBy?: (string|null);
+
+ /** ListAssetsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListAssetsRequest fieldMask */
+ fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListAssetsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListAssetsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListAssetsRequest. */
+ class ListAssetsRequest implements IListAssetsRequest {
+
+ /**
+ * Constructs a new ListAssetsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListAssetsRequest);
+
+ /** ListAssetsRequest parent. */
+ public parent: string;
+
+ /** ListAssetsRequest filter. */
+ public filter: string;
+
+ /** ListAssetsRequest orderBy. */
+ public orderBy: string;
+
+ /** ListAssetsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListAssetsRequest fieldMask. */
+ public fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListAssetsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListAssetsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListAssetsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListAssetsRequest): google.cloud.securitycenter.v1p1beta1.ListAssetsRequest;
+
+ /**
+ * Encodes the specified ListAssetsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListAssetsRequest.verify|verify} messages.
+ * @param message ListAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListAssetsRequest.verify|verify} messages.
+ * @param message ListAssetsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListAssetsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListAssetsRequest;
+
+ /**
+ * Decodes a ListAssetsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListAssetsRequest;
+
+ /**
+ * Verifies a ListAssetsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListAssetsRequest;
+
+ /**
+ * Creates a plain object from a ListAssetsRequest message. Also converts values to other types if specified.
+ * @param message ListAssetsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListAssetsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListAssetsResponse. */
+ interface IListAssetsResponse {
+
+ /** ListAssetsResponse listAssetsResults */
+ listAssetsResults?: (google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.IListAssetsResult[]|null);
+
+ /** ListAssetsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListAssetsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a ListAssetsResponse. */
+ class ListAssetsResponse implements IListAssetsResponse {
+
+ /**
+ * Constructs a new ListAssetsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListAssetsResponse);
+
+ /** ListAssetsResponse listAssetsResults. */
+ public listAssetsResults: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.IListAssetsResult[];
+
+ /** ListAssetsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListAssetsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListAssetsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new ListAssetsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListAssetsResponse): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse;
+
+ /**
+ * Encodes the specified ListAssetsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.verify|verify} messages.
+ * @param message ListAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.verify|verify} messages.
+ * @param message ListAssetsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListAssetsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse;
+
+ /**
+ * Decodes a ListAssetsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse;
+
+ /**
+ * Verifies a ListAssetsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse;
+
+ /**
+ * Creates a plain object from a ListAssetsResponse message. Also converts values to other types if specified.
+ * @param message ListAssetsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListAssetsResponse {
+
+ /** Properties of a ListAssetsResult. */
+ interface IListAssetsResult {
+
+ /** ListAssetsResult asset */
+ asset?: (google.cloud.securitycenter.v1p1beta1.IAsset|null);
+
+ /** ListAssetsResult stateChange */
+ stateChange?: (google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult.StateChange|keyof typeof google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult.StateChange|null);
+ }
+
+ /** Represents a ListAssetsResult. */
+ class ListAssetsResult implements IListAssetsResult {
+
+ /**
+ * Constructs a new ListAssetsResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.IListAssetsResult);
+
+ /** ListAssetsResult asset. */
+ public asset?: (google.cloud.securitycenter.v1p1beta1.IAsset|null);
+
+ /** ListAssetsResult stateChange. */
+ public stateChange: (google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult.StateChange|keyof typeof google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult.StateChange);
+
+ /**
+ * Creates a new ListAssetsResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListAssetsResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.IListAssetsResult): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Encodes the specified ListAssetsResult message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult.verify|verify} messages.
+ * @param message ListAssetsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.IListAssetsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListAssetsResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult.verify|verify} messages.
+ * @param message ListAssetsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.IListAssetsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListAssetsResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListAssetsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Decodes a ListAssetsResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListAssetsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Verifies a ListAssetsResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListAssetsResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListAssetsResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult;
+
+ /**
+ * Creates a plain object from a ListAssetsResult message. Also converts values to other types if specified.
+ * @param message ListAssetsResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListAssetsResponse.ListAssetsResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListAssetsResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListAssetsResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListAssetsResult {
+
+ /** StateChange enum. */
+ enum StateChange {
+ UNUSED = 0,
+ ADDED = 1,
+ REMOVED = 2,
+ ACTIVE = 3
+ }
+ }
+ }
+
+ /** Properties of a ListFindingsRequest. */
+ interface IListFindingsRequest {
+
+ /** ListFindingsRequest parent */
+ parent?: (string|null);
+
+ /** ListFindingsRequest filter */
+ filter?: (string|null);
+
+ /** ListFindingsRequest orderBy */
+ orderBy?: (string|null);
+
+ /** ListFindingsRequest readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsRequest compareDuration */
+ compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListFindingsRequest fieldMask */
+ fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListFindingsRequest pageToken */
+ pageToken?: (string|null);
+
+ /** ListFindingsRequest pageSize */
+ pageSize?: (number|null);
+ }
+
+ /** Represents a ListFindingsRequest. */
+ class ListFindingsRequest implements IListFindingsRequest {
+
+ /**
+ * Constructs a new ListFindingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListFindingsRequest);
+
+ /** ListFindingsRequest parent. */
+ public parent: string;
+
+ /** ListFindingsRequest filter. */
+ public filter: string;
+
+ /** ListFindingsRequest orderBy. */
+ public orderBy: string;
+
+ /** ListFindingsRequest readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsRequest compareDuration. */
+ public compareDuration?: (google.protobuf.IDuration|null);
+
+ /** ListFindingsRequest fieldMask. */
+ public fieldMask?: (google.protobuf.IFieldMask|null);
+
+ /** ListFindingsRequest pageToken. */
+ public pageToken: string;
+
+ /** ListFindingsRequest pageSize. */
+ public pageSize: number;
+
+ /**
+ * Creates a new ListFindingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListFindingsRequest): google.cloud.securitycenter.v1p1beta1.ListFindingsRequest;
+
+ /**
+ * Encodes the specified ListFindingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsRequest.verify|verify} messages.
+ * @param message ListFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsRequest.verify|verify} messages.
+ * @param message ListFindingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListFindingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListFindingsRequest;
+
+ /**
+ * Decodes a ListFindingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListFindingsRequest;
+
+ /**
+ * Verifies a ListFindingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListFindingsRequest;
+
+ /**
+ * Creates a plain object from a ListFindingsRequest message. Also converts values to other types if specified.
+ * @param message ListFindingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListFindingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListFindingsResponse. */
+ interface IListFindingsResponse {
+
+ /** ListFindingsResponse listFindingsResults */
+ listFindingsResults?: (google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.IListFindingsResult[]|null);
+
+ /** ListFindingsResponse readTime */
+ readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsResponse nextPageToken */
+ nextPageToken?: (string|null);
+
+ /** ListFindingsResponse totalSize */
+ totalSize?: (number|null);
+ }
+
+ /** Represents a ListFindingsResponse. */
+ class ListFindingsResponse implements IListFindingsResponse {
+
+ /**
+ * Constructs a new ListFindingsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IListFindingsResponse);
+
+ /** ListFindingsResponse listFindingsResults. */
+ public listFindingsResults: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.IListFindingsResult[];
+
+ /** ListFindingsResponse readTime. */
+ public readTime?: (google.protobuf.ITimestamp|null);
+
+ /** ListFindingsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /** ListFindingsResponse totalSize. */
+ public totalSize: number;
+
+ /**
+ * Creates a new ListFindingsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsResponse instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IListFindingsResponse): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse;
+
+ /**
+ * Encodes the specified ListFindingsResponse message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.verify|verify} messages.
+ * @param message ListFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IListFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsResponse message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.verify|verify} messages.
+ * @param message ListFindingsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IListFindingsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse;
+
+ /**
+ * Decodes a ListFindingsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse;
+
+ /**
+ * Verifies a ListFindingsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse;
+
+ /**
+ * Creates a plain object from a ListFindingsResponse message. Also converts values to other types if specified.
+ * @param message ListFindingsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListFindingsResponse {
+
+ /** Properties of a ListFindingsResult. */
+ interface IListFindingsResult {
+
+ /** ListFindingsResult finding */
+ finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+
+ /** ListFindingsResult stateChange */
+ stateChange?: (google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.StateChange|keyof typeof google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.StateChange|null);
+
+ /** ListFindingsResult resource */
+ resource?: (google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.IResource|null);
+ }
+
+ /** Represents a ListFindingsResult. */
+ class ListFindingsResult implements IListFindingsResult {
+
+ /**
+ * Constructs a new ListFindingsResult.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.IListFindingsResult);
+
+ /** ListFindingsResult finding. */
+ public finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+
+ /** ListFindingsResult stateChange. */
+ public stateChange: (google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.StateChange|keyof typeof google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.StateChange);
+
+ /** ListFindingsResult resource. */
+ public resource?: (google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.IResource|null);
+
+ /**
+ * Creates a new ListFindingsResult instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListFindingsResult instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.IListFindingsResult): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Encodes the specified ListFindingsResult message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.verify|verify} messages.
+ * @param message ListFindingsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.IListFindingsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListFindingsResult message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.verify|verify} messages.
+ * @param message ListFindingsResult message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.IListFindingsResult, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListFindingsResult message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListFindingsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Decodes a ListFindingsResult message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListFindingsResult
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Verifies a ListFindingsResult message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListFindingsResult message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListFindingsResult
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult;
+
+ /**
+ * Creates a plain object from a ListFindingsResult message. Also converts values to other types if specified.
+ * @param message ListFindingsResult
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListFindingsResult to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListFindingsResult
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ListFindingsResult {
+
+ /** Properties of a Resource. */
+ interface IResource {
+
+ /** Resource name */
+ name?: (string|null);
+
+ /** Resource projectName */
+ projectName?: (string|null);
+
+ /** Resource projectDisplayName */
+ projectDisplayName?: (string|null);
+
+ /** Resource parentName */
+ parentName?: (string|null);
+
+ /** Resource parentDisplayName */
+ parentDisplayName?: (string|null);
+
+ /** Resource folders */
+ folders?: (google.cloud.securitycenter.v1p1beta1.IFolder[]|null);
+ }
+
+ /** Represents a Resource. */
+ class Resource implements IResource {
+
+ /**
+ * Constructs a new Resource.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.IResource);
+
+ /** Resource name. */
+ public name: string;
+
+ /** Resource projectName. */
+ public projectName: string;
+
+ /** Resource projectDisplayName. */
+ public projectDisplayName: string;
+
+ /** Resource parentName. */
+ public parentName: string;
+
+ /** Resource parentDisplayName. */
+ public parentDisplayName: string;
+
+ /** Resource folders. */
+ public folders: google.cloud.securitycenter.v1p1beta1.IFolder[];
+
+ /**
+ * Creates a new Resource instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Resource instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.IResource): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Encodes the specified Resource message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Resource message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.Resource.verify|verify} messages.
+ * @param message Resource message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.IResource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Decodes a Resource message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Resource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Verifies a Resource message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Resource message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Resource
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.Resource;
+
+ /**
+ * Creates a plain object from a Resource message. Also converts values to other types if specified.
+ * @param message Resource
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.ListFindingsResponse.ListFindingsResult.Resource, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Resource to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Resource
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** StateChange enum. */
+ enum StateChange {
+ UNUSED = 0,
+ CHANGED = 1,
+ UNCHANGED = 2,
+ ADDED = 3,
+ REMOVED = 4
+ }
+ }
+ }
+
+ /** Properties of a SetFindingStateRequest. */
+ interface ISetFindingStateRequest {
+
+ /** SetFindingStateRequest name */
+ name?: (string|null);
+
+ /** SetFindingStateRequest state */
+ state?: (google.cloud.securitycenter.v1p1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1p1beta1.Finding.State|null);
+
+ /** SetFindingStateRequest startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents a SetFindingStateRequest. */
+ class SetFindingStateRequest implements ISetFindingStateRequest {
+
+ /**
+ * Constructs a new SetFindingStateRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ISetFindingStateRequest);
+
+ /** SetFindingStateRequest name. */
+ public name: string;
+
+ /** SetFindingStateRequest state. */
+ public state: (google.cloud.securitycenter.v1p1beta1.Finding.State|keyof typeof google.cloud.securitycenter.v1p1beta1.Finding.State);
+
+ /** SetFindingStateRequest startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new SetFindingStateRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetFindingStateRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ISetFindingStateRequest): google.cloud.securitycenter.v1p1beta1.SetFindingStateRequest;
+
+ /**
+ * Encodes the specified SetFindingStateRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.SetFindingStateRequest.verify|verify} messages.
+ * @param message SetFindingStateRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ISetFindingStateRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetFindingStateRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.SetFindingStateRequest.verify|verify} messages.
+ * @param message SetFindingStateRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ISetFindingStateRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetFindingStateRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetFindingStateRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.SetFindingStateRequest;
+
+ /**
+ * Decodes a SetFindingStateRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetFindingStateRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.SetFindingStateRequest;
+
+ /**
+ * Verifies a SetFindingStateRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetFindingStateRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetFindingStateRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.SetFindingStateRequest;
+
+ /**
+ * Creates a plain object from a SetFindingStateRequest message. Also converts values to other types if specified.
+ * @param message SetFindingStateRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.SetFindingStateRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetFindingStateRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetFindingStateRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a RunAssetDiscoveryRequest. */
+ interface IRunAssetDiscoveryRequest {
+
+ /** RunAssetDiscoveryRequest parent */
+ parent?: (string|null);
+ }
+
+ /** Represents a RunAssetDiscoveryRequest. */
+ class RunAssetDiscoveryRequest implements IRunAssetDiscoveryRequest {
+
+ /**
+ * Constructs a new RunAssetDiscoveryRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryRequest);
+
+ /** RunAssetDiscoveryRequest parent. */
+ public parent: string;
+
+ /**
+ * Creates a new RunAssetDiscoveryRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns RunAssetDiscoveryRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryRequest): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryRequest.verify|verify} messages.
+ * @param message RunAssetDiscoveryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified RunAssetDiscoveryRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryRequest.verify|verify} messages.
+ * @param message RunAssetDiscoveryRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IRunAssetDiscoveryRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a RunAssetDiscoveryRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns RunAssetDiscoveryRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Decodes a RunAssetDiscoveryRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns RunAssetDiscoveryRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Verifies a RunAssetDiscoveryRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a RunAssetDiscoveryRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns RunAssetDiscoveryRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryRequest;
+
+ /**
+ * Creates a plain object from a RunAssetDiscoveryRequest message. Also converts values to other types if specified.
+ * @param message RunAssetDiscoveryRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.RunAssetDiscoveryRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this RunAssetDiscoveryRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for RunAssetDiscoveryRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateFindingRequest. */
+ interface IUpdateFindingRequest {
+
+ /** UpdateFindingRequest finding */
+ finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+
+ /** UpdateFindingRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateFindingRequest. */
+ class UpdateFindingRequest implements IUpdateFindingRequest {
+
+ /**
+ * Constructs a new UpdateFindingRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateFindingRequest);
+
+ /** UpdateFindingRequest finding. */
+ public finding?: (google.cloud.securitycenter.v1p1beta1.IFinding|null);
+
+ /** UpdateFindingRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateFindingRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateFindingRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateFindingRequest): google.cloud.securitycenter.v1p1beta1.UpdateFindingRequest;
+
+ /**
+ * Encodes the specified UpdateFindingRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateFindingRequest.verify|verify} messages.
+ * @param message UpdateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IUpdateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateFindingRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateFindingRequest.verify|verify} messages.
+ * @param message UpdateFindingRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IUpdateFindingRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateFindingRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.UpdateFindingRequest;
+
+ /**
+ * Decodes an UpdateFindingRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateFindingRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.UpdateFindingRequest;
+
+ /**
+ * Verifies an UpdateFindingRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateFindingRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateFindingRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.UpdateFindingRequest;
+
+ /**
+ * Creates a plain object from an UpdateFindingRequest message. Also converts values to other types if specified.
+ * @param message UpdateFindingRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.UpdateFindingRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateFindingRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateFindingRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateNotificationConfigRequest. */
+ interface IUpdateNotificationConfigRequest {
+
+ /** UpdateNotificationConfigRequest notificationConfig */
+ notificationConfig?: (google.cloud.securitycenter.v1p1beta1.INotificationConfig|null);
+
+ /** UpdateNotificationConfigRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateNotificationConfigRequest. */
+ class UpdateNotificationConfigRequest implements IUpdateNotificationConfigRequest {
+
+ /**
+ * Constructs a new UpdateNotificationConfigRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateNotificationConfigRequest);
+
+ /** UpdateNotificationConfigRequest notificationConfig. */
+ public notificationConfig?: (google.cloud.securitycenter.v1p1beta1.INotificationConfig|null);
+
+ /** UpdateNotificationConfigRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateNotificationConfigRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateNotificationConfigRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateNotificationConfigRequest): google.cloud.securitycenter.v1p1beta1.UpdateNotificationConfigRequest;
+
+ /**
+ * Encodes the specified UpdateNotificationConfigRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateNotificationConfigRequest.verify|verify} messages.
+ * @param message UpdateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IUpdateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateNotificationConfigRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateNotificationConfigRequest.verify|verify} messages.
+ * @param message UpdateNotificationConfigRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IUpdateNotificationConfigRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateNotificationConfigRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.UpdateNotificationConfigRequest;
+
+ /**
+ * Decodes an UpdateNotificationConfigRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateNotificationConfigRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.UpdateNotificationConfigRequest;
+
+ /**
+ * Verifies an UpdateNotificationConfigRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateNotificationConfigRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateNotificationConfigRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.UpdateNotificationConfigRequest;
+
+ /**
+ * Creates a plain object from an UpdateNotificationConfigRequest message. Also converts values to other types if specified.
+ * @param message UpdateNotificationConfigRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.UpdateNotificationConfigRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateNotificationConfigRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateNotificationConfigRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateOrganizationSettingsRequest. */
+ interface IUpdateOrganizationSettingsRequest {
+
+ /** UpdateOrganizationSettingsRequest organizationSettings */
+ organizationSettings?: (google.cloud.securitycenter.v1p1beta1.IOrganizationSettings|null);
+
+ /** UpdateOrganizationSettingsRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateOrganizationSettingsRequest. */
+ class UpdateOrganizationSettingsRequest implements IUpdateOrganizationSettingsRequest {
+
+ /**
+ * Constructs a new UpdateOrganizationSettingsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateOrganizationSettingsRequest);
+
+ /** UpdateOrganizationSettingsRequest organizationSettings. */
+ public organizationSettings?: (google.cloud.securitycenter.v1p1beta1.IOrganizationSettings|null);
+
+ /** UpdateOrganizationSettingsRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateOrganizationSettingsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateOrganizationSettingsRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateOrganizationSettingsRequest): google.cloud.securitycenter.v1p1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Encodes the specified UpdateOrganizationSettingsRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateOrganizationSettingsRequest.verify|verify} messages.
+ * @param message UpdateOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IUpdateOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateOrganizationSettingsRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateOrganizationSettingsRequest.verify|verify} messages.
+ * @param message UpdateOrganizationSettingsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IUpdateOrganizationSettingsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateOrganizationSettingsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Decodes an UpdateOrganizationSettingsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateOrganizationSettingsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Verifies an UpdateOrganizationSettingsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateOrganizationSettingsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateOrganizationSettingsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.UpdateOrganizationSettingsRequest;
+
+ /**
+ * Creates a plain object from an UpdateOrganizationSettingsRequest message. Also converts values to other types if specified.
+ * @param message UpdateOrganizationSettingsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.UpdateOrganizationSettingsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateOrganizationSettingsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateOrganizationSettingsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateSourceRequest. */
+ interface IUpdateSourceRequest {
+
+ /** UpdateSourceRequest source */
+ source?: (google.cloud.securitycenter.v1p1beta1.ISource|null);
+
+ /** UpdateSourceRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents an UpdateSourceRequest. */
+ class UpdateSourceRequest implements IUpdateSourceRequest {
+
+ /**
+ * Constructs a new UpdateSourceRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateSourceRequest);
+
+ /** UpdateSourceRequest source. */
+ public source?: (google.cloud.securitycenter.v1p1beta1.ISource|null);
+
+ /** UpdateSourceRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new UpdateSourceRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateSourceRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateSourceRequest): google.cloud.securitycenter.v1p1beta1.UpdateSourceRequest;
+
+ /**
+ * Encodes the specified UpdateSourceRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateSourceRequest.verify|verify} messages.
+ * @param message UpdateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IUpdateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateSourceRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateSourceRequest.verify|verify} messages.
+ * @param message UpdateSourceRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IUpdateSourceRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateSourceRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.UpdateSourceRequest;
+
+ /**
+ * Decodes an UpdateSourceRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateSourceRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.UpdateSourceRequest;
+
+ /**
+ * Verifies an UpdateSourceRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateSourceRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateSourceRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.UpdateSourceRequest;
+
+ /**
+ * Creates a plain object from an UpdateSourceRequest message. Also converts values to other types if specified.
+ * @param message UpdateSourceRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.UpdateSourceRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateSourceRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateSourceRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an UpdateSecurityMarksRequest. */
+ interface IUpdateSecurityMarksRequest {
+
+ /** UpdateSecurityMarksRequest securityMarks */
+ securityMarks?: (google.cloud.securitycenter.v1p1beta1.ISecurityMarks|null);
+
+ /** UpdateSecurityMarksRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateSecurityMarksRequest startTime */
+ startTime?: (google.protobuf.ITimestamp|null);
+ }
+
+ /** Represents an UpdateSecurityMarksRequest. */
+ class UpdateSecurityMarksRequest implements IUpdateSecurityMarksRequest {
+
+ /**
+ * Constructs a new UpdateSecurityMarksRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateSecurityMarksRequest);
+
+ /** UpdateSecurityMarksRequest securityMarks. */
+ public securityMarks?: (google.cloud.securitycenter.v1p1beta1.ISecurityMarks|null);
+
+ /** UpdateSecurityMarksRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /** UpdateSecurityMarksRequest startTime. */
+ public startTime?: (google.protobuf.ITimestamp|null);
+
+ /**
+ * Creates a new UpdateSecurityMarksRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UpdateSecurityMarksRequest instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.IUpdateSecurityMarksRequest): google.cloud.securitycenter.v1p1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Encodes the specified UpdateSecurityMarksRequest message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateSecurityMarksRequest.verify|verify} messages.
+ * @param message UpdateSecurityMarksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.IUpdateSecurityMarksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UpdateSecurityMarksRequest message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.UpdateSecurityMarksRequest.verify|verify} messages.
+ * @param message UpdateSecurityMarksRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.IUpdateSecurityMarksRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UpdateSecurityMarksRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UpdateSecurityMarksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Decodes an UpdateSecurityMarksRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UpdateSecurityMarksRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Verifies an UpdateSecurityMarksRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UpdateSecurityMarksRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UpdateSecurityMarksRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.UpdateSecurityMarksRequest;
+
+ /**
+ * Creates a plain object from an UpdateSecurityMarksRequest message. Also converts values to other types if specified.
+ * @param message UpdateSecurityMarksRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.UpdateSecurityMarksRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UpdateSecurityMarksRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UpdateSecurityMarksRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Source. */
+ interface ISource {
+
+ /** Source name */
+ name?: (string|null);
+
+ /** Source displayName */
+ displayName?: (string|null);
+
+ /** Source description */
+ description?: (string|null);
+
+ /** Source canonicalName */
+ canonicalName?: (string|null);
+ }
+
+ /** Represents a Source. */
+ class Source implements ISource {
+
+ /**
+ * Constructs a new Source.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.cloud.securitycenter.v1p1beta1.ISource);
+
+ /** Source name. */
+ public name: string;
+
+ /** Source displayName. */
+ public displayName: string;
+
+ /** Source description. */
+ public description: string;
+
+ /** Source canonicalName. */
+ public canonicalName: string;
+
+ /**
+ * Creates a new Source instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Source instance
+ */
+ public static create(properties?: google.cloud.securitycenter.v1p1beta1.ISource): google.cloud.securitycenter.v1p1beta1.Source;
+
+ /**
+ * Encodes the specified Source message. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Source.verify|verify} messages.
+ * @param message Source message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.cloud.securitycenter.v1p1beta1.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Source message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1p1beta1.Source.verify|verify} messages.
+ * @param message Source message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.cloud.securitycenter.v1p1beta1.ISource, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Source message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.cloud.securitycenter.v1p1beta1.Source;
+
+ /**
+ * Decodes a Source message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Source
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.cloud.securitycenter.v1p1beta1.Source;
+
+ /**
+ * Verifies a Source message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Source message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Source
+ */
+ public static fromObject(object: { [k: string]: any }): google.cloud.securitycenter.v1p1beta1.Source;
+
+ /**
+ * Creates a plain object from a Source message. Also converts values to other types if specified.
+ * @param message Source
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.cloud.securitycenter.v1p1beta1.Source, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Source to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Source
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+ }
+ }
+
+ /** Namespace api. */
+ namespace api {
+
+ /** Properties of a ResourceDescriptor. */
+ interface IResourceDescriptor {
+
+ /** ResourceDescriptor type */
+ type?: (string|null);
+
+ /** ResourceDescriptor pattern */
+ pattern?: (string[]|null);
+
+ /** ResourceDescriptor nameField */
+ nameField?: (string|null);
+
+ /** ResourceDescriptor history */
+ history?: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History|null);
+
+ /** ResourceDescriptor plural */
+ plural?: (string|null);
+
+ /** ResourceDescriptor singular */
+ singular?: (string|null);
+
+ /** ResourceDescriptor style */
+ style?: (google.api.ResourceDescriptor.Style[]|null);
+ }
+
+ /** Represents a ResourceDescriptor. */
+ class ResourceDescriptor implements IResourceDescriptor {
+
+ /**
+ * Constructs a new ResourceDescriptor.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IResourceDescriptor);
+
+ /** ResourceDescriptor type. */
+ public type: string;
+
+ /** ResourceDescriptor pattern. */
+ public pattern: string[];
+
+ /** ResourceDescriptor nameField. */
+ public nameField: string;
+
+ /** ResourceDescriptor history. */
+ public history: (google.api.ResourceDescriptor.History|keyof typeof google.api.ResourceDescriptor.History);
+
+ /** ResourceDescriptor plural. */
+ public plural: string;
+
+ /** ResourceDescriptor singular. */
+ public singular: string;
+
+ /** ResourceDescriptor style. */
+ public style: google.api.ResourceDescriptor.Style[];
+
+ /**
+ * Creates a new ResourceDescriptor instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceDescriptor instance
+ */
+ public static create(properties?: google.api.IResourceDescriptor): google.api.ResourceDescriptor;
+
+ /**
+ * Encodes the specified ResourceDescriptor message. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceDescriptor message, length delimited. Does not implicitly {@link google.api.ResourceDescriptor.verify|verify} messages.
+ * @param message ResourceDescriptor message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IResourceDescriptor, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceDescriptor;
+
+ /**
+ * Decodes a ResourceDescriptor message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceDescriptor
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceDescriptor;
+
+ /**
+ * Verifies a ResourceDescriptor message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceDescriptor message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceDescriptor
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.ResourceDescriptor;
+
+ /**
+ * Creates a plain object from a ResourceDescriptor message. Also converts values to other types if specified.
+ * @param message ResourceDescriptor
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.ResourceDescriptor, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceDescriptor to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceDescriptor
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace ResourceDescriptor {
+
+ /** History enum. */
+ enum History {
+ HISTORY_UNSPECIFIED = 0,
+ ORIGINALLY_SINGLE_PATTERN = 1,
+ FUTURE_MULTI_PATTERN = 2
+ }
+
+ /** Style enum. */
+ enum Style {
+ STYLE_UNSPECIFIED = 0,
+ DECLARATIVE_FRIENDLY = 1
+ }
+ }
+
+ /** Properties of a ResourceReference. */
+ interface IResourceReference {
+
+ /** ResourceReference type */
+ type?: (string|null);
+
+ /** ResourceReference childType */
+ childType?: (string|null);
+ }
+
+ /** Represents a ResourceReference. */
+ class ResourceReference implements IResourceReference {
+
+ /**
+ * Constructs a new ResourceReference.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IResourceReference);
+
+ /** ResourceReference type. */
+ public type: string;
+
+ /** ResourceReference childType. */
+ public childType: string;
+
+ /**
+ * Creates a new ResourceReference instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ResourceReference instance
+ */
+ public static create(properties?: google.api.IResourceReference): google.api.ResourceReference;
+
+ /**
+ * Encodes the specified ResourceReference message. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages.
+ * @param message ResourceReference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ResourceReference message, length delimited. Does not implicitly {@link google.api.ResourceReference.verify|verify} messages.
+ * @param message ResourceReference message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IResourceReference, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ResourceReference message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ResourceReference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.ResourceReference;
+
+ /**
+ * Decodes a ResourceReference message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ResourceReference
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.ResourceReference;
+
+ /**
+ * Verifies a ResourceReference message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ResourceReference message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ResourceReference
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.ResourceReference;
+
+ /**
+ * Creates a plain object from a ResourceReference message. Also converts values to other types if specified.
+ * @param message ResourceReference
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.ResourceReference, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ResourceReference to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ResourceReference
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** FieldBehavior enum. */
+ enum FieldBehavior {
+ FIELD_BEHAVIOR_UNSPECIFIED = 0,
+ OPTIONAL = 1,
+ REQUIRED = 2,
+ OUTPUT_ONLY = 3,
+ INPUT_ONLY = 4,
+ IMMUTABLE = 5,
+ UNORDERED_LIST = 6,
+ NON_EMPTY_DEFAULT = 7
+ }
+
+ /** Properties of a Http. */
+ interface IHttp {
+
+ /** Http rules */
+ rules?: (google.api.IHttpRule[]|null);
+
+ /** Http fullyDecodeReservedExpansion */
+ fullyDecodeReservedExpansion?: (boolean|null);
+ }
+
+ /** Represents a Http. */
+ class Http implements IHttp {
+
+ /**
+ * Constructs a new Http.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttp);
+
+ /** Http rules. */
+ public rules: google.api.IHttpRule[];
+
+ /** Http fullyDecodeReservedExpansion. */
+ public fullyDecodeReservedExpansion: boolean;
+
+ /**
+ * Creates a new Http instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Http instance
+ */
+ public static create(properties?: google.api.IHttp): google.api.Http;
+
+ /**
+ * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages.
+ * @param message Http message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.Http;
+
+ /**
+ * Decodes a Http message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Http
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.Http;
+
+ /**
+ * Verifies a Http message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Http message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Http
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.Http;
+
+ /**
+ * Creates a plain object from a Http message. Also converts values to other types if specified.
+ * @param message Http
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.Http, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Http to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Http
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a HttpRule. */
+ interface IHttpRule {
+
+ /** HttpRule selector */
+ selector?: (string|null);
+
+ /** HttpRule get */
+ get?: (string|null);
+
+ /** HttpRule put */
+ put?: (string|null);
+
+ /** HttpRule post */
+ post?: (string|null);
+
+ /** HttpRule delete */
+ "delete"?: (string|null);
+
+ /** HttpRule patch */
+ patch?: (string|null);
+
+ /** HttpRule custom */
+ custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body */
+ body?: (string|null);
+
+ /** HttpRule responseBody */
+ responseBody?: (string|null);
+
+ /** HttpRule additionalBindings */
+ additionalBindings?: (google.api.IHttpRule[]|null);
+ }
+
+ /** Represents a HttpRule. */
+ class HttpRule implements IHttpRule {
+
+ /**
+ * Constructs a new HttpRule.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.IHttpRule);
+
+ /** HttpRule selector. */
+ public selector: string;
+
+ /** HttpRule get. */
+ public get?: (string|null);
+
+ /** HttpRule put. */
+ public put?: (string|null);
+
+ /** HttpRule post. */
+ public post?: (string|null);
+
+ /** HttpRule delete. */
+ public delete?: (string|null);
+
+ /** HttpRule patch. */
+ public patch?: (string|null);
+
+ /** HttpRule custom. */
+ public custom?: (google.api.ICustomHttpPattern|null);
+
+ /** HttpRule body. */
+ public body: string;
+
+ /** HttpRule responseBody. */
+ public responseBody: string;
+
+ /** HttpRule additionalBindings. */
+ public additionalBindings: google.api.IHttpRule[];
+
+ /** HttpRule pattern. */
+ public pattern?: ("get"|"put"|"post"|"delete"|"patch"|"custom");
+
+ /**
+ * Creates a new HttpRule instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns HttpRule instance
+ */
+ public static create(properties?: google.api.IHttpRule): google.api.HttpRule;
+
+ /**
+ * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
+ * @param message HttpRule message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.IHttpRule, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.HttpRule;
+
+ /**
+ * Decodes a HttpRule message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns HttpRule
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.HttpRule;
+
+ /**
+ * Verifies a HttpRule message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a HttpRule message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns HttpRule
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.HttpRule;
+
+ /**
+ * Creates a plain object from a HttpRule message. Also converts values to other types if specified.
+ * @param message HttpRule
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.HttpRule, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this HttpRule to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for HttpRule
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CustomHttpPattern. */
+ interface ICustomHttpPattern {
+
+ /** CustomHttpPattern kind */
+ kind?: (string|null);
+
+ /** CustomHttpPattern path */
+ path?: (string|null);
+ }
+
+ /** Represents a CustomHttpPattern. */
+ class CustomHttpPattern implements ICustomHttpPattern {
+
+ /**
+ * Constructs a new CustomHttpPattern.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.api.ICustomHttpPattern);
+
+ /** CustomHttpPattern kind. */
+ public kind: string;
+
+ /** CustomHttpPattern path. */
+ public path: string;
+
+ /**
+ * Creates a new CustomHttpPattern instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CustomHttpPattern instance
+ */
+ public static create(properties?: google.api.ICustomHttpPattern): google.api.CustomHttpPattern;
+
+ /**
+ * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
+ * @param message CustomHttpPattern message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.api.ICustomHttpPattern, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.api.CustomHttpPattern;
+
+ /**
+ * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CustomHttpPattern
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.api.CustomHttpPattern;
+
+ /**
+ * Verifies a CustomHttpPattern message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CustomHttpPattern
+ */
+ public static fromObject(object: { [k: string]: any }): google.api.CustomHttpPattern;
+
+ /**
+ * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified.
+ * @param message CustomHttpPattern
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.api.CustomHttpPattern, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CustomHttpPattern to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CustomHttpPattern
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace protobuf. */
+ namespace protobuf {
+
+ /** Properties of a FileDescriptorSet. */
+ interface IFileDescriptorSet {
+
+ /** FileDescriptorSet file */
+ file?: (google.protobuf.IFileDescriptorProto[]|null);
+ }
+
+ /** Represents a FileDescriptorSet. */
+ class FileDescriptorSet implements IFileDescriptorSet {
+
+ /**
+ * Constructs a new FileDescriptorSet.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorSet);
+
+ /** FileDescriptorSet file. */
+ public file: google.protobuf.IFileDescriptorProto[];
+
+ /**
+ * Creates a new FileDescriptorSet instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorSet instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorSet): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
+ * @param message FileDescriptorSet message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorSet, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorSet
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Verifies a FileDescriptorSet message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorSet
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorSet;
+
+ /**
+ * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified.
+ * @param message FileDescriptorSet
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorSet, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorSet to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorSet
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileDescriptorProto. */
+ interface IFileDescriptorProto {
+
+ /** FileDescriptorProto name */
+ name?: (string|null);
+
+ /** FileDescriptorProto package */
+ "package"?: (string|null);
+
+ /** FileDescriptorProto dependency */
+ dependency?: (string[]|null);
+
+ /** FileDescriptorProto publicDependency */
+ publicDependency?: (number[]|null);
+
+ /** FileDescriptorProto weakDependency */
+ weakDependency?: (number[]|null);
+
+ /** FileDescriptorProto messageType */
+ messageType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** FileDescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** FileDescriptorProto service */
+ service?: (google.protobuf.IServiceDescriptorProto[]|null);
+
+ /** FileDescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** FileDescriptorProto options */
+ options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo */
+ sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax */
+ syntax?: (string|null);
+
+ /** FileDescriptorProto edition */
+ edition?: (string|null);
+ }
+
+ /** Represents a FileDescriptorProto. */
+ class FileDescriptorProto implements IFileDescriptorProto {
+
+ /**
+ * Constructs a new FileDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileDescriptorProto);
+
+ /** FileDescriptorProto name. */
+ public name: string;
+
+ /** FileDescriptorProto package. */
+ public package: string;
+
+ /** FileDescriptorProto dependency. */
+ public dependency: string[];
+
+ /** FileDescriptorProto publicDependency. */
+ public publicDependency: number[];
+
+ /** FileDescriptorProto weakDependency. */
+ public weakDependency: number[];
+
+ /** FileDescriptorProto messageType. */
+ public messageType: google.protobuf.IDescriptorProto[];
+
+ /** FileDescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** FileDescriptorProto service. */
+ public service: google.protobuf.IServiceDescriptorProto[];
+
+ /** FileDescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** FileDescriptorProto options. */
+ public options?: (google.protobuf.IFileOptions|null);
+
+ /** FileDescriptorProto sourceCodeInfo. */
+ public sourceCodeInfo?: (google.protobuf.ISourceCodeInfo|null);
+
+ /** FileDescriptorProto syntax. */
+ public syntax: string;
+
+ /** FileDescriptorProto edition. */
+ public edition: string;
+
+ /**
+ * Creates a new FileDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFileDescriptorProto): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
+ * @param message FileDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Verifies a FileDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileDescriptorProto;
+
+ /**
+ * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified.
+ * @param message FileDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DescriptorProto. */
+ interface IDescriptorProto {
+
+ /** DescriptorProto name */
+ name?: (string|null);
+
+ /** DescriptorProto field */
+ field?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto extension */
+ extension?: (google.protobuf.IFieldDescriptorProto[]|null);
+
+ /** DescriptorProto nestedType */
+ nestedType?: (google.protobuf.IDescriptorProto[]|null);
+
+ /** DescriptorProto enumType */
+ enumType?: (google.protobuf.IEnumDescriptorProto[]|null);
+
+ /** DescriptorProto extensionRange */
+ extensionRange?: (google.protobuf.DescriptorProto.IExtensionRange[]|null);
+
+ /** DescriptorProto oneofDecl */
+ oneofDecl?: (google.protobuf.IOneofDescriptorProto[]|null);
+
+ /** DescriptorProto options */
+ options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.DescriptorProto.IReservedRange[]|null);
+
+ /** DescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents a DescriptorProto. */
+ class DescriptorProto implements IDescriptorProto {
+
+ /**
+ * Constructs a new DescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDescriptorProto);
+
+ /** DescriptorProto name. */
+ public name: string;
+
+ /** DescriptorProto field. */
+ public field: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto extension. */
+ public extension: google.protobuf.IFieldDescriptorProto[];
+
+ /** DescriptorProto nestedType. */
+ public nestedType: google.protobuf.IDescriptorProto[];
+
+ /** DescriptorProto enumType. */
+ public enumType: google.protobuf.IEnumDescriptorProto[];
+
+ /** DescriptorProto extensionRange. */
+ public extensionRange: google.protobuf.DescriptorProto.IExtensionRange[];
+
+ /** DescriptorProto oneofDecl. */
+ public oneofDecl: google.protobuf.IOneofDescriptorProto[];
+
+ /** DescriptorProto options. */
+ public options?: (google.protobuf.IMessageOptions|null);
+
+ /** DescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.DescriptorProto.IReservedRange[];
+
+ /** DescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new DescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IDescriptorProto): google.protobuf.DescriptorProto;
+
+ /**
+ * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
+ * @param message DescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto;
+
+ /**
+ * Decodes a DescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto;
+
+ /**
+ * Verifies a DescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto;
+
+ /**
+ * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified.
+ * @param message DescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace DescriptorProto {
+
+ /** Properties of an ExtensionRange. */
+ interface IExtensionRange {
+
+ /** ExtensionRange start */
+ start?: (number|null);
+
+ /** ExtensionRange end */
+ end?: (number|null);
+
+ /** ExtensionRange options */
+ options?: (google.protobuf.IExtensionRangeOptions|null);
+ }
+
+ /** Represents an ExtensionRange. */
+ class ExtensionRange implements IExtensionRange {
+
+ /**
+ * Constructs a new ExtensionRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IExtensionRange);
+
+ /** ExtensionRange start. */
+ public start: number;
+
+ /** ExtensionRange end. */
+ public end: number;
+
+ /** ExtensionRange options. */
+ public options?: (google.protobuf.IExtensionRangeOptions|null);
+
+ /**
+ * Creates a new ExtensionRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IExtensionRange): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
+ * @param message ExtensionRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IExtensionRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Decodes an ExtensionRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Verifies an ExtensionRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ExtensionRange;
+
+ /**
+ * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified.
+ * @param message ExtensionRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ExtensionRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ReservedRange. */
+ interface IReservedRange {
+
+ /** ReservedRange start */
+ start?: (number|null);
+
+ /** ReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents a ReservedRange. */
+ class ReservedRange implements IReservedRange {
+
+ /**
+ * Constructs a new ReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.DescriptorProto.IReservedRange);
+
+ /** ReservedRange start. */
+ public start: number;
+
+ /** ReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new ReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ReservedRange instance
+ */
+ public static create(properties?: google.protobuf.DescriptorProto.IReservedRange): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
+ * @param message ReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.DescriptorProto.IReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Decodes a ReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Verifies a ReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.DescriptorProto.ReservedRange;
+
+ /**
+ * Creates a plain object from a ReservedRange message. Also converts values to other types if specified.
+ * @param message ReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.DescriptorProto.ReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an ExtensionRangeOptions. */
+ interface IExtensionRangeOptions {
+
+ /** ExtensionRangeOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an ExtensionRangeOptions. */
+ class ExtensionRangeOptions implements IExtensionRangeOptions {
+
+ /**
+ * Constructs a new ExtensionRangeOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IExtensionRangeOptions);
+
+ /** ExtensionRangeOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new ExtensionRangeOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ExtensionRangeOptions instance
+ */
+ public static create(properties?: google.protobuf.IExtensionRangeOptions): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
+ * @param message ExtensionRangeOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IExtensionRangeOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ExtensionRangeOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Verifies an ExtensionRangeOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ExtensionRangeOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ExtensionRangeOptions;
+
+ /**
+ * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified.
+ * @param message ExtensionRangeOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ExtensionRangeOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ExtensionRangeOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ExtensionRangeOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldDescriptorProto. */
+ interface IFieldDescriptorProto {
+
+ /** FieldDescriptorProto name */
+ name?: (string|null);
+
+ /** FieldDescriptorProto number */
+ number?: (number|null);
+
+ /** FieldDescriptorProto label */
+ label?: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label|null);
+
+ /** FieldDescriptorProto type */
+ type?: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type|null);
+
+ /** FieldDescriptorProto typeName */
+ typeName?: (string|null);
+
+ /** FieldDescriptorProto extendee */
+ extendee?: (string|null);
+
+ /** FieldDescriptorProto defaultValue */
+ defaultValue?: (string|null);
+
+ /** FieldDescriptorProto oneofIndex */
+ oneofIndex?: (number|null);
+
+ /** FieldDescriptorProto jsonName */
+ jsonName?: (string|null);
+
+ /** FieldDescriptorProto options */
+ options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional */
+ proto3Optional?: (boolean|null);
+ }
+
+ /** Represents a FieldDescriptorProto. */
+ class FieldDescriptorProto implements IFieldDescriptorProto {
+
+ /**
+ * Constructs a new FieldDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldDescriptorProto);
+
+ /** FieldDescriptorProto name. */
+ public name: string;
+
+ /** FieldDescriptorProto number. */
+ public number: number;
+
+ /** FieldDescriptorProto label. */
+ public label: (google.protobuf.FieldDescriptorProto.Label|keyof typeof google.protobuf.FieldDescriptorProto.Label);
+
+ /** FieldDescriptorProto type. */
+ public type: (google.protobuf.FieldDescriptorProto.Type|keyof typeof google.protobuf.FieldDescriptorProto.Type);
+
+ /** FieldDescriptorProto typeName. */
+ public typeName: string;
+
+ /** FieldDescriptorProto extendee. */
+ public extendee: string;
+
+ /** FieldDescriptorProto defaultValue. */
+ public defaultValue: string;
+
+ /** FieldDescriptorProto oneofIndex. */
+ public oneofIndex: number;
+
+ /** FieldDescriptorProto jsonName. */
+ public jsonName: string;
+
+ /** FieldDescriptorProto options. */
+ public options?: (google.protobuf.IFieldOptions|null);
+
+ /** FieldDescriptorProto proto3Optional. */
+ public proto3Optional: boolean;
+
+ /**
+ * Creates a new FieldDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IFieldDescriptorProto): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
+ * @param message FieldDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Verifies a FieldDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldDescriptorProto;
+
+ /**
+ * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified.
+ * @param message FieldDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FieldDescriptorProto {
+
+ /** Type enum. */
+ enum Type {
+ TYPE_DOUBLE = 1,
+ TYPE_FLOAT = 2,
+ TYPE_INT64 = 3,
+ TYPE_UINT64 = 4,
+ TYPE_INT32 = 5,
+ TYPE_FIXED64 = 6,
+ TYPE_FIXED32 = 7,
+ TYPE_BOOL = 8,
+ TYPE_STRING = 9,
+ TYPE_GROUP = 10,
+ TYPE_MESSAGE = 11,
+ TYPE_BYTES = 12,
+ TYPE_UINT32 = 13,
+ TYPE_ENUM = 14,
+ TYPE_SFIXED32 = 15,
+ TYPE_SFIXED64 = 16,
+ TYPE_SINT32 = 17,
+ TYPE_SINT64 = 18
+ }
+
+ /** Label enum. */
+ enum Label {
+ LABEL_OPTIONAL = 1,
+ LABEL_REQUIRED = 2,
+ LABEL_REPEATED = 3
+ }
+ }
+
+ /** Properties of an OneofDescriptorProto. */
+ interface IOneofDescriptorProto {
+
+ /** OneofDescriptorProto name */
+ name?: (string|null);
+
+ /** OneofDescriptorProto options */
+ options?: (google.protobuf.IOneofOptions|null);
+ }
+
+ /** Represents an OneofDescriptorProto. */
+ class OneofDescriptorProto implements IOneofDescriptorProto {
+
+ /**
+ * Constructs a new OneofDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IOneofDescriptorProto);
+
+ /** OneofDescriptorProto name. */
+ public name: string;
+
+ /** OneofDescriptorProto options. */
+ public options?: (google.protobuf.IOneofOptions|null);
+
+ /**
+ * Creates a new OneofDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OneofDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IOneofDescriptorProto): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
+ * @param message OneofDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IOneofDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OneofDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Verifies an OneofDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OneofDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.OneofDescriptorProto;
+
+ /**
+ * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified.
+ * @param message OneofDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.OneofDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OneofDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OneofDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumDescriptorProto. */
+ interface IEnumDescriptorProto {
+
+ /** EnumDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumDescriptorProto value */
+ value?: (google.protobuf.IEnumValueDescriptorProto[]|null);
+
+ /** EnumDescriptorProto options */
+ options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange */
+ reservedRange?: (google.protobuf.EnumDescriptorProto.IEnumReservedRange[]|null);
+
+ /** EnumDescriptorProto reservedName */
+ reservedName?: (string[]|null);
+ }
+
+ /** Represents an EnumDescriptorProto. */
+ class EnumDescriptorProto implements IEnumDescriptorProto {
+
+ /**
+ * Constructs a new EnumDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumDescriptorProto);
+
+ /** EnumDescriptorProto name. */
+ public name: string;
+
+ /** EnumDescriptorProto value. */
+ public value: google.protobuf.IEnumValueDescriptorProto[];
+
+ /** EnumDescriptorProto options. */
+ public options?: (google.protobuf.IEnumOptions|null);
+
+ /** EnumDescriptorProto reservedRange. */
+ public reservedRange: google.protobuf.EnumDescriptorProto.IEnumReservedRange[];
+
+ /** EnumDescriptorProto reservedName. */
+ public reservedName: string[];
+
+ /**
+ * Creates a new EnumDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumDescriptorProto): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
+ * @param message EnumDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Verifies an EnumDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace EnumDescriptorProto {
+
+ /** Properties of an EnumReservedRange. */
+ interface IEnumReservedRange {
+
+ /** EnumReservedRange start */
+ start?: (number|null);
+
+ /** EnumReservedRange end */
+ end?: (number|null);
+ }
+
+ /** Represents an EnumReservedRange. */
+ class EnumReservedRange implements IEnumReservedRange {
+
+ /**
+ * Constructs a new EnumReservedRange.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange);
+
+ /** EnumReservedRange start. */
+ public start: number;
+
+ /** EnumReservedRange end. */
+ public end: number;
+
+ /**
+ * Creates a new EnumReservedRange instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumReservedRange instance
+ */
+ public static create(properties?: google.protobuf.EnumDescriptorProto.IEnumReservedRange): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
+ * @param message EnumReservedRange message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.EnumDescriptorProto.IEnumReservedRange, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumReservedRange
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Verifies an EnumReservedRange message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumReservedRange
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumDescriptorProto.EnumReservedRange;
+
+ /**
+ * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified.
+ * @param message EnumReservedRange
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumDescriptorProto.EnumReservedRange, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumReservedRange to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumReservedRange
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of an EnumValueDescriptorProto. */
+ interface IEnumValueDescriptorProto {
+
+ /** EnumValueDescriptorProto name */
+ name?: (string|null);
+
+ /** EnumValueDescriptorProto number */
+ number?: (number|null);
+
+ /** EnumValueDescriptorProto options */
+ options?: (google.protobuf.IEnumValueOptions|null);
+ }
+
+ /** Represents an EnumValueDescriptorProto. */
+ class EnumValueDescriptorProto implements IEnumValueDescriptorProto {
+
+ /**
+ * Constructs a new EnumValueDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumValueDescriptorProto);
+
+ /** EnumValueDescriptorProto name. */
+ public name: string;
+
+ /** EnumValueDescriptorProto number. */
+ public number: number;
+
+ /** EnumValueDescriptorProto options. */
+ public options?: (google.protobuf.IEnumValueOptions|null);
+
+ /**
+ * Creates a new EnumValueDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumValueDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IEnumValueDescriptorProto): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
+ * @param message EnumValueDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumValueDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumValueDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Verifies an EnumValueDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumValueDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueDescriptorProto;
+
+ /**
+ * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified.
+ * @param message EnumValueDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumValueDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumValueDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumValueDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceDescriptorProto. */
+ interface IServiceDescriptorProto {
+
+ /** ServiceDescriptorProto name */
+ name?: (string|null);
+
+ /** ServiceDescriptorProto method */
+ method?: (google.protobuf.IMethodDescriptorProto[]|null);
+
+ /** ServiceDescriptorProto options */
+ options?: (google.protobuf.IServiceOptions|null);
+ }
+
+ /** Represents a ServiceDescriptorProto. */
+ class ServiceDescriptorProto implements IServiceDescriptorProto {
+
+ /**
+ * Constructs a new ServiceDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IServiceDescriptorProto);
+
+ /** ServiceDescriptorProto name. */
+ public name: string;
+
+ /** ServiceDescriptorProto method. */
+ public method: google.protobuf.IMethodDescriptorProto[];
+
+ /** ServiceDescriptorProto options. */
+ public options?: (google.protobuf.IServiceOptions|null);
+
+ /**
+ * Creates a new ServiceDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IServiceDescriptorProto): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
+ * @param message ServiceDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IServiceDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Verifies a ServiceDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceDescriptorProto;
+
+ /**
+ * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified.
+ * @param message ServiceDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ServiceDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MethodDescriptorProto. */
+ interface IMethodDescriptorProto {
+
+ /** MethodDescriptorProto name */
+ name?: (string|null);
+
+ /** MethodDescriptorProto inputType */
+ inputType?: (string|null);
+
+ /** MethodDescriptorProto outputType */
+ outputType?: (string|null);
+
+ /** MethodDescriptorProto options */
+ options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming */
+ clientStreaming?: (boolean|null);
+
+ /** MethodDescriptorProto serverStreaming */
+ serverStreaming?: (boolean|null);
+ }
+
+ /** Represents a MethodDescriptorProto. */
+ class MethodDescriptorProto implements IMethodDescriptorProto {
+
+ /**
+ * Constructs a new MethodDescriptorProto.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMethodDescriptorProto);
+
+ /** MethodDescriptorProto name. */
+ public name: string;
+
+ /** MethodDescriptorProto inputType. */
+ public inputType: string;
+
+ /** MethodDescriptorProto outputType. */
+ public outputType: string;
+
+ /** MethodDescriptorProto options. */
+ public options?: (google.protobuf.IMethodOptions|null);
+
+ /** MethodDescriptorProto clientStreaming. */
+ public clientStreaming: boolean;
+
+ /** MethodDescriptorProto serverStreaming. */
+ public serverStreaming: boolean;
+
+ /**
+ * Creates a new MethodDescriptorProto instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodDescriptorProto instance
+ */
+ public static create(properties?: google.protobuf.IMethodDescriptorProto): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
+ * @param message MethodDescriptorProto message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMethodDescriptorProto, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodDescriptorProto
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Verifies a MethodDescriptorProto message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodDescriptorProto
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MethodDescriptorProto;
+
+ /**
+ * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified.
+ * @param message MethodDescriptorProto
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MethodDescriptorProto, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodDescriptorProto to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodDescriptorProto
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FileOptions. */
+ interface IFileOptions {
+
+ /** FileOptions javaPackage */
+ javaPackage?: (string|null);
+
+ /** FileOptions javaOuterClassname */
+ javaOuterClassname?: (string|null);
+
+ /** FileOptions javaMultipleFiles */
+ javaMultipleFiles?: (boolean|null);
+
+ /** FileOptions javaGenerateEqualsAndHash */
+ javaGenerateEqualsAndHash?: (boolean|null);
+
+ /** FileOptions javaStringCheckUtf8 */
+ javaStringCheckUtf8?: (boolean|null);
+
+ /** FileOptions optimizeFor */
+ optimizeFor?: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode|null);
+
+ /** FileOptions goPackage */
+ goPackage?: (string|null);
+
+ /** FileOptions ccGenericServices */
+ ccGenericServices?: (boolean|null);
+
+ /** FileOptions javaGenericServices */
+ javaGenericServices?: (boolean|null);
+
+ /** FileOptions pyGenericServices */
+ pyGenericServices?: (boolean|null);
+
+ /** FileOptions phpGenericServices */
+ phpGenericServices?: (boolean|null);
+
+ /** FileOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FileOptions ccEnableArenas */
+ ccEnableArenas?: (boolean|null);
+
+ /** FileOptions objcClassPrefix */
+ objcClassPrefix?: (string|null);
+
+ /** FileOptions csharpNamespace */
+ csharpNamespace?: (string|null);
+
+ /** FileOptions swiftPrefix */
+ swiftPrefix?: (string|null);
+
+ /** FileOptions phpClassPrefix */
+ phpClassPrefix?: (string|null);
+
+ /** FileOptions phpNamespace */
+ phpNamespace?: (string|null);
+
+ /** FileOptions phpMetadataNamespace */
+ phpMetadataNamespace?: (string|null);
+
+ /** FileOptions rubyPackage */
+ rubyPackage?: (string|null);
+
+ /** FileOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FileOptions .google.api.resourceDefinition */
+ ".google.api.resourceDefinition"?: (google.api.IResourceDescriptor[]|null);
+ }
+
+ /** Represents a FileOptions. */
+ class FileOptions implements IFileOptions {
+
+ /**
+ * Constructs a new FileOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFileOptions);
+
+ /** FileOptions javaPackage. */
+ public javaPackage: string;
+
+ /** FileOptions javaOuterClassname. */
+ public javaOuterClassname: string;
+
+ /** FileOptions javaMultipleFiles. */
+ public javaMultipleFiles: boolean;
+
+ /** FileOptions javaGenerateEqualsAndHash. */
+ public javaGenerateEqualsAndHash: boolean;
+
+ /** FileOptions javaStringCheckUtf8. */
+ public javaStringCheckUtf8: boolean;
+
+ /** FileOptions optimizeFor. */
+ public optimizeFor: (google.protobuf.FileOptions.OptimizeMode|keyof typeof google.protobuf.FileOptions.OptimizeMode);
+
+ /** FileOptions goPackage. */
+ public goPackage: string;
+
+ /** FileOptions ccGenericServices. */
+ public ccGenericServices: boolean;
+
+ /** FileOptions javaGenericServices. */
+ public javaGenericServices: boolean;
+
+ /** FileOptions pyGenericServices. */
+ public pyGenericServices: boolean;
+
+ /** FileOptions phpGenericServices. */
+ public phpGenericServices: boolean;
+
+ /** FileOptions deprecated. */
+ public deprecated: boolean;
+
+ /** FileOptions ccEnableArenas. */
+ public ccEnableArenas: boolean;
+
+ /** FileOptions objcClassPrefix. */
+ public objcClassPrefix: string;
+
+ /** FileOptions csharpNamespace. */
+ public csharpNamespace: string;
+
+ /** FileOptions swiftPrefix. */
+ public swiftPrefix: string;
+
+ /** FileOptions phpClassPrefix. */
+ public phpClassPrefix: string;
+
+ /** FileOptions phpNamespace. */
+ public phpNamespace: string;
+
+ /** FileOptions phpMetadataNamespace. */
+ public phpMetadataNamespace: string;
+
+ /** FileOptions rubyPackage. */
+ public rubyPackage: string;
+
+ /** FileOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new FileOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FileOptions instance
+ */
+ public static create(properties?: google.protobuf.IFileOptions): google.protobuf.FileOptions;
+
+ /**
+ * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
+ * @param message FileOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFileOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FileOptions;
+
+ /**
+ * Decodes a FileOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FileOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FileOptions;
+
+ /**
+ * Verifies a FileOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FileOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FileOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FileOptions;
+
+ /**
+ * Creates a plain object from a FileOptions message. Also converts values to other types if specified.
+ * @param message FileOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FileOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FileOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FileOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FileOptions {
+
+ /** OptimizeMode enum. */
+ enum OptimizeMode {
+ SPEED = 1,
+ CODE_SIZE = 2,
+ LITE_RUNTIME = 3
+ }
+ }
+
+ /** Properties of a MessageOptions. */
+ interface IMessageOptions {
+
+ /** MessageOptions messageSetWireFormat */
+ messageSetWireFormat?: (boolean|null);
+
+ /** MessageOptions noStandardDescriptorAccessor */
+ noStandardDescriptorAccessor?: (boolean|null);
+
+ /** MessageOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** MessageOptions mapEntry */
+ mapEntry?: (boolean|null);
+
+ /** MessageOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** MessageOptions .google.api.resource */
+ ".google.api.resource"?: (google.api.IResourceDescriptor|null);
+ }
+
+ /** Represents a MessageOptions. */
+ class MessageOptions implements IMessageOptions {
+
+ /**
+ * Constructs a new MessageOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMessageOptions);
+
+ /** MessageOptions messageSetWireFormat. */
+ public messageSetWireFormat: boolean;
+
+ /** MessageOptions noStandardDescriptorAccessor. */
+ public noStandardDescriptorAccessor: boolean;
+
+ /** MessageOptions deprecated. */
+ public deprecated: boolean;
+
+ /** MessageOptions mapEntry. */
+ public mapEntry: boolean;
+
+ /** MessageOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new MessageOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MessageOptions instance
+ */
+ public static create(properties?: google.protobuf.IMessageOptions): google.protobuf.MessageOptions;
+
+ /**
+ * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
+ * @param message MessageOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMessageOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MessageOptions;
+
+ /**
+ * Decodes a MessageOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MessageOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MessageOptions;
+
+ /**
+ * Verifies a MessageOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MessageOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MessageOptions;
+
+ /**
+ * Creates a plain object from a MessageOptions message. Also converts values to other types if specified.
+ * @param message MessageOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MessageOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MessageOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MessageOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldOptions. */
+ interface IFieldOptions {
+
+ /** FieldOptions ctype */
+ ctype?: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType|null);
+
+ /** FieldOptions packed */
+ packed?: (boolean|null);
+
+ /** FieldOptions jstype */
+ jstype?: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType|null);
+
+ /** FieldOptions lazy */
+ lazy?: (boolean|null);
+
+ /** FieldOptions unverifiedLazy */
+ unverifiedLazy?: (boolean|null);
+
+ /** FieldOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** FieldOptions weak */
+ weak?: (boolean|null);
+
+ /** FieldOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** FieldOptions .google.api.resourceReference */
+ ".google.api.resourceReference"?: (google.api.IResourceReference|null);
+
+ /** FieldOptions .google.api.fieldBehavior */
+ ".google.api.fieldBehavior"?: (google.api.FieldBehavior[]|null);
+ }
+
+ /** Represents a FieldOptions. */
+ class FieldOptions implements IFieldOptions {
+
+ /**
+ * Constructs a new FieldOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldOptions);
+
+ /** FieldOptions ctype. */
+ public ctype: (google.protobuf.FieldOptions.CType|keyof typeof google.protobuf.FieldOptions.CType);
+
+ /** FieldOptions packed. */
+ public packed: boolean;
+
+ /** FieldOptions jstype. */
+ public jstype: (google.protobuf.FieldOptions.JSType|keyof typeof google.protobuf.FieldOptions.JSType);
+
+ /** FieldOptions lazy. */
+ public lazy: boolean;
+
+ /** FieldOptions unverifiedLazy. */
+ public unverifiedLazy: boolean;
+
+ /** FieldOptions deprecated. */
+ public deprecated: boolean;
+
+ /** FieldOptions weak. */
+ public weak: boolean;
+
+ /** FieldOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new FieldOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldOptions instance
+ */
+ public static create(properties?: google.protobuf.IFieldOptions): google.protobuf.FieldOptions;
+
+ /**
+ * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
+ * @param message FieldOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
+ * @param message FieldOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldOptions;
+
+ /**
+ * Decodes a FieldOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldOptions;
+
+ /**
+ * Verifies a FieldOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldOptions;
+
+ /**
+ * Creates a plain object from a FieldOptions message. Also converts values to other types if specified.
+ * @param message FieldOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace FieldOptions {
+
+ /** CType enum. */
+ enum CType {
+ STRING = 0,
+ CORD = 1,
+ STRING_PIECE = 2
+ }
+
+ /** JSType enum. */
+ enum JSType {
+ JS_NORMAL = 0,
+ JS_STRING = 1,
+ JS_NUMBER = 2
+ }
+ }
+
+ /** Properties of an OneofOptions. */
+ interface IOneofOptions {
+
+ /** OneofOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an OneofOptions. */
+ class OneofOptions implements IOneofOptions {
+
+ /**
+ * Constructs a new OneofOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IOneofOptions);
+
+ /** OneofOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new OneofOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OneofOptions instance
+ */
+ public static create(properties?: google.protobuf.IOneofOptions): google.protobuf.OneofOptions;
+
+ /**
+ * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
+ * @param message OneofOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
+ * @param message OneofOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IOneofOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OneofOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OneofOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.OneofOptions;
+
+ /**
+ * Decodes an OneofOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OneofOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.OneofOptions;
+
+ /**
+ * Verifies an OneofOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OneofOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.OneofOptions;
+
+ /**
+ * Creates a plain object from an OneofOptions message. Also converts values to other types if specified.
+ * @param message OneofOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.OneofOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OneofOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OneofOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumOptions. */
+ interface IEnumOptions {
+
+ /** EnumOptions allowAlias */
+ allowAlias?: (boolean|null);
+
+ /** EnumOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** EnumOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an EnumOptions. */
+ class EnumOptions implements IEnumOptions {
+
+ /**
+ * Constructs a new EnumOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumOptions);
+
+ /** EnumOptions allowAlias. */
+ public allowAlias: boolean;
+
+ /** EnumOptions deprecated. */
+ public deprecated: boolean;
+
+ /** EnumOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new EnumOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumOptions instance
+ */
+ public static create(properties?: google.protobuf.IEnumOptions): google.protobuf.EnumOptions;
+
+ /**
+ * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
+ * @param message EnumOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
+ * @param message EnumOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumOptions;
+
+ /**
+ * Decodes an EnumOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumOptions;
+
+ /**
+ * Verifies an EnumOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumOptions;
+
+ /**
+ * Creates a plain object from an EnumOptions message. Also converts values to other types if specified.
+ * @param message EnumOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an EnumValueOptions. */
+ interface IEnumValueOptions {
+
+ /** EnumValueOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** EnumValueOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+ }
+
+ /** Represents an EnumValueOptions. */
+ class EnumValueOptions implements IEnumValueOptions {
+
+ /**
+ * Constructs a new EnumValueOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEnumValueOptions);
+
+ /** EnumValueOptions deprecated. */
+ public deprecated: boolean;
+
+ /** EnumValueOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new EnumValueOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns EnumValueOptions instance
+ */
+ public static create(properties?: google.protobuf.IEnumValueOptions): google.protobuf.EnumValueOptions;
+
+ /**
+ * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
+ * @param message EnumValueOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
+ * @param message EnumValueOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEnumValueOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an EnumValueOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns EnumValueOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.EnumValueOptions;
+
+ /**
+ * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns EnumValueOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.EnumValueOptions;
+
+ /**
+ * Verifies an EnumValueOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns EnumValueOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.EnumValueOptions;
+
+ /**
+ * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified.
+ * @param message EnumValueOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.EnumValueOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this EnumValueOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for EnumValueOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ServiceOptions. */
+ interface IServiceOptions {
+
+ /** ServiceOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** ServiceOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** ServiceOptions .google.api.defaultHost */
+ ".google.api.defaultHost"?: (string|null);
+
+ /** ServiceOptions .google.api.oauthScopes */
+ ".google.api.oauthScopes"?: (string|null);
+ }
+
+ /** Represents a ServiceOptions. */
+ class ServiceOptions implements IServiceOptions {
+
+ /**
+ * Constructs a new ServiceOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IServiceOptions);
+
+ /** ServiceOptions deprecated. */
+ public deprecated: boolean;
+
+ /** ServiceOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new ServiceOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ServiceOptions instance
+ */
+ public static create(properties?: google.protobuf.IServiceOptions): google.protobuf.ServiceOptions;
+
+ /**
+ * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
+ * @param message ServiceOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
+ * @param message ServiceOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IServiceOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ServiceOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ServiceOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ServiceOptions;
+
+ /**
+ * Decodes a ServiceOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ServiceOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ServiceOptions;
+
+ /**
+ * Verifies a ServiceOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ServiceOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ServiceOptions;
+
+ /**
+ * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified.
+ * @param message ServiceOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ServiceOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ServiceOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ServiceOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a MethodOptions. */
+ interface IMethodOptions {
+
+ /** MethodOptions deprecated */
+ deprecated?: (boolean|null);
+
+ /** MethodOptions idempotencyLevel */
+ idempotencyLevel?: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel|null);
+
+ /** MethodOptions uninterpretedOption */
+ uninterpretedOption?: (google.protobuf.IUninterpretedOption[]|null);
+
+ /** MethodOptions .google.api.http */
+ ".google.api.http"?: (google.api.IHttpRule|null);
+
+ /** MethodOptions .google.api.methodSignature */
+ ".google.api.methodSignature"?: (string[]|null);
+
+ /** MethodOptions .google.longrunning.operationInfo */
+ ".google.longrunning.operationInfo"?: (google.longrunning.IOperationInfo|null);
+ }
+
+ /** Represents a MethodOptions. */
+ class MethodOptions implements IMethodOptions {
+
+ /**
+ * Constructs a new MethodOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IMethodOptions);
+
+ /** MethodOptions deprecated. */
+ public deprecated: boolean;
+
+ /** MethodOptions idempotencyLevel. */
+ public idempotencyLevel: (google.protobuf.MethodOptions.IdempotencyLevel|keyof typeof google.protobuf.MethodOptions.IdempotencyLevel);
+
+ /** MethodOptions uninterpretedOption. */
+ public uninterpretedOption: google.protobuf.IUninterpretedOption[];
+
+ /**
+ * Creates a new MethodOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns MethodOptions instance
+ */
+ public static create(properties?: google.protobuf.IMethodOptions): google.protobuf.MethodOptions;
+
+ /**
+ * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
+ * @param message MethodOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
+ * @param message MethodOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IMethodOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a MethodOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns MethodOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.MethodOptions;
+
+ /**
+ * Decodes a MethodOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns MethodOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.MethodOptions;
+
+ /**
+ * Verifies a MethodOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns MethodOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.MethodOptions;
+
+ /**
+ * Creates a plain object from a MethodOptions message. Also converts values to other types if specified.
+ * @param message MethodOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.MethodOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this MethodOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for MethodOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace MethodOptions {
+
+ /** IdempotencyLevel enum. */
+ enum IdempotencyLevel {
+ IDEMPOTENCY_UNKNOWN = 0,
+ NO_SIDE_EFFECTS = 1,
+ IDEMPOTENT = 2
+ }
+ }
+
+ /** Properties of an UninterpretedOption. */
+ interface IUninterpretedOption {
+
+ /** UninterpretedOption name */
+ name?: (google.protobuf.UninterpretedOption.INamePart[]|null);
+
+ /** UninterpretedOption identifierValue */
+ identifierValue?: (string|null);
+
+ /** UninterpretedOption positiveIntValue */
+ positiveIntValue?: (number|Long|string|null);
+
+ /** UninterpretedOption negativeIntValue */
+ negativeIntValue?: (number|Long|string|null);
+
+ /** UninterpretedOption doubleValue */
+ doubleValue?: (number|null);
+
+ /** UninterpretedOption stringValue */
+ stringValue?: (Uint8Array|string|null);
+
+ /** UninterpretedOption aggregateValue */
+ aggregateValue?: (string|null);
+ }
+
+ /** Represents an UninterpretedOption. */
+ class UninterpretedOption implements IUninterpretedOption {
+
+ /**
+ * Constructs a new UninterpretedOption.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IUninterpretedOption);
+
+ /** UninterpretedOption name. */
+ public name: google.protobuf.UninterpretedOption.INamePart[];
+
+ /** UninterpretedOption identifierValue. */
+ public identifierValue: string;
+
+ /** UninterpretedOption positiveIntValue. */
+ public positiveIntValue: (number|Long|string);
+
+ /** UninterpretedOption negativeIntValue. */
+ public negativeIntValue: (number|Long|string);
+
+ /** UninterpretedOption doubleValue. */
+ public doubleValue: number;
+
+ /** UninterpretedOption stringValue. */
+ public stringValue: (Uint8Array|string);
+
+ /** UninterpretedOption aggregateValue. */
+ public aggregateValue: string;
+
+ /**
+ * Creates a new UninterpretedOption instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns UninterpretedOption instance
+ */
+ public static create(properties?: google.protobuf.IUninterpretedOption): google.protobuf.UninterpretedOption;
+
+ /**
+ * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
+ * @param message UninterpretedOption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
+ * @param message UninterpretedOption message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IUninterpretedOption, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an UninterpretedOption message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns UninterpretedOption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption;
+
+ /**
+ * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns UninterpretedOption
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption;
+
+ /**
+ * Verifies an UninterpretedOption message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns UninterpretedOption
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption;
+
+ /**
+ * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified.
+ * @param message UninterpretedOption
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UninterpretedOption, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this UninterpretedOption to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for UninterpretedOption
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace UninterpretedOption {
+
+ /** Properties of a NamePart. */
+ interface INamePart {
+
+ /** NamePart namePart */
+ namePart: string;
+
+ /** NamePart isExtension */
+ isExtension: boolean;
+ }
+
+ /** Represents a NamePart. */
+ class NamePart implements INamePart {
+
+ /**
+ * Constructs a new NamePart.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.UninterpretedOption.INamePart);
+
+ /** NamePart namePart. */
+ public namePart: string;
+
+ /** NamePart isExtension. */
+ public isExtension: boolean;
+
+ /**
+ * Creates a new NamePart instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns NamePart instance
+ */
+ public static create(properties?: google.protobuf.UninterpretedOption.INamePart): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
+ * @param message NamePart message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
+ * @param message NamePart message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.UninterpretedOption.INamePart, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a NamePart message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns NamePart
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Decodes a NamePart message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns NamePart
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Verifies a NamePart message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns NamePart
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.UninterpretedOption.NamePart;
+
+ /**
+ * Creates a plain object from a NamePart message. Also converts values to other types if specified.
+ * @param message NamePart
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.UninterpretedOption.NamePart, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this NamePart to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for NamePart
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a SourceCodeInfo. */
+ interface ISourceCodeInfo {
+
+ /** SourceCodeInfo location */
+ location?: (google.protobuf.SourceCodeInfo.ILocation[]|null);
+ }
+
+ /** Represents a SourceCodeInfo. */
+ class SourceCodeInfo implements ISourceCodeInfo {
+
+ /**
+ * Constructs a new SourceCodeInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.ISourceCodeInfo);
+
+ /** SourceCodeInfo location. */
+ public location: google.protobuf.SourceCodeInfo.ILocation[];
+
+ /**
+ * Creates a new SourceCodeInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SourceCodeInfo instance
+ */
+ public static create(properties?: google.protobuf.ISourceCodeInfo): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
+ * @param message SourceCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
+ * @param message SourceCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.ISourceCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SourceCodeInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SourceCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SourceCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Verifies a SourceCodeInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SourceCodeInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo;
+
+ /**
+ * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified.
+ * @param message SourceCodeInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.SourceCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SourceCodeInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SourceCodeInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace SourceCodeInfo {
+
+ /** Properties of a Location. */
+ interface ILocation {
+
+ /** Location path */
+ path?: (number[]|null);
+
+ /** Location span */
+ span?: (number[]|null);
+
+ /** Location leadingComments */
+ leadingComments?: (string|null);
+
+ /** Location trailingComments */
+ trailingComments?: (string|null);
+
+ /** Location leadingDetachedComments */
+ leadingDetachedComments?: (string[]|null);
+ }
+
+ /** Represents a Location. */
+ class Location implements ILocation {
+
+ /**
+ * Constructs a new Location.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.SourceCodeInfo.ILocation);
+
+ /** Location path. */
+ public path: number[];
+
+ /** Location span. */
+ public span: number[];
+
+ /** Location leadingComments. */
+ public leadingComments: string;
+
+ /** Location trailingComments. */
+ public trailingComments: string;
+
+ /** Location leadingDetachedComments. */
+ public leadingDetachedComments: string[];
+
+ /**
+ * Creates a new Location instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Location instance
+ */
+ public static create(properties?: google.protobuf.SourceCodeInfo.ILocation): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
+ * @param message Location message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
+ * @param message Location message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.SourceCodeInfo.ILocation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Location message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Location
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Decodes a Location message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Location
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Verifies a Location message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Location message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Location
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.SourceCodeInfo.Location;
+
+ /**
+ * Creates a plain object from a Location message. Also converts values to other types if specified.
+ * @param message Location
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.SourceCodeInfo.Location, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Location to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Location
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Properties of a GeneratedCodeInfo. */
+ interface IGeneratedCodeInfo {
+
+ /** GeneratedCodeInfo annotation */
+ annotation?: (google.protobuf.GeneratedCodeInfo.IAnnotation[]|null);
+ }
+
+ /** Represents a GeneratedCodeInfo. */
+ class GeneratedCodeInfo implements IGeneratedCodeInfo {
+
+ /**
+ * Constructs a new GeneratedCodeInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IGeneratedCodeInfo);
+
+ /** GeneratedCodeInfo annotation. */
+ public annotation: google.protobuf.GeneratedCodeInfo.IAnnotation[];
+
+ /**
+ * Creates a new GeneratedCodeInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GeneratedCodeInfo instance
+ */
+ public static create(properties?: google.protobuf.IGeneratedCodeInfo): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
+ * @param message GeneratedCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
+ * @param message GeneratedCodeInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IGeneratedCodeInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GeneratedCodeInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GeneratedCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GeneratedCodeInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Verifies a GeneratedCodeInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GeneratedCodeInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo;
+
+ /**
+ * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified.
+ * @param message GeneratedCodeInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.GeneratedCodeInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GeneratedCodeInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GeneratedCodeInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace GeneratedCodeInfo {
+
+ /** Properties of an Annotation. */
+ interface IAnnotation {
+
+ /** Annotation path */
+ path?: (number[]|null);
+
+ /** Annotation sourceFile */
+ sourceFile?: (string|null);
+
+ /** Annotation begin */
+ begin?: (number|null);
+
+ /** Annotation end */
+ end?: (number|null);
+
+ /** Annotation semantic */
+ semantic?: (google.protobuf.GeneratedCodeInfo.Annotation.Semantic|keyof typeof google.protobuf.GeneratedCodeInfo.Annotation.Semantic|null);
+ }
+
+ /** Represents an Annotation. */
+ class Annotation implements IAnnotation {
+
+ /**
+ * Constructs a new Annotation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation);
+
+ /** Annotation path. */
+ public path: number[];
+
+ /** Annotation sourceFile. */
+ public sourceFile: string;
+
+ /** Annotation begin. */
+ public begin: number;
+
+ /** Annotation end. */
+ public end: number;
+
+ /** Annotation semantic. */
+ public semantic: (google.protobuf.GeneratedCodeInfo.Annotation.Semantic|keyof typeof google.protobuf.GeneratedCodeInfo.Annotation.Semantic);
+
+ /**
+ * Creates a new Annotation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Annotation instance
+ */
+ public static create(properties?: google.protobuf.GeneratedCodeInfo.IAnnotation): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
+ * @param message Annotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
+ * @param message Annotation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.GeneratedCodeInfo.IAnnotation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Annotation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Annotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Decodes an Annotation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Annotation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Verifies an Annotation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Annotation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Annotation
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.GeneratedCodeInfo.Annotation;
+
+ /**
+ * Creates a plain object from an Annotation message. Also converts values to other types if specified.
+ * @param message Annotation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.GeneratedCodeInfo.Annotation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Annotation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Annotation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace Annotation {
+
+ /** Semantic enum. */
+ enum Semantic {
+ NONE = 0,
+ SET = 1,
+ ALIAS = 2
+ }
+ }
+ }
+
+ /** Properties of a Struct. */
+ interface IStruct {
+
+ /** Struct fields */
+ fields?: ({ [k: string]: google.protobuf.IValue }|null);
+ }
+
+ /** Represents a Struct. */
+ class Struct implements IStruct {
+
+ /**
+ * Constructs a new Struct.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IStruct);
+
+ /** Struct fields. */
+ public fields: { [k: string]: google.protobuf.IValue };
+
+ /**
+ * Creates a new Struct instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Struct instance
+ */
+ public static create(properties?: google.protobuf.IStruct): google.protobuf.Struct;
+
+ /**
+ * Encodes the specified Struct message. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages.
+ * @param message Struct message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IStruct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Struct message, length delimited. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages.
+ * @param message Struct message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IStruct, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Struct message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Struct
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Struct;
+
+ /**
+ * Decodes a Struct message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Struct
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Struct;
+
+ /**
+ * Verifies a Struct message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Struct message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Struct
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Struct;
+
+ /**
+ * Creates a plain object from a Struct message. Also converts values to other types if specified.
+ * @param message Struct
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Struct, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Struct to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Struct
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Value. */
+ interface IValue {
+
+ /** Value nullValue */
+ nullValue?: (google.protobuf.NullValue|keyof typeof google.protobuf.NullValue|null);
+
+ /** Value numberValue */
+ numberValue?: (number|null);
+
+ /** Value stringValue */
+ stringValue?: (string|null);
+
+ /** Value boolValue */
+ boolValue?: (boolean|null);
+
+ /** Value structValue */
+ structValue?: (google.protobuf.IStruct|null);
+
+ /** Value listValue */
+ listValue?: (google.protobuf.IListValue|null);
+ }
+
+ /** Represents a Value. */
+ class Value implements IValue {
+
+ /**
+ * Constructs a new Value.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IValue);
+
+ /** Value nullValue. */
+ public nullValue?: (google.protobuf.NullValue|keyof typeof google.protobuf.NullValue|null);
+
+ /** Value numberValue. */
+ public numberValue?: (number|null);
+
+ /** Value stringValue. */
+ public stringValue?: (string|null);
+
+ /** Value boolValue. */
+ public boolValue?: (boolean|null);
+
+ /** Value structValue. */
+ public structValue?: (google.protobuf.IStruct|null);
+
+ /** Value listValue. */
+ public listValue?: (google.protobuf.IListValue|null);
+
+ /** Value kind. */
+ public kind?: ("nullValue"|"numberValue"|"stringValue"|"boolValue"|"structValue"|"listValue");
+
+ /**
+ * Creates a new Value instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Value instance
+ */
+ public static create(properties?: google.protobuf.IValue): google.protobuf.Value;
+
+ /**
+ * Encodes the specified Value message. Does not implicitly {@link google.protobuf.Value.verify|verify} messages.
+ * @param message Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Value message, length delimited. Does not implicitly {@link google.protobuf.Value.verify|verify} messages.
+ * @param message Value message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Value message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Value;
+
+ /**
+ * Decodes a Value message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Value
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Value;
+
+ /**
+ * Verifies a Value message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Value message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Value
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Value;
+
+ /**
+ * Creates a plain object from a Value message. Also converts values to other types if specified.
+ * @param message Value
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Value, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Value to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Value
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** NullValue enum. */
+ enum NullValue {
+ NULL_VALUE = 0
+ }
+
+ /** Properties of a ListValue. */
+ interface IListValue {
+
+ /** ListValue values */
+ values?: (google.protobuf.IValue[]|null);
+ }
+
+ /** Represents a ListValue. */
+ class ListValue implements IListValue {
+
+ /**
+ * Constructs a new ListValue.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IListValue);
+
+ /** ListValue values. */
+ public values: google.protobuf.IValue[];
+
+ /**
+ * Creates a new ListValue instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListValue instance
+ */
+ public static create(properties?: google.protobuf.IListValue): google.protobuf.ListValue;
+
+ /**
+ * Encodes the specified ListValue message. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages.
+ * @param message ListValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IListValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListValue message, length delimited. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages.
+ * @param message ListValue message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IListValue, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListValue message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.ListValue;
+
+ /**
+ * Decodes a ListValue message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListValue
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.ListValue;
+
+ /**
+ * Verifies a ListValue message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListValue message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListValue
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.ListValue;
+
+ /**
+ * Creates a plain object from a ListValue message. Also converts values to other types if specified.
+ * @param message ListValue
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.ListValue, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListValue to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListValue
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Timestamp. */
+ interface ITimestamp {
+
+ /** Timestamp seconds */
+ seconds?: (number|Long|string|null);
+
+ /** Timestamp nanos */
+ nanos?: (number|null);
+ }
+
+ /** Represents a Timestamp. */
+ class Timestamp implements ITimestamp {
+
+ /**
+ * Constructs a new Timestamp.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.ITimestamp);
+
+ /** Timestamp seconds. */
+ public seconds: (number|Long|string);
+
+ /** Timestamp nanos. */
+ public nanos: number;
+
+ /**
+ * Creates a new Timestamp instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Timestamp instance
+ */
+ public static create(properties?: google.protobuf.ITimestamp): google.protobuf.Timestamp;
+
+ /**
+ * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
+ * @param message Timestamp message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
+ * @param message Timestamp message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.ITimestamp, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Timestamp message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Timestamp
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Timestamp;
+
+ /**
+ * Decodes a Timestamp message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Timestamp
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Timestamp;
+
+ /**
+ * Verifies a Timestamp message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Timestamp message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Timestamp
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Timestamp;
+
+ /**
+ * Creates a plain object from a Timestamp message. Also converts values to other types if specified.
+ * @param message Timestamp
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Timestamp, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Timestamp to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Timestamp
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Duration. */
+ interface IDuration {
+
+ /** Duration seconds */
+ seconds?: (number|Long|string|null);
+
+ /** Duration nanos */
+ nanos?: (number|null);
+ }
+
+ /** Represents a Duration. */
+ class Duration implements IDuration {
+
+ /**
+ * Constructs a new Duration.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IDuration);
+
+ /** Duration seconds. */
+ public seconds: (number|Long|string);
+
+ /** Duration nanos. */
+ public nanos: number;
+
+ /**
+ * Creates a new Duration instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Duration instance
+ */
+ public static create(properties?: google.protobuf.IDuration): google.protobuf.Duration;
+
+ /**
+ * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
+ * @param message Duration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Duration message, length delimited. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
+ * @param message Duration message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IDuration, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Duration message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Duration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Duration;
+
+ /**
+ * Decodes a Duration message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Duration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Duration;
+
+ /**
+ * Verifies a Duration message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Duration message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Duration
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Duration;
+
+ /**
+ * Creates a plain object from a Duration message. Also converts values to other types if specified.
+ * @param message Duration
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Duration, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Duration to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Duration
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a FieldMask. */
+ interface IFieldMask {
+
+ /** FieldMask paths */
+ paths?: (string[]|null);
+ }
+
+ /** Represents a FieldMask. */
+ class FieldMask implements IFieldMask {
+
+ /**
+ * Constructs a new FieldMask.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IFieldMask);
+
+ /** FieldMask paths. */
+ public paths: string[];
+
+ /**
+ * Creates a new FieldMask instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns FieldMask instance
+ */
+ public static create(properties?: google.protobuf.IFieldMask): google.protobuf.FieldMask;
+
+ /**
+ * Encodes the specified FieldMask message. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages.
+ * @param message FieldMask message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified FieldMask message, length delimited. Does not implicitly {@link google.protobuf.FieldMask.verify|verify} messages.
+ * @param message FieldMask message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IFieldMask, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a FieldMask message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns FieldMask
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.FieldMask;
+
+ /**
+ * Decodes a FieldMask message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns FieldMask
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.FieldMask;
+
+ /**
+ * Verifies a FieldMask message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a FieldMask message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns FieldMask
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.FieldMask;
+
+ /**
+ * Creates a plain object from a FieldMask message. Also converts values to other types if specified.
+ * @param message FieldMask
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.FieldMask, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this FieldMask to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for FieldMask
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Any. */
+ interface IAny {
+
+ /** Any type_url */
+ type_url?: (string|null);
+
+ /** Any value */
+ value?: (Uint8Array|string|null);
+ }
+
+ /** Represents an Any. */
+ class Any implements IAny {
+
+ /**
+ * Constructs a new Any.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IAny);
+
+ /** Any type_url. */
+ public type_url: string;
+
+ /** Any value. */
+ public value: (Uint8Array|string);
+
+ /**
+ * Creates a new Any instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Any instance
+ */
+ public static create(properties?: google.protobuf.IAny): google.protobuf.Any;
+
+ /**
+ * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
+ * @param message Any message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IAny, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Any message, length delimited. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
+ * @param message Any message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IAny, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Any message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Any
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Any;
+
+ /**
+ * Decodes an Any message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Any
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Any;
+
+ /**
+ * Verifies an Any message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Any message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Any
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Any;
+
+ /**
+ * Creates a plain object from an Any message. Also converts values to other types if specified.
+ * @param message Any
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Any, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Any to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Any
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an Empty. */
+ interface IEmpty {
+ }
+
+ /** Represents an Empty. */
+ class Empty implements IEmpty {
+
+ /**
+ * Constructs a new Empty.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.protobuf.IEmpty);
+
+ /**
+ * Creates a new Empty instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Empty instance
+ */
+ public static create(properties?: google.protobuf.IEmpty): google.protobuf.Empty;
+
+ /**
+ * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages.
+ * @param message Empty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages.
+ * @param message Empty message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.protobuf.IEmpty, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Empty message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Empty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.protobuf.Empty;
+
+ /**
+ * Decodes an Empty message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Empty
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.protobuf.Empty;
+
+ /**
+ * Verifies an Empty message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Empty message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Empty
+ */
+ public static fromObject(object: { [k: string]: any }): google.protobuf.Empty;
+
+ /**
+ * Creates a plain object from an Empty message. Also converts values to other types if specified.
+ * @param message Empty
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.protobuf.Empty, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Empty to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Empty
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace iam. */
+ namespace iam {
+
+ /** Namespace v1. */
+ namespace v1 {
+
+ /** Represents a IAMPolicy */
+ class IAMPolicy extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new IAMPolicy service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new IAMPolicy service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): IAMPolicy;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest, callback: google.iam.v1.IAMPolicy.SetIamPolicyCallback): void;
+
+ /**
+ * Calls SetIamPolicy.
+ * @param request SetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public setIamPolicy(request: google.iam.v1.ISetIamPolicyRequest): Promise;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Policy
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest, callback: google.iam.v1.IAMPolicy.GetIamPolicyCallback): void;
+
+ /**
+ * Calls GetIamPolicy.
+ * @param request GetIamPolicyRequest message or plain object
+ * @returns Promise
+ */
+ public getIamPolicy(request: google.iam.v1.IGetIamPolicyRequest): Promise;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and TestIamPermissionsResponse
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest, callback: google.iam.v1.IAMPolicy.TestIamPermissionsCallback): void;
+
+ /**
+ * Calls TestIamPermissions.
+ * @param request TestIamPermissionsRequest message or plain object
+ * @returns Promise
+ */
+ public testIamPermissions(request: google.iam.v1.ITestIamPermissionsRequest): Promise;
+ }
+
+ namespace IAMPolicy {
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|setIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type SetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|getIamPolicy}.
+ * @param error Error, if any
+ * @param [response] Policy
+ */
+ type GetIamPolicyCallback = (error: (Error|null), response?: google.iam.v1.Policy) => void;
+
+ /**
+ * Callback as used by {@link google.iam.v1.IAMPolicy|testIamPermissions}.
+ * @param error Error, if any
+ * @param [response] TestIamPermissionsResponse
+ */
+ type TestIamPermissionsCallback = (error: (Error|null), response?: google.iam.v1.TestIamPermissionsResponse) => void;
+ }
+
+ /** Properties of a SetIamPolicyRequest. */
+ interface ISetIamPolicyRequest {
+
+ /** SetIamPolicyRequest resource */
+ resource?: (string|null);
+
+ /** SetIamPolicyRequest policy */
+ policy?: (google.iam.v1.IPolicy|null);
+
+ /** SetIamPolicyRequest updateMask */
+ updateMask?: (google.protobuf.IFieldMask|null);
+ }
+
+ /** Represents a SetIamPolicyRequest. */
+ class SetIamPolicyRequest implements ISetIamPolicyRequest {
+
+ /**
+ * Constructs a new SetIamPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ISetIamPolicyRequest);
+
+ /** SetIamPolicyRequest resource. */
+ public resource: string;
+
+ /** SetIamPolicyRequest policy. */
+ public policy?: (google.iam.v1.IPolicy|null);
+
+ /** SetIamPolicyRequest updateMask. */
+ public updateMask?: (google.protobuf.IFieldMask|null);
+
+ /**
+ * Creates a new SetIamPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns SetIamPolicyRequest instance
+ */
+ public static create(properties?: google.iam.v1.ISetIamPolicyRequest): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Encodes the specified SetIamPolicyRequest message. Does not implicitly {@link google.iam.v1.SetIamPolicyRequest.verify|verify} messages.
+ * @param message SetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ISetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified SetIamPolicyRequest message, length delimited. Does not implicitly {@link google.iam.v1.SetIamPolicyRequest.verify|verify} messages.
+ * @param message SetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ISetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a SetIamPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns SetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Decodes a SetIamPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns SetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Verifies a SetIamPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a SetIamPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns SetIamPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.SetIamPolicyRequest;
+
+ /**
+ * Creates a plain object from a SetIamPolicyRequest message. Also converts values to other types if specified.
+ * @param message SetIamPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.SetIamPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this SetIamPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for SetIamPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetIamPolicyRequest. */
+ interface IGetIamPolicyRequest {
+
+ /** GetIamPolicyRequest resource */
+ resource?: (string|null);
+
+ /** GetIamPolicyRequest options */
+ options?: (google.iam.v1.IGetPolicyOptions|null);
+ }
+
+ /** Represents a GetIamPolicyRequest. */
+ class GetIamPolicyRequest implements IGetIamPolicyRequest {
+
+ /**
+ * Constructs a new GetIamPolicyRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IGetIamPolicyRequest);
+
+ /** GetIamPolicyRequest resource. */
+ public resource: string;
+
+ /** GetIamPolicyRequest options. */
+ public options?: (google.iam.v1.IGetPolicyOptions|null);
+
+ /**
+ * Creates a new GetIamPolicyRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetIamPolicyRequest instance
+ */
+ public static create(properties?: google.iam.v1.IGetIamPolicyRequest): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Encodes the specified GetIamPolicyRequest message. Does not implicitly {@link google.iam.v1.GetIamPolicyRequest.verify|verify} messages.
+ * @param message GetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IGetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetIamPolicyRequest message, length delimited. Does not implicitly {@link google.iam.v1.GetIamPolicyRequest.verify|verify} messages.
+ * @param message GetIamPolicyRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IGetIamPolicyRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetIamPolicyRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Decodes a GetIamPolicyRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetIamPolicyRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Verifies a GetIamPolicyRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetIamPolicyRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetIamPolicyRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.GetIamPolicyRequest;
+
+ /**
+ * Creates a plain object from a GetIamPolicyRequest message. Also converts values to other types if specified.
+ * @param message GetIamPolicyRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.GetIamPolicyRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetIamPolicyRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetIamPolicyRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TestIamPermissionsRequest. */
+ interface ITestIamPermissionsRequest {
+
+ /** TestIamPermissionsRequest resource */
+ resource?: (string|null);
+
+ /** TestIamPermissionsRequest permissions */
+ permissions?: (string[]|null);
+ }
+
+ /** Represents a TestIamPermissionsRequest. */
+ class TestIamPermissionsRequest implements ITestIamPermissionsRequest {
+
+ /**
+ * Constructs a new TestIamPermissionsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ITestIamPermissionsRequest);
+
+ /** TestIamPermissionsRequest resource. */
+ public resource: string;
+
+ /** TestIamPermissionsRequest permissions. */
+ public permissions: string[];
+
+ /**
+ * Creates a new TestIamPermissionsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TestIamPermissionsRequest instance
+ */
+ public static create(properties?: google.iam.v1.ITestIamPermissionsRequest): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Encodes the specified TestIamPermissionsRequest message. Does not implicitly {@link google.iam.v1.TestIamPermissionsRequest.verify|verify} messages.
+ * @param message TestIamPermissionsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ITestIamPermissionsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TestIamPermissionsRequest message, length delimited. Does not implicitly {@link google.iam.v1.TestIamPermissionsRequest.verify|verify} messages.
+ * @param message TestIamPermissionsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ITestIamPermissionsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TestIamPermissionsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TestIamPermissionsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Decodes a TestIamPermissionsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TestIamPermissionsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Verifies a TestIamPermissionsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TestIamPermissionsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TestIamPermissionsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.TestIamPermissionsRequest;
+
+ /**
+ * Creates a plain object from a TestIamPermissionsRequest message. Also converts values to other types if specified.
+ * @param message TestIamPermissionsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.TestIamPermissionsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TestIamPermissionsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TestIamPermissionsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a TestIamPermissionsResponse. */
+ interface ITestIamPermissionsResponse {
+
+ /** TestIamPermissionsResponse permissions */
+ permissions?: (string[]|null);
+ }
+
+ /** Represents a TestIamPermissionsResponse. */
+ class TestIamPermissionsResponse implements ITestIamPermissionsResponse {
+
+ /**
+ * Constructs a new TestIamPermissionsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.ITestIamPermissionsResponse);
+
+ /** TestIamPermissionsResponse permissions. */
+ public permissions: string[];
+
+ /**
+ * Creates a new TestIamPermissionsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns TestIamPermissionsResponse instance
+ */
+ public static create(properties?: google.iam.v1.ITestIamPermissionsResponse): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Encodes the specified TestIamPermissionsResponse message. Does not implicitly {@link google.iam.v1.TestIamPermissionsResponse.verify|verify} messages.
+ * @param message TestIamPermissionsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.ITestIamPermissionsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified TestIamPermissionsResponse message, length delimited. Does not implicitly {@link google.iam.v1.TestIamPermissionsResponse.verify|verify} messages.
+ * @param message TestIamPermissionsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.ITestIamPermissionsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a TestIamPermissionsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns TestIamPermissionsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Decodes a TestIamPermissionsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns TestIamPermissionsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Verifies a TestIamPermissionsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a TestIamPermissionsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns TestIamPermissionsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.TestIamPermissionsResponse;
+
+ /**
+ * Creates a plain object from a TestIamPermissionsResponse message. Also converts values to other types if specified.
+ * @param message TestIamPermissionsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.TestIamPermissionsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this TestIamPermissionsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for TestIamPermissionsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetPolicyOptions. */
+ interface IGetPolicyOptions {
+
+ /** GetPolicyOptions requestedPolicyVersion */
+ requestedPolicyVersion?: (number|null);
+ }
+
+ /** Represents a GetPolicyOptions. */
+ class GetPolicyOptions implements IGetPolicyOptions {
+
+ /**
+ * Constructs a new GetPolicyOptions.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IGetPolicyOptions);
+
+ /** GetPolicyOptions requestedPolicyVersion. */
+ public requestedPolicyVersion: number;
+
+ /**
+ * Creates a new GetPolicyOptions instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetPolicyOptions instance
+ */
+ public static create(properties?: google.iam.v1.IGetPolicyOptions): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Encodes the specified GetPolicyOptions message. Does not implicitly {@link google.iam.v1.GetPolicyOptions.verify|verify} messages.
+ * @param message GetPolicyOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IGetPolicyOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetPolicyOptions message, length delimited. Does not implicitly {@link google.iam.v1.GetPolicyOptions.verify|verify} messages.
+ * @param message GetPolicyOptions message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IGetPolicyOptions, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetPolicyOptions message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetPolicyOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Decodes a GetPolicyOptions message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetPolicyOptions
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Verifies a GetPolicyOptions message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetPolicyOptions message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetPolicyOptions
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.GetPolicyOptions;
+
+ /**
+ * Creates a plain object from a GetPolicyOptions message. Also converts values to other types if specified.
+ * @param message GetPolicyOptions
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.GetPolicyOptions, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetPolicyOptions to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetPolicyOptions
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Policy. */
+ interface IPolicy {
+
+ /** Policy version */
+ version?: (number|null);
+
+ /** Policy bindings */
+ bindings?: (google.iam.v1.IBinding[]|null);
+
+ /** Policy auditConfigs */
+ auditConfigs?: (google.iam.v1.IAuditConfig[]|null);
+
+ /** Policy etag */
+ etag?: (Uint8Array|string|null);
+ }
+
+ /** Represents a Policy. */
+ class Policy implements IPolicy {
+
+ /**
+ * Constructs a new Policy.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IPolicy);
+
+ /** Policy version. */
+ public version: number;
+
+ /** Policy bindings. */
+ public bindings: google.iam.v1.IBinding[];
+
+ /** Policy auditConfigs. */
+ public auditConfigs: google.iam.v1.IAuditConfig[];
+
+ /** Policy etag. */
+ public etag: (Uint8Array|string);
+
+ /**
+ * Creates a new Policy instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Policy instance
+ */
+ public static create(properties?: google.iam.v1.IPolicy): google.iam.v1.Policy;
+
+ /**
+ * Encodes the specified Policy message. Does not implicitly {@link google.iam.v1.Policy.verify|verify} messages.
+ * @param message Policy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Policy message, length delimited. Does not implicitly {@link google.iam.v1.Policy.verify|verify} messages.
+ * @param message Policy message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IPolicy, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Policy message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Policy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.Policy;
+
+ /**
+ * Decodes a Policy message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Policy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.Policy;
+
+ /**
+ * Verifies a Policy message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Policy message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Policy
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.Policy;
+
+ /**
+ * Creates a plain object from a Policy message. Also converts values to other types if specified.
+ * @param message Policy
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.Policy, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Policy to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Policy
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a Binding. */
+ interface IBinding {
+
+ /** Binding role */
+ role?: (string|null);
+
+ /** Binding members */
+ members?: (string[]|null);
+
+ /** Binding condition */
+ condition?: (google.type.IExpr|null);
+ }
+
+ /** Represents a Binding. */
+ class Binding implements IBinding {
+
+ /**
+ * Constructs a new Binding.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IBinding);
+
+ /** Binding role. */
+ public role: string;
+
+ /** Binding members. */
+ public members: string[];
+
+ /** Binding condition. */
+ public condition?: (google.type.IExpr|null);
+
+ /**
+ * Creates a new Binding instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Binding instance
+ */
+ public static create(properties?: google.iam.v1.IBinding): google.iam.v1.Binding;
+
+ /**
+ * Encodes the specified Binding message. Does not implicitly {@link google.iam.v1.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Binding message, length delimited. Does not implicitly {@link google.iam.v1.Binding.verify|verify} messages.
+ * @param message Binding message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IBinding, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.Binding;
+
+ /**
+ * Decodes a Binding message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Binding
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.Binding;
+
+ /**
+ * Verifies a Binding message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Binding message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Binding
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.Binding;
+
+ /**
+ * Creates a plain object from a Binding message. Also converts values to other types if specified.
+ * @param message Binding
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.Binding, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Binding to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Binding
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AuditConfig. */
+ interface IAuditConfig {
+
+ /** AuditConfig service */
+ service?: (string|null);
+
+ /** AuditConfig auditLogConfigs */
+ auditLogConfigs?: (google.iam.v1.IAuditLogConfig[]|null);
+ }
+
+ /** Represents an AuditConfig. */
+ class AuditConfig implements IAuditConfig {
+
+ /**
+ * Constructs a new AuditConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditConfig);
+
+ /** AuditConfig service. */
+ public service: string;
+
+ /** AuditConfig auditLogConfigs. */
+ public auditLogConfigs: google.iam.v1.IAuditLogConfig[];
+
+ /**
+ * Creates a new AuditConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditConfig instance
+ */
+ public static create(properties?: google.iam.v1.IAuditConfig): google.iam.v1.AuditConfig;
+
+ /**
+ * Encodes the specified AuditConfig message. Does not implicitly {@link google.iam.v1.AuditConfig.verify|verify} messages.
+ * @param message AuditConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditConfig message, length delimited. Does not implicitly {@link google.iam.v1.AuditConfig.verify|verify} messages.
+ * @param message AuditConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditConfig;
+
+ /**
+ * Decodes an AuditConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditConfig;
+
+ /**
+ * Verifies an AuditConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditConfig;
+
+ /**
+ * Creates a plain object from an AuditConfig message. Also converts values to other types if specified.
+ * @param message AuditConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an AuditLogConfig. */
+ interface IAuditLogConfig {
+
+ /** AuditLogConfig logType */
+ logType?: (google.iam.v1.AuditLogConfig.LogType|keyof typeof google.iam.v1.AuditLogConfig.LogType|null);
+
+ /** AuditLogConfig exemptedMembers */
+ exemptedMembers?: (string[]|null);
+ }
+
+ /** Represents an AuditLogConfig. */
+ class AuditLogConfig implements IAuditLogConfig {
+
+ /**
+ * Constructs a new AuditLogConfig.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditLogConfig);
+
+ /** AuditLogConfig logType. */
+ public logType: (google.iam.v1.AuditLogConfig.LogType|keyof typeof google.iam.v1.AuditLogConfig.LogType);
+
+ /** AuditLogConfig exemptedMembers. */
+ public exemptedMembers: string[];
+
+ /**
+ * Creates a new AuditLogConfig instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditLogConfig instance
+ */
+ public static create(properties?: google.iam.v1.IAuditLogConfig): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Encodes the specified AuditLogConfig message. Does not implicitly {@link google.iam.v1.AuditLogConfig.verify|verify} messages.
+ * @param message AuditLogConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditLogConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditLogConfig message, length delimited. Does not implicitly {@link google.iam.v1.AuditLogConfig.verify|verify} messages.
+ * @param message AuditLogConfig message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditLogConfig, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditLogConfig message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditLogConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Decodes an AuditLogConfig message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditLogConfig
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Verifies an AuditLogConfig message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditLogConfig message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditLogConfig
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditLogConfig;
+
+ /**
+ * Creates a plain object from an AuditLogConfig message. Also converts values to other types if specified.
+ * @param message AuditLogConfig
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditLogConfig, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditLogConfig to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditLogConfig
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AuditLogConfig {
+
+ /** LogType enum. */
+ enum LogType {
+ LOG_TYPE_UNSPECIFIED = 0,
+ ADMIN_READ = 1,
+ DATA_WRITE = 2,
+ DATA_READ = 3
+ }
+ }
+
+ /** Properties of a PolicyDelta. */
+ interface IPolicyDelta {
+
+ /** PolicyDelta bindingDeltas */
+ bindingDeltas?: (google.iam.v1.IBindingDelta[]|null);
+
+ /** PolicyDelta auditConfigDeltas */
+ auditConfigDeltas?: (google.iam.v1.IAuditConfigDelta[]|null);
+ }
+
+ /** Represents a PolicyDelta. */
+ class PolicyDelta implements IPolicyDelta {
+
+ /**
+ * Constructs a new PolicyDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IPolicyDelta);
+
+ /** PolicyDelta bindingDeltas. */
+ public bindingDeltas: google.iam.v1.IBindingDelta[];
+
+ /** PolicyDelta auditConfigDeltas. */
+ public auditConfigDeltas: google.iam.v1.IAuditConfigDelta[];
+
+ /**
+ * Creates a new PolicyDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns PolicyDelta instance
+ */
+ public static create(properties?: google.iam.v1.IPolicyDelta): google.iam.v1.PolicyDelta;
+
+ /**
+ * Encodes the specified PolicyDelta message. Does not implicitly {@link google.iam.v1.PolicyDelta.verify|verify} messages.
+ * @param message PolicyDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IPolicyDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified PolicyDelta message, length delimited. Does not implicitly {@link google.iam.v1.PolicyDelta.verify|verify} messages.
+ * @param message PolicyDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IPolicyDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a PolicyDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns PolicyDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.PolicyDelta;
+
+ /**
+ * Decodes a PolicyDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns PolicyDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.PolicyDelta;
+
+ /**
+ * Verifies a PolicyDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a PolicyDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns PolicyDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.PolicyDelta;
+
+ /**
+ * Creates a plain object from a PolicyDelta message. Also converts values to other types if specified.
+ * @param message PolicyDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.PolicyDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this PolicyDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for PolicyDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a BindingDelta. */
+ interface IBindingDelta {
+
+ /** BindingDelta action */
+ action?: (google.iam.v1.BindingDelta.Action|keyof typeof google.iam.v1.BindingDelta.Action|null);
+
+ /** BindingDelta role */
+ role?: (string|null);
+
+ /** BindingDelta member */
+ member?: (string|null);
+
+ /** BindingDelta condition */
+ condition?: (google.type.IExpr|null);
+ }
+
+ /** Represents a BindingDelta. */
+ class BindingDelta implements IBindingDelta {
+
+ /**
+ * Constructs a new BindingDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IBindingDelta);
+
+ /** BindingDelta action. */
+ public action: (google.iam.v1.BindingDelta.Action|keyof typeof google.iam.v1.BindingDelta.Action);
+
+ /** BindingDelta role. */
+ public role: string;
+
+ /** BindingDelta member. */
+ public member: string;
+
+ /** BindingDelta condition. */
+ public condition?: (google.type.IExpr|null);
+
+ /**
+ * Creates a new BindingDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns BindingDelta instance
+ */
+ public static create(properties?: google.iam.v1.IBindingDelta): google.iam.v1.BindingDelta;
+
+ /**
+ * Encodes the specified BindingDelta message. Does not implicitly {@link google.iam.v1.BindingDelta.verify|verify} messages.
+ * @param message BindingDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IBindingDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified BindingDelta message, length delimited. Does not implicitly {@link google.iam.v1.BindingDelta.verify|verify} messages.
+ * @param message BindingDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IBindingDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a BindingDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns BindingDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.BindingDelta;
+
+ /**
+ * Decodes a BindingDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns BindingDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.BindingDelta;
+
+ /**
+ * Verifies a BindingDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a BindingDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns BindingDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.BindingDelta;
+
+ /**
+ * Creates a plain object from a BindingDelta message. Also converts values to other types if specified.
+ * @param message BindingDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.BindingDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this BindingDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for BindingDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace BindingDelta {
+
+ /** Action enum. */
+ enum Action {
+ ACTION_UNSPECIFIED = 0,
+ ADD = 1,
+ REMOVE = 2
+ }
+ }
+
+ /** Properties of an AuditConfigDelta. */
+ interface IAuditConfigDelta {
+
+ /** AuditConfigDelta action */
+ action?: (google.iam.v1.AuditConfigDelta.Action|keyof typeof google.iam.v1.AuditConfigDelta.Action|null);
+
+ /** AuditConfigDelta service */
+ service?: (string|null);
+
+ /** AuditConfigDelta exemptedMember */
+ exemptedMember?: (string|null);
+
+ /** AuditConfigDelta logType */
+ logType?: (string|null);
+ }
+
+ /** Represents an AuditConfigDelta. */
+ class AuditConfigDelta implements IAuditConfigDelta {
+
+ /**
+ * Constructs a new AuditConfigDelta.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.iam.v1.IAuditConfigDelta);
+
+ /** AuditConfigDelta action. */
+ public action: (google.iam.v1.AuditConfigDelta.Action|keyof typeof google.iam.v1.AuditConfigDelta.Action);
+
+ /** AuditConfigDelta service. */
+ public service: string;
+
+ /** AuditConfigDelta exemptedMember. */
+ public exemptedMember: string;
+
+ /** AuditConfigDelta logType. */
+ public logType: string;
+
+ /**
+ * Creates a new AuditConfigDelta instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns AuditConfigDelta instance
+ */
+ public static create(properties?: google.iam.v1.IAuditConfigDelta): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Encodes the specified AuditConfigDelta message. Does not implicitly {@link google.iam.v1.AuditConfigDelta.verify|verify} messages.
+ * @param message AuditConfigDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.iam.v1.IAuditConfigDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified AuditConfigDelta message, length delimited. Does not implicitly {@link google.iam.v1.AuditConfigDelta.verify|verify} messages.
+ * @param message AuditConfigDelta message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.iam.v1.IAuditConfigDelta, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an AuditConfigDelta message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns AuditConfigDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Decodes an AuditConfigDelta message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns AuditConfigDelta
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Verifies an AuditConfigDelta message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an AuditConfigDelta message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns AuditConfigDelta
+ */
+ public static fromObject(object: { [k: string]: any }): google.iam.v1.AuditConfigDelta;
+
+ /**
+ * Creates a plain object from an AuditConfigDelta message. Also converts values to other types if specified.
+ * @param message AuditConfigDelta
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.iam.v1.AuditConfigDelta, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this AuditConfigDelta to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for AuditConfigDelta
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ namespace AuditConfigDelta {
+
+ /** Action enum. */
+ enum Action {
+ ACTION_UNSPECIFIED = 0,
+ ADD = 1,
+ REMOVE = 2
+ }
+ }
+ }
+ }
+
+ /** Namespace type. */
+ namespace type {
+
+ /** Properties of an Expr. */
+ interface IExpr {
+
+ /** Expr expression */
+ expression?: (string|null);
+
+ /** Expr title */
+ title?: (string|null);
+
+ /** Expr description */
+ description?: (string|null);
+
+ /** Expr location */
+ location?: (string|null);
+ }
+
+ /** Represents an Expr. */
+ class Expr implements IExpr {
+
+ /**
+ * Constructs a new Expr.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.type.IExpr);
+
+ /** Expr expression. */
+ public expression: string;
+
+ /** Expr title. */
+ public title: string;
+
+ /** Expr description. */
+ public description: string;
+
+ /** Expr location. */
+ public location: string;
+
+ /**
+ * Creates a new Expr instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Expr instance
+ */
+ public static create(properties?: google.type.IExpr): google.type.Expr;
+
+ /**
+ * Encodes the specified Expr message. Does not implicitly {@link google.type.Expr.verify|verify} messages.
+ * @param message Expr message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.type.IExpr, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Expr message, length delimited. Does not implicitly {@link google.type.Expr.verify|verify} messages.
+ * @param message Expr message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.type.IExpr, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Expr message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Expr
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.type.Expr;
+
+ /**
+ * Decodes an Expr message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Expr
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.type.Expr;
+
+ /**
+ * Verifies an Expr message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Expr message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Expr
+ */
+ public static fromObject(object: { [k: string]: any }): google.type.Expr;
+
+ /**
+ * Creates a plain object from an Expr message. Also converts values to other types if specified.
+ * @param message Expr
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.type.Expr, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Expr to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Expr
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace longrunning. */
+ namespace longrunning {
+
+ /** Represents an Operations */
+ class Operations extends $protobuf.rpc.Service {
+
+ /**
+ * Constructs a new Operations service.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ */
+ constructor(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean);
+
+ /**
+ * Creates new Operations service using the specified rpc implementation.
+ * @param rpcImpl RPC implementation
+ * @param [requestDelimited=false] Whether requests are length-delimited
+ * @param [responseDelimited=false] Whether responses are length-delimited
+ * @returns RPC service. Useful where requests and/or responses are streamed.
+ */
+ public static create(rpcImpl: $protobuf.RPCImpl, requestDelimited?: boolean, responseDelimited?: boolean): Operations;
+
+ /**
+ * Calls ListOperations.
+ * @param request ListOperationsRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and ListOperationsResponse
+ */
+ public listOperations(request: google.longrunning.IListOperationsRequest, callback: google.longrunning.Operations.ListOperationsCallback): void;
+
+ /**
+ * Calls ListOperations.
+ * @param request ListOperationsRequest message or plain object
+ * @returns Promise
+ */
+ public listOperations(request: google.longrunning.IListOperationsRequest): Promise;
+
+ /**
+ * Calls GetOperation.
+ * @param request GetOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public getOperation(request: google.longrunning.IGetOperationRequest, callback: google.longrunning.Operations.GetOperationCallback): void;
+
+ /**
+ * Calls GetOperation.
+ * @param request GetOperationRequest message or plain object
+ * @returns Promise
+ */
+ public getOperation(request: google.longrunning.IGetOperationRequest): Promise;
+
+ /**
+ * Calls DeleteOperation.
+ * @param request DeleteOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public deleteOperation(request: google.longrunning.IDeleteOperationRequest, callback: google.longrunning.Operations.DeleteOperationCallback): void;
+
+ /**
+ * Calls DeleteOperation.
+ * @param request DeleteOperationRequest message or plain object
+ * @returns Promise
+ */
+ public deleteOperation(request: google.longrunning.IDeleteOperationRequest): Promise;
+
+ /**
+ * Calls CancelOperation.
+ * @param request CancelOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Empty
+ */
+ public cancelOperation(request: google.longrunning.ICancelOperationRequest, callback: google.longrunning.Operations.CancelOperationCallback): void;
+
+ /**
+ * Calls CancelOperation.
+ * @param request CancelOperationRequest message or plain object
+ * @returns Promise
+ */
+ public cancelOperation(request: google.longrunning.ICancelOperationRequest): Promise;
+
+ /**
+ * Calls WaitOperation.
+ * @param request WaitOperationRequest message or plain object
+ * @param callback Node-style callback called with the error, if any, and Operation
+ */
+ public waitOperation(request: google.longrunning.IWaitOperationRequest, callback: google.longrunning.Operations.WaitOperationCallback): void;
+
+ /**
+ * Calls WaitOperation.
+ * @param request WaitOperationRequest message or plain object
+ * @returns Promise
+ */
+ public waitOperation(request: google.longrunning.IWaitOperationRequest): Promise;
+ }
+
+ namespace Operations {
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|listOperations}.
+ * @param error Error, if any
+ * @param [response] ListOperationsResponse
+ */
+ type ListOperationsCallback = (error: (Error|null), response?: google.longrunning.ListOperationsResponse) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|getOperation}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type GetOperationCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|deleteOperation}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type DeleteOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|cancelOperation}.
+ * @param error Error, if any
+ * @param [response] Empty
+ */
+ type CancelOperationCallback = (error: (Error|null), response?: google.protobuf.Empty) => void;
+
+ /**
+ * Callback as used by {@link google.longrunning.Operations|waitOperation}.
+ * @param error Error, if any
+ * @param [response] Operation
+ */
+ type WaitOperationCallback = (error: (Error|null), response?: google.longrunning.Operation) => void;
+ }
+
+ /** Properties of an Operation. */
+ interface IOperation {
+
+ /** Operation name */
+ name?: (string|null);
+
+ /** Operation metadata */
+ metadata?: (google.protobuf.IAny|null);
+
+ /** Operation done */
+ done?: (boolean|null);
+
+ /** Operation error */
+ error?: (google.rpc.IStatus|null);
+
+ /** Operation response */
+ response?: (google.protobuf.IAny|null);
+ }
+
+ /** Represents an Operation. */
+ class Operation implements IOperation {
+
+ /**
+ * Constructs a new Operation.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IOperation);
+
+ /** Operation name. */
+ public name: string;
+
+ /** Operation metadata. */
+ public metadata?: (google.protobuf.IAny|null);
+
+ /** Operation done. */
+ public done: boolean;
+
+ /** Operation error. */
+ public error?: (google.rpc.IStatus|null);
+
+ /** Operation response. */
+ public response?: (google.protobuf.IAny|null);
+
+ /** Operation result. */
+ public result?: ("error"|"response");
+
+ /**
+ * Creates a new Operation instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Operation instance
+ */
+ public static create(properties?: google.longrunning.IOperation): google.longrunning.Operation;
+
+ /**
+ * Encodes the specified Operation message. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages.
+ * @param message Operation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Operation message, length delimited. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages.
+ * @param message Operation message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IOperation, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an Operation message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Operation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.Operation;
+
+ /**
+ * Decodes an Operation message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Operation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.Operation;
+
+ /**
+ * Verifies an Operation message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an Operation message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Operation
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.Operation;
+
+ /**
+ * Creates a plain object from an Operation message. Also converts values to other types if specified.
+ * @param message Operation
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.Operation, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Operation to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Operation
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a GetOperationRequest. */
+ interface IGetOperationRequest {
+
+ /** GetOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a GetOperationRequest. */
+ class GetOperationRequest implements IGetOperationRequest {
+
+ /**
+ * Constructs a new GetOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IGetOperationRequest);
+
+ /** GetOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new GetOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns GetOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.IGetOperationRequest): google.longrunning.GetOperationRequest;
+
+ /**
+ * Encodes the specified GetOperationRequest message. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages.
+ * @param message GetOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified GetOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages.
+ * @param message GetOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IGetOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a GetOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns GetOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.GetOperationRequest;
+
+ /**
+ * Decodes a GetOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns GetOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.GetOperationRequest;
+
+ /**
+ * Verifies a GetOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a GetOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns GetOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.GetOperationRequest;
+
+ /**
+ * Creates a plain object from a GetOperationRequest message. Also converts values to other types if specified.
+ * @param message GetOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.GetOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this GetOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for GetOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOperationsRequest. */
+ interface IListOperationsRequest {
+
+ /** ListOperationsRequest name */
+ name?: (string|null);
+
+ /** ListOperationsRequest filter */
+ filter?: (string|null);
+
+ /** ListOperationsRequest pageSize */
+ pageSize?: (number|null);
+
+ /** ListOperationsRequest pageToken */
+ pageToken?: (string|null);
+ }
+
+ /** Represents a ListOperationsRequest. */
+ class ListOperationsRequest implements IListOperationsRequest {
+
+ /**
+ * Constructs a new ListOperationsRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IListOperationsRequest);
+
+ /** ListOperationsRequest name. */
+ public name: string;
+
+ /** ListOperationsRequest filter. */
+ public filter: string;
+
+ /** ListOperationsRequest pageSize. */
+ public pageSize: number;
+
+ /** ListOperationsRequest pageToken. */
+ public pageToken: string;
+
+ /**
+ * Creates a new ListOperationsRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOperationsRequest instance
+ */
+ public static create(properties?: google.longrunning.IListOperationsRequest): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Encodes the specified ListOperationsRequest message. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages.
+ * @param message ListOperationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOperationsRequest message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages.
+ * @param message ListOperationsRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IListOperationsRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOperationsRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOperationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Decodes a ListOperationsRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOperationsRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Verifies a ListOperationsRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListOperationsRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOperationsRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.ListOperationsRequest;
+
+ /**
+ * Creates a plain object from a ListOperationsRequest message. Also converts values to other types if specified.
+ * @param message ListOperationsRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.ListOperationsRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOperationsRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOperationsRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a ListOperationsResponse. */
+ interface IListOperationsResponse {
+
+ /** ListOperationsResponse operations */
+ operations?: (google.longrunning.IOperation[]|null);
+
+ /** ListOperationsResponse nextPageToken */
+ nextPageToken?: (string|null);
+ }
+
+ /** Represents a ListOperationsResponse. */
+ class ListOperationsResponse implements IListOperationsResponse {
+
+ /**
+ * Constructs a new ListOperationsResponse.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IListOperationsResponse);
+
+ /** ListOperationsResponse operations. */
+ public operations: google.longrunning.IOperation[];
+
+ /** ListOperationsResponse nextPageToken. */
+ public nextPageToken: string;
+
+ /**
+ * Creates a new ListOperationsResponse instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns ListOperationsResponse instance
+ */
+ public static create(properties?: google.longrunning.IListOperationsResponse): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Encodes the specified ListOperationsResponse message. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages.
+ * @param message ListOperationsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified ListOperationsResponse message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages.
+ * @param message ListOperationsResponse message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IListOperationsResponse, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a ListOperationsResponse message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns ListOperationsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Decodes a ListOperationsResponse message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns ListOperationsResponse
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Verifies a ListOperationsResponse message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a ListOperationsResponse message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns ListOperationsResponse
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.ListOperationsResponse;
+
+ /**
+ * Creates a plain object from a ListOperationsResponse message. Also converts values to other types if specified.
+ * @param message ListOperationsResponse
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.ListOperationsResponse, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this ListOperationsResponse to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for ListOperationsResponse
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a CancelOperationRequest. */
+ interface ICancelOperationRequest {
+
+ /** CancelOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a CancelOperationRequest. */
+ class CancelOperationRequest implements ICancelOperationRequest {
+
+ /**
+ * Constructs a new CancelOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.ICancelOperationRequest);
+
+ /** CancelOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new CancelOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns CancelOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.ICancelOperationRequest): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Encodes the specified CancelOperationRequest message. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages.
+ * @param message CancelOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified CancelOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages.
+ * @param message CancelOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.ICancelOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a CancelOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns CancelOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Decodes a CancelOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns CancelOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Verifies a CancelOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a CancelOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns CancelOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.CancelOperationRequest;
+
+ /**
+ * Creates a plain object from a CancelOperationRequest message. Also converts values to other types if specified.
+ * @param message CancelOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.CancelOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this CancelOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for CancelOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a DeleteOperationRequest. */
+ interface IDeleteOperationRequest {
+
+ /** DeleteOperationRequest name */
+ name?: (string|null);
+ }
+
+ /** Represents a DeleteOperationRequest. */
+ class DeleteOperationRequest implements IDeleteOperationRequest {
+
+ /**
+ * Constructs a new DeleteOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IDeleteOperationRequest);
+
+ /** DeleteOperationRequest name. */
+ public name: string;
+
+ /**
+ * Creates a new DeleteOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns DeleteOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.IDeleteOperationRequest): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Encodes the specified DeleteOperationRequest message. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages.
+ * @param message DeleteOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IDeleteOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified DeleteOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages.
+ * @param message DeleteOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IDeleteOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a DeleteOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns DeleteOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Decodes a DeleteOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns DeleteOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Verifies a DeleteOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a DeleteOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns DeleteOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.DeleteOperationRequest;
+
+ /**
+ * Creates a plain object from a DeleteOperationRequest message. Also converts values to other types if specified.
+ * @param message DeleteOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.DeleteOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this DeleteOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for DeleteOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of a WaitOperationRequest. */
+ interface IWaitOperationRequest {
+
+ /** WaitOperationRequest name */
+ name?: (string|null);
+
+ /** WaitOperationRequest timeout */
+ timeout?: (google.protobuf.IDuration|null);
+ }
+
+ /** Represents a WaitOperationRequest. */
+ class WaitOperationRequest implements IWaitOperationRequest {
+
+ /**
+ * Constructs a new WaitOperationRequest.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IWaitOperationRequest);
+
+ /** WaitOperationRequest name. */
+ public name: string;
+
+ /** WaitOperationRequest timeout. */
+ public timeout?: (google.protobuf.IDuration|null);
+
+ /**
+ * Creates a new WaitOperationRequest instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns WaitOperationRequest instance
+ */
+ public static create(properties?: google.longrunning.IWaitOperationRequest): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Encodes the specified WaitOperationRequest message. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages.
+ * @param message WaitOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IWaitOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified WaitOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages.
+ * @param message WaitOperationRequest message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IWaitOperationRequest, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a WaitOperationRequest message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns WaitOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Decodes a WaitOperationRequest message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns WaitOperationRequest
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Verifies a WaitOperationRequest message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a WaitOperationRequest message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns WaitOperationRequest
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.WaitOperationRequest;
+
+ /**
+ * Creates a plain object from a WaitOperationRequest message. Also converts values to other types if specified.
+ * @param message WaitOperationRequest
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.WaitOperationRequest, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this WaitOperationRequest to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for WaitOperationRequest
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+
+ /** Properties of an OperationInfo. */
+ interface IOperationInfo {
+
+ /** OperationInfo responseType */
+ responseType?: (string|null);
+
+ /** OperationInfo metadataType */
+ metadataType?: (string|null);
+ }
+
+ /** Represents an OperationInfo. */
+ class OperationInfo implements IOperationInfo {
+
+ /**
+ * Constructs a new OperationInfo.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.longrunning.IOperationInfo);
+
+ /** OperationInfo responseType. */
+ public responseType: string;
+
+ /** OperationInfo metadataType. */
+ public metadataType: string;
+
+ /**
+ * Creates a new OperationInfo instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns OperationInfo instance
+ */
+ public static create(properties?: google.longrunning.IOperationInfo): google.longrunning.OperationInfo;
+
+ /**
+ * Encodes the specified OperationInfo message. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages.
+ * @param message OperationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.longrunning.IOperationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified OperationInfo message, length delimited. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages.
+ * @param message OperationInfo message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.longrunning.IOperationInfo, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes an OperationInfo message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns OperationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.longrunning.OperationInfo;
+
+ /**
+ * Decodes an OperationInfo message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns OperationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.longrunning.OperationInfo;
+
+ /**
+ * Verifies an OperationInfo message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates an OperationInfo message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns OperationInfo
+ */
+ public static fromObject(object: { [k: string]: any }): google.longrunning.OperationInfo;
+
+ /**
+ * Creates a plain object from an OperationInfo message. Also converts values to other types if specified.
+ * @param message OperationInfo
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.longrunning.OperationInfo, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this OperationInfo to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for OperationInfo
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+
+ /** Namespace rpc. */
+ namespace rpc {
+
+ /** Properties of a Status. */
+ interface IStatus {
+
+ /** Status code */
+ code?: (number|null);
+
+ /** Status message */
+ message?: (string|null);
+
+ /** Status details */
+ details?: (google.protobuf.IAny[]|null);
+ }
+
+ /** Represents a Status. */
+ class Status implements IStatus {
+
+ /**
+ * Constructs a new Status.
+ * @param [properties] Properties to set
+ */
+ constructor(properties?: google.rpc.IStatus);
+
+ /** Status code. */
+ public code: number;
+
+ /** Status message. */
+ public message: string;
+
+ /** Status details. */
+ public details: google.protobuf.IAny[];
+
+ /**
+ * Creates a new Status instance using the specified properties.
+ * @param [properties] Properties to set
+ * @returns Status instance
+ */
+ public static create(properties?: google.rpc.IStatus): google.rpc.Status;
+
+ /**
+ * Encodes the specified Status message. Does not implicitly {@link google.rpc.Status.verify|verify} messages.
+ * @param message Status message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encode(message: google.rpc.IStatus, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Encodes the specified Status message, length delimited. Does not implicitly {@link google.rpc.Status.verify|verify} messages.
+ * @param message Status message or plain object to encode
+ * @param [writer] Writer to encode to
+ * @returns Writer
+ */
+ public static encodeDelimited(message: google.rpc.IStatus, writer?: $protobuf.Writer): $protobuf.Writer;
+
+ /**
+ * Decodes a Status message from the specified reader or buffer.
+ * @param reader Reader or buffer to decode from
+ * @param [length] Message length if known beforehand
+ * @returns Status
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): google.rpc.Status;
+
+ /**
+ * Decodes a Status message from the specified reader or buffer, length delimited.
+ * @param reader Reader or buffer to decode from
+ * @returns Status
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): google.rpc.Status;
+
+ /**
+ * Verifies a Status message.
+ * @param message Plain object to verify
+ * @returns `null` if valid, otherwise the reason why it is not
+ */
+ public static verify(message: { [k: string]: any }): (string|null);
+
+ /**
+ * Creates a Status message from a plain object. Also converts values to their respective internal types.
+ * @param object Plain object
+ * @returns Status
+ */
+ public static fromObject(object: { [k: string]: any }): google.rpc.Status;
+
+ /**
+ * Creates a plain object from a Status message. Also converts values to other types if specified.
+ * @param message Status
+ * @param [options] Conversion options
+ * @returns Plain object
+ */
+ public static toObject(message: google.rpc.Status, options?: $protobuf.IConversionOptions): { [k: string]: any };
+
+ /**
+ * Converts this Status to JSON.
+ * @returns JSON object
+ */
+ public toJSON(): { [k: string]: any };
+
+ /**
+ * Gets the default type url for Status
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns The default type url
+ */
+ public static getTypeUrl(typeUrlPrefix?: string): string;
+ }
+ }
+}
diff --git a/packages/google-cloud-securitycenter/protos/protos.js b/packages/google-cloud-securitycenter/protos/protos.js
new file mode 100644
index 00000000000..f795d9fc918
--- /dev/null
+++ b/packages/google-cloud-securitycenter/protos/protos.js
@@ -0,0 +1,72173 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
+(function(global, factory) { /* global define, require, module */
+
+ /* AMD */ if (typeof define === 'function' && define.amd)
+ define(["protobufjs/minimal"], factory);
+
+ /* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports)
+ module.exports = factory(require("google-gax/build/src/protobuf").protobufMinimal);
+
+})(this, function($protobuf) {
+ "use strict";
+
+ // Common aliases
+ var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util;
+
+ // Exported root namespace
+ var $root = $protobuf.roots._google_cloud_security_center_protos || ($protobuf.roots._google_cloud_security_center_protos = {});
+
+ $root.google = (function() {
+
+ /**
+ * Namespace google.
+ * @exports google
+ * @namespace
+ */
+ var google = {};
+
+ google.cloud = (function() {
+
+ /**
+ * Namespace cloud.
+ * @memberof google
+ * @namespace
+ */
+ var cloud = {};
+
+ cloud.securitycenter = (function() {
+
+ /**
+ * Namespace securitycenter.
+ * @memberof google.cloud
+ * @namespace
+ */
+ var securitycenter = {};
+
+ securitycenter.v1 = (function() {
+
+ /**
+ * Namespace v1.
+ * @memberof google.cloud.securitycenter
+ * @namespace
+ */
+ var v1 = {};
+
+ v1.Access = (function() {
+
+ /**
+ * Properties of an Access.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IAccess
+ * @property {string|null} [principalEmail] Access principalEmail
+ * @property {string|null} [callerIp] Access callerIp
+ * @property {google.cloud.securitycenter.v1.IGeolocation|null} [callerIpGeo] Access callerIpGeo
+ * @property {string|null} [userAgentFamily] Access userAgentFamily
+ * @property {string|null} [serviceName] Access serviceName
+ * @property {string|null} [methodName] Access methodName
+ * @property {string|null} [principalSubject] Access principalSubject
+ * @property {string|null} [serviceAccountKeyName] Access serviceAccountKeyName
+ * @property {Array.|null} [serviceAccountDelegationInfo] Access serviceAccountDelegationInfo
+ */
+
+ /**
+ * Constructs a new Access.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents an Access.
+ * @implements IAccess
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IAccess=} [properties] Properties to set
+ */
+ function Access(properties) {
+ this.serviceAccountDelegationInfo = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Access principalEmail.
+ * @member {string} principalEmail
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.principalEmail = "";
+
+ /**
+ * Access callerIp.
+ * @member {string} callerIp
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.callerIp = "";
+
+ /**
+ * Access callerIpGeo.
+ * @member {google.cloud.securitycenter.v1.IGeolocation|null|undefined} callerIpGeo
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.callerIpGeo = null;
+
+ /**
+ * Access userAgentFamily.
+ * @member {string} userAgentFamily
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.userAgentFamily = "";
+
+ /**
+ * Access serviceName.
+ * @member {string} serviceName
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.serviceName = "";
+
+ /**
+ * Access methodName.
+ * @member {string} methodName
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.methodName = "";
+
+ /**
+ * Access principalSubject.
+ * @member {string} principalSubject
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.principalSubject = "";
+
+ /**
+ * Access serviceAccountKeyName.
+ * @member {string} serviceAccountKeyName
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.serviceAccountKeyName = "";
+
+ /**
+ * Access serviceAccountDelegationInfo.
+ * @member {Array.} serviceAccountDelegationInfo
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ */
+ Access.prototype.serviceAccountDelegationInfo = $util.emptyArray;
+
+ /**
+ * Creates a new Access instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {google.cloud.securitycenter.v1.IAccess=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Access} Access instance
+ */
+ Access.create = function create(properties) {
+ return new Access(properties);
+ };
+
+ /**
+ * Encodes the specified Access message. Does not implicitly {@link google.cloud.securitycenter.v1.Access.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {google.cloud.securitycenter.v1.IAccess} message Access message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Access.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.principalEmail != null && Object.hasOwnProperty.call(message, "principalEmail"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.principalEmail);
+ if (message.callerIp != null && Object.hasOwnProperty.call(message, "callerIp"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.callerIp);
+ if (message.callerIpGeo != null && Object.hasOwnProperty.call(message, "callerIpGeo"))
+ $root.google.cloud.securitycenter.v1.Geolocation.encode(message.callerIpGeo, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
+ if (message.userAgentFamily != null && Object.hasOwnProperty.call(message, "userAgentFamily"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.userAgentFamily);
+ if (message.serviceName != null && Object.hasOwnProperty.call(message, "serviceName"))
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.serviceName);
+ if (message.methodName != null && Object.hasOwnProperty.call(message, "methodName"))
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.methodName);
+ if (message.principalSubject != null && Object.hasOwnProperty.call(message, "principalSubject"))
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.principalSubject);
+ if (message.serviceAccountKeyName != null && Object.hasOwnProperty.call(message, "serviceAccountKeyName"))
+ writer.uint32(/* id 8, wireType 2 =*/66).string(message.serviceAccountKeyName);
+ if (message.serviceAccountDelegationInfo != null && message.serviceAccountDelegationInfo.length)
+ for (var i = 0; i < message.serviceAccountDelegationInfo.length; ++i)
+ $root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.encode(message.serviceAccountDelegationInfo[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Access message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Access.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {google.cloud.securitycenter.v1.IAccess} message Access message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Access.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an Access message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Access} Access
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Access.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Access();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.principalEmail = reader.string();
+ break;
+ }
+ case 2: {
+ message.callerIp = reader.string();
+ break;
+ }
+ case 3: {
+ message.callerIpGeo = $root.google.cloud.securitycenter.v1.Geolocation.decode(reader, reader.uint32());
+ break;
+ }
+ case 4: {
+ message.userAgentFamily = reader.string();
+ break;
+ }
+ case 5: {
+ message.serviceName = reader.string();
+ break;
+ }
+ case 6: {
+ message.methodName = reader.string();
+ break;
+ }
+ case 7: {
+ message.principalSubject = reader.string();
+ break;
+ }
+ case 8: {
+ message.serviceAccountKeyName = reader.string();
+ break;
+ }
+ case 9: {
+ if (!(message.serviceAccountDelegationInfo && message.serviceAccountDelegationInfo.length))
+ message.serviceAccountDelegationInfo = [];
+ message.serviceAccountDelegationInfo.push($root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an Access message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Access} Access
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Access.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an Access message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Access.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.principalEmail != null && message.hasOwnProperty("principalEmail"))
+ if (!$util.isString(message.principalEmail))
+ return "principalEmail: string expected";
+ if (message.callerIp != null && message.hasOwnProperty("callerIp"))
+ if (!$util.isString(message.callerIp))
+ return "callerIp: string expected";
+ if (message.callerIpGeo != null && message.hasOwnProperty("callerIpGeo")) {
+ var error = $root.google.cloud.securitycenter.v1.Geolocation.verify(message.callerIpGeo);
+ if (error)
+ return "callerIpGeo." + error;
+ }
+ if (message.userAgentFamily != null && message.hasOwnProperty("userAgentFamily"))
+ if (!$util.isString(message.userAgentFamily))
+ return "userAgentFamily: string expected";
+ if (message.serviceName != null && message.hasOwnProperty("serviceName"))
+ if (!$util.isString(message.serviceName))
+ return "serviceName: string expected";
+ if (message.methodName != null && message.hasOwnProperty("methodName"))
+ if (!$util.isString(message.methodName))
+ return "methodName: string expected";
+ if (message.principalSubject != null && message.hasOwnProperty("principalSubject"))
+ if (!$util.isString(message.principalSubject))
+ return "principalSubject: string expected";
+ if (message.serviceAccountKeyName != null && message.hasOwnProperty("serviceAccountKeyName"))
+ if (!$util.isString(message.serviceAccountKeyName))
+ return "serviceAccountKeyName: string expected";
+ if (message.serviceAccountDelegationInfo != null && message.hasOwnProperty("serviceAccountDelegationInfo")) {
+ if (!Array.isArray(message.serviceAccountDelegationInfo))
+ return "serviceAccountDelegationInfo: array expected";
+ for (var i = 0; i < message.serviceAccountDelegationInfo.length; ++i) {
+ var error = $root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.verify(message.serviceAccountDelegationInfo[i]);
+ if (error)
+ return "serviceAccountDelegationInfo." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an Access message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Access} Access
+ */
+ Access.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Access)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Access();
+ if (object.principalEmail != null)
+ message.principalEmail = String(object.principalEmail);
+ if (object.callerIp != null)
+ message.callerIp = String(object.callerIp);
+ if (object.callerIpGeo != null) {
+ if (typeof object.callerIpGeo !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Access.callerIpGeo: object expected");
+ message.callerIpGeo = $root.google.cloud.securitycenter.v1.Geolocation.fromObject(object.callerIpGeo);
+ }
+ if (object.userAgentFamily != null)
+ message.userAgentFamily = String(object.userAgentFamily);
+ if (object.serviceName != null)
+ message.serviceName = String(object.serviceName);
+ if (object.methodName != null)
+ message.methodName = String(object.methodName);
+ if (object.principalSubject != null)
+ message.principalSubject = String(object.principalSubject);
+ if (object.serviceAccountKeyName != null)
+ message.serviceAccountKeyName = String(object.serviceAccountKeyName);
+ if (object.serviceAccountDelegationInfo) {
+ if (!Array.isArray(object.serviceAccountDelegationInfo))
+ throw TypeError(".google.cloud.securitycenter.v1.Access.serviceAccountDelegationInfo: array expected");
+ message.serviceAccountDelegationInfo = [];
+ for (var i = 0; i < object.serviceAccountDelegationInfo.length; ++i) {
+ if (typeof object.serviceAccountDelegationInfo[i] !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Access.serviceAccountDelegationInfo: object expected");
+ message.serviceAccountDelegationInfo[i] = $root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.fromObject(object.serviceAccountDelegationInfo[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an Access message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {google.cloud.securitycenter.v1.Access} message Access
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Access.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.serviceAccountDelegationInfo = [];
+ if (options.defaults) {
+ object.principalEmail = "";
+ object.callerIp = "";
+ object.callerIpGeo = null;
+ object.userAgentFamily = "";
+ object.serviceName = "";
+ object.methodName = "";
+ object.principalSubject = "";
+ object.serviceAccountKeyName = "";
+ }
+ if (message.principalEmail != null && message.hasOwnProperty("principalEmail"))
+ object.principalEmail = message.principalEmail;
+ if (message.callerIp != null && message.hasOwnProperty("callerIp"))
+ object.callerIp = message.callerIp;
+ if (message.callerIpGeo != null && message.hasOwnProperty("callerIpGeo"))
+ object.callerIpGeo = $root.google.cloud.securitycenter.v1.Geolocation.toObject(message.callerIpGeo, options);
+ if (message.userAgentFamily != null && message.hasOwnProperty("userAgentFamily"))
+ object.userAgentFamily = message.userAgentFamily;
+ if (message.serviceName != null && message.hasOwnProperty("serviceName"))
+ object.serviceName = message.serviceName;
+ if (message.methodName != null && message.hasOwnProperty("methodName"))
+ object.methodName = message.methodName;
+ if (message.principalSubject != null && message.hasOwnProperty("principalSubject"))
+ object.principalSubject = message.principalSubject;
+ if (message.serviceAccountKeyName != null && message.hasOwnProperty("serviceAccountKeyName"))
+ object.serviceAccountKeyName = message.serviceAccountKeyName;
+ if (message.serviceAccountDelegationInfo && message.serviceAccountDelegationInfo.length) {
+ object.serviceAccountDelegationInfo = [];
+ for (var j = 0; j < message.serviceAccountDelegationInfo.length; ++j)
+ object.serviceAccountDelegationInfo[j] = $root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.toObject(message.serviceAccountDelegationInfo[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Access to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Access.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Access
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Access
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Access.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Access";
+ };
+
+ return Access;
+ })();
+
+ v1.ServiceAccountDelegationInfo = (function() {
+
+ /**
+ * Properties of a ServiceAccountDelegationInfo.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IServiceAccountDelegationInfo
+ * @property {string|null} [principalEmail] ServiceAccountDelegationInfo principalEmail
+ * @property {string|null} [principalSubject] ServiceAccountDelegationInfo principalSubject
+ */
+
+ /**
+ * Constructs a new ServiceAccountDelegationInfo.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a ServiceAccountDelegationInfo.
+ * @implements IServiceAccountDelegationInfo
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IServiceAccountDelegationInfo=} [properties] Properties to set
+ */
+ function ServiceAccountDelegationInfo(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ServiceAccountDelegationInfo principalEmail.
+ * @member {string} principalEmail
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @instance
+ */
+ ServiceAccountDelegationInfo.prototype.principalEmail = "";
+
+ /**
+ * ServiceAccountDelegationInfo principalSubject.
+ * @member {string} principalSubject
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @instance
+ */
+ ServiceAccountDelegationInfo.prototype.principalSubject = "";
+
+ /**
+ * Creates a new ServiceAccountDelegationInfo instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {google.cloud.securitycenter.v1.IServiceAccountDelegationInfo=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.ServiceAccountDelegationInfo} ServiceAccountDelegationInfo instance
+ */
+ ServiceAccountDelegationInfo.create = function create(properties) {
+ return new ServiceAccountDelegationInfo(properties);
+ };
+
+ /**
+ * Encodes the specified ServiceAccountDelegationInfo message. Does not implicitly {@link google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {google.cloud.securitycenter.v1.IServiceAccountDelegationInfo} message ServiceAccountDelegationInfo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ServiceAccountDelegationInfo.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.principalEmail != null && Object.hasOwnProperty.call(message, "principalEmail"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.principalEmail);
+ if (message.principalSubject != null && Object.hasOwnProperty.call(message, "principalSubject"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.principalSubject);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ServiceAccountDelegationInfo message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ServiceAccountDelegationInfo.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {google.cloud.securitycenter.v1.IServiceAccountDelegationInfo} message ServiceAccountDelegationInfo message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ServiceAccountDelegationInfo.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ServiceAccountDelegationInfo message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.ServiceAccountDelegationInfo} ServiceAccountDelegationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ServiceAccountDelegationInfo.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.principalEmail = reader.string();
+ break;
+ }
+ case 2: {
+ message.principalSubject = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ServiceAccountDelegationInfo message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.ServiceAccountDelegationInfo} ServiceAccountDelegationInfo
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ServiceAccountDelegationInfo.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ServiceAccountDelegationInfo message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ServiceAccountDelegationInfo.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.principalEmail != null && message.hasOwnProperty("principalEmail"))
+ if (!$util.isString(message.principalEmail))
+ return "principalEmail: string expected";
+ if (message.principalSubject != null && message.hasOwnProperty("principalSubject"))
+ if (!$util.isString(message.principalSubject))
+ return "principalSubject: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a ServiceAccountDelegationInfo message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.ServiceAccountDelegationInfo} ServiceAccountDelegationInfo
+ */
+ ServiceAccountDelegationInfo.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.ServiceAccountDelegationInfo();
+ if (object.principalEmail != null)
+ message.principalEmail = String(object.principalEmail);
+ if (object.principalSubject != null)
+ message.principalSubject = String(object.principalSubject);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ServiceAccountDelegationInfo message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {google.cloud.securitycenter.v1.ServiceAccountDelegationInfo} message ServiceAccountDelegationInfo
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ServiceAccountDelegationInfo.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.principalEmail = "";
+ object.principalSubject = "";
+ }
+ if (message.principalEmail != null && message.hasOwnProperty("principalEmail"))
+ object.principalEmail = message.principalEmail;
+ if (message.principalSubject != null && message.hasOwnProperty("principalSubject"))
+ object.principalSubject = message.principalSubject;
+ return object;
+ };
+
+ /**
+ * Converts this ServiceAccountDelegationInfo to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ServiceAccountDelegationInfo.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ServiceAccountDelegationInfo
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.ServiceAccountDelegationInfo
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ServiceAccountDelegationInfo.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.ServiceAccountDelegationInfo";
+ };
+
+ return ServiceAccountDelegationInfo;
+ })();
+
+ v1.Geolocation = (function() {
+
+ /**
+ * Properties of a Geolocation.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IGeolocation
+ * @property {string|null} [regionCode] Geolocation regionCode
+ */
+
+ /**
+ * Constructs a new Geolocation.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Geolocation.
+ * @implements IGeolocation
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IGeolocation=} [properties] Properties to set
+ */
+ function Geolocation(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Geolocation regionCode.
+ * @member {string} regionCode
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @instance
+ */
+ Geolocation.prototype.regionCode = "";
+
+ /**
+ * Creates a new Geolocation instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {google.cloud.securitycenter.v1.IGeolocation=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Geolocation} Geolocation instance
+ */
+ Geolocation.create = function create(properties) {
+ return new Geolocation(properties);
+ };
+
+ /**
+ * Encodes the specified Geolocation message. Does not implicitly {@link google.cloud.securitycenter.v1.Geolocation.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {google.cloud.securitycenter.v1.IGeolocation} message Geolocation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Geolocation.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.regionCode != null && Object.hasOwnProperty.call(message, "regionCode"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.regionCode);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Geolocation message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Geolocation.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {google.cloud.securitycenter.v1.IGeolocation} message Geolocation message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Geolocation.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Geolocation message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Geolocation} Geolocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Geolocation.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Geolocation();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.regionCode = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Geolocation message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Geolocation} Geolocation
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Geolocation.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Geolocation message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Geolocation.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.regionCode != null && message.hasOwnProperty("regionCode"))
+ if (!$util.isString(message.regionCode))
+ return "regionCode: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Geolocation message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Geolocation} Geolocation
+ */
+ Geolocation.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Geolocation)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Geolocation();
+ if (object.regionCode != null)
+ message.regionCode = String(object.regionCode);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Geolocation message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {google.cloud.securitycenter.v1.Geolocation} message Geolocation
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Geolocation.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.regionCode = "";
+ if (message.regionCode != null && message.hasOwnProperty("regionCode"))
+ object.regionCode = message.regionCode;
+ return object;
+ };
+
+ /**
+ * Converts this Geolocation to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Geolocation.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Geolocation
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Geolocation
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Geolocation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Geolocation";
+ };
+
+ return Geolocation;
+ })();
+
+ v1.Asset = (function() {
+
+ /**
+ * Properties of an Asset.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IAsset
+ * @property {string|null} [name] Asset name
+ * @property {google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties|null} [securityCenterProperties] Asset securityCenterProperties
+ * @property {Object.|null} [resourceProperties] Asset resourceProperties
+ * @property {google.cloud.securitycenter.v1.ISecurityMarks|null} [securityMarks] Asset securityMarks
+ * @property {google.protobuf.ITimestamp|null} [createTime] Asset createTime
+ * @property {google.protobuf.ITimestamp|null} [updateTime] Asset updateTime
+ * @property {google.cloud.securitycenter.v1.Asset.IIamPolicy|null} [iamPolicy] Asset iamPolicy
+ * @property {string|null} [canonicalName] Asset canonicalName
+ */
+
+ /**
+ * Constructs a new Asset.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents an Asset.
+ * @implements IAsset
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IAsset=} [properties] Properties to set
+ */
+ function Asset(properties) {
+ this.resourceProperties = {};
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Asset name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.name = "";
+
+ /**
+ * Asset securityCenterProperties.
+ * @member {google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties|null|undefined} securityCenterProperties
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.securityCenterProperties = null;
+
+ /**
+ * Asset resourceProperties.
+ * @member {Object.} resourceProperties
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.resourceProperties = $util.emptyObject;
+
+ /**
+ * Asset securityMarks.
+ * @member {google.cloud.securitycenter.v1.ISecurityMarks|null|undefined} securityMarks
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.securityMarks = null;
+
+ /**
+ * Asset createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.createTime = null;
+
+ /**
+ * Asset updateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} updateTime
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.updateTime = null;
+
+ /**
+ * Asset iamPolicy.
+ * @member {google.cloud.securitycenter.v1.Asset.IIamPolicy|null|undefined} iamPolicy
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.iamPolicy = null;
+
+ /**
+ * Asset canonicalName.
+ * @member {string} canonicalName
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ */
+ Asset.prototype.canonicalName = "";
+
+ /**
+ * Creates a new Asset instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {google.cloud.securitycenter.v1.IAsset=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Asset} Asset instance
+ */
+ Asset.create = function create(properties) {
+ return new Asset(properties);
+ };
+
+ /**
+ * Encodes the specified Asset message. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {google.cloud.securitycenter.v1.IAsset} message Asset message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Asset.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.securityCenterProperties != null && Object.hasOwnProperty.call(message, "securityCenterProperties"))
+ $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.encode(message.securityCenterProperties, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ if (message.resourceProperties != null && Object.hasOwnProperty.call(message, "resourceProperties"))
+ for (var keys = Object.keys(message.resourceProperties), i = 0; i < keys.length; ++i) {
+ writer.uint32(/* id 7, wireType 2 =*/58).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]);
+ $root.google.protobuf.Value.encode(message.resourceProperties[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim();
+ }
+ if (message.securityMarks != null && Object.hasOwnProperty.call(message, "securityMarks"))
+ $root.google.cloud.securitycenter.v1.SecurityMarks.encode(message.securityMarks, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
+ if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
+ if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
+ $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
+ if (message.iamPolicy != null && Object.hasOwnProperty.call(message, "iamPolicy"))
+ $root.google.cloud.securitycenter.v1.Asset.IamPolicy.encode(message.iamPolicy, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
+ if (message.canonicalName != null && Object.hasOwnProperty.call(message, "canonicalName"))
+ writer.uint32(/* id 13, wireType 2 =*/106).string(message.canonicalName);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Asset message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {google.cloud.securitycenter.v1.IAsset} message Asset message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Asset.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Asset} Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Asset.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Asset(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.securityCenterProperties = $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.decode(reader, reader.uint32());
+ break;
+ }
+ case 7: {
+ if (message.resourceProperties === $util.emptyObject)
+ message.resourceProperties = {};
+ var end2 = reader.uint32() + reader.pos;
+ key = "";
+ value = null;
+ while (reader.pos < end2) {
+ var tag2 = reader.uint32();
+ switch (tag2 >>> 3) {
+ case 1:
+ key = reader.string();
+ break;
+ case 2:
+ value = $root.google.protobuf.Value.decode(reader, reader.uint32());
+ break;
+ default:
+ reader.skipType(tag2 & 7);
+ break;
+ }
+ }
+ message.resourceProperties[key] = value;
+ break;
+ }
+ case 8: {
+ message.securityMarks = $root.google.cloud.securitycenter.v1.SecurityMarks.decode(reader, reader.uint32());
+ break;
+ }
+ case 9: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 10: {
+ message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 11: {
+ message.iamPolicy = $root.google.cloud.securitycenter.v1.Asset.IamPolicy.decode(reader, reader.uint32());
+ break;
+ }
+ case 13: {
+ message.canonicalName = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an Asset message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Asset} Asset
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Asset.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an Asset message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Asset.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.securityCenterProperties != null && message.hasOwnProperty("securityCenterProperties")) {
+ var error = $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.verify(message.securityCenterProperties);
+ if (error)
+ return "securityCenterProperties." + error;
+ }
+ if (message.resourceProperties != null && message.hasOwnProperty("resourceProperties")) {
+ if (!$util.isObject(message.resourceProperties))
+ return "resourceProperties: object expected";
+ var key = Object.keys(message.resourceProperties);
+ for (var i = 0; i < key.length; ++i) {
+ var error = $root.google.protobuf.Value.verify(message.resourceProperties[key[i]]);
+ if (error)
+ return "resourceProperties." + error;
+ }
+ }
+ if (message.securityMarks != null && message.hasOwnProperty("securityMarks")) {
+ var error = $root.google.cloud.securitycenter.v1.SecurityMarks.verify(message.securityMarks);
+ if (error)
+ return "securityMarks." + error;
+ }
+ if (message.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.updateTime != null && message.hasOwnProperty("updateTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.updateTime);
+ if (error)
+ return "updateTime." + error;
+ }
+ if (message.iamPolicy != null && message.hasOwnProperty("iamPolicy")) {
+ var error = $root.google.cloud.securitycenter.v1.Asset.IamPolicy.verify(message.iamPolicy);
+ if (error)
+ return "iamPolicy." + error;
+ }
+ if (message.canonicalName != null && message.hasOwnProperty("canonicalName"))
+ if (!$util.isString(message.canonicalName))
+ return "canonicalName: string expected";
+ return null;
+ };
+
+ /**
+ * Creates an Asset message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Asset} Asset
+ */
+ Asset.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Asset)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Asset();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.securityCenterProperties != null) {
+ if (typeof object.securityCenterProperties !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.securityCenterProperties: object expected");
+ message.securityCenterProperties = $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.fromObject(object.securityCenterProperties);
+ }
+ if (object.resourceProperties) {
+ if (typeof object.resourceProperties !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.resourceProperties: object expected");
+ message.resourceProperties = {};
+ for (var keys = Object.keys(object.resourceProperties), i = 0; i < keys.length; ++i) {
+ if (typeof object.resourceProperties[keys[i]] !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.resourceProperties: object expected");
+ message.resourceProperties[keys[i]] = $root.google.protobuf.Value.fromObject(object.resourceProperties[keys[i]]);
+ }
+ }
+ if (object.securityMarks != null) {
+ if (typeof object.securityMarks !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.securityMarks: object expected");
+ message.securityMarks = $root.google.cloud.securitycenter.v1.SecurityMarks.fromObject(object.securityMarks);
+ }
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.updateTime != null) {
+ if (typeof object.updateTime !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.updateTime: object expected");
+ message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
+ }
+ if (object.iamPolicy != null) {
+ if (typeof object.iamPolicy !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.iamPolicy: object expected");
+ message.iamPolicy = $root.google.cloud.securitycenter.v1.Asset.IamPolicy.fromObject(object.iamPolicy);
+ }
+ if (object.canonicalName != null)
+ message.canonicalName = String(object.canonicalName);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an Asset message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset} message Asset
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Asset.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.resourceProperties = {};
+ if (options.defaults) {
+ object.name = "";
+ object.securityCenterProperties = null;
+ object.securityMarks = null;
+ object.createTime = null;
+ object.updateTime = null;
+ object.iamPolicy = null;
+ object.canonicalName = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.securityCenterProperties != null && message.hasOwnProperty("securityCenterProperties"))
+ object.securityCenterProperties = $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.toObject(message.securityCenterProperties, options);
+ var keys2;
+ if (message.resourceProperties && (keys2 = Object.keys(message.resourceProperties)).length) {
+ object.resourceProperties = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.resourceProperties[keys2[j]] = $root.google.protobuf.Value.toObject(message.resourceProperties[keys2[j]], options);
+ }
+ if (message.securityMarks != null && message.hasOwnProperty("securityMarks"))
+ object.securityMarks = $root.google.cloud.securitycenter.v1.SecurityMarks.toObject(message.securityMarks, options);
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.updateTime != null && message.hasOwnProperty("updateTime"))
+ object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options);
+ if (message.iamPolicy != null && message.hasOwnProperty("iamPolicy"))
+ object.iamPolicy = $root.google.cloud.securitycenter.v1.Asset.IamPolicy.toObject(message.iamPolicy, options);
+ if (message.canonicalName != null && message.hasOwnProperty("canonicalName"))
+ object.canonicalName = message.canonicalName;
+ return object;
+ };
+
+ /**
+ * Converts this Asset to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Asset.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Asset
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Asset.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Asset";
+ };
+
+ Asset.SecurityCenterProperties = (function() {
+
+ /**
+ * Properties of a SecurityCenterProperties.
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @interface ISecurityCenterProperties
+ * @property {string|null} [resourceName] SecurityCenterProperties resourceName
+ * @property {string|null} [resourceType] SecurityCenterProperties resourceType
+ * @property {string|null} [resourceParent] SecurityCenterProperties resourceParent
+ * @property {string|null} [resourceProject] SecurityCenterProperties resourceProject
+ * @property {Array.|null} [resourceOwners] SecurityCenterProperties resourceOwners
+ * @property {string|null} [resourceDisplayName] SecurityCenterProperties resourceDisplayName
+ * @property {string|null} [resourceParentDisplayName] SecurityCenterProperties resourceParentDisplayName
+ * @property {string|null} [resourceProjectDisplayName] SecurityCenterProperties resourceProjectDisplayName
+ * @property {Array.|null} [folders] SecurityCenterProperties folders
+ */
+
+ /**
+ * Constructs a new SecurityCenterProperties.
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @classdesc Represents a SecurityCenterProperties.
+ * @implements ISecurityCenterProperties
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties=} [properties] Properties to set
+ */
+ function SecurityCenterProperties(properties) {
+ this.resourceOwners = [];
+ this.folders = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * SecurityCenterProperties resourceName.
+ * @member {string} resourceName
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceName = "";
+
+ /**
+ * SecurityCenterProperties resourceType.
+ * @member {string} resourceType
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceType = "";
+
+ /**
+ * SecurityCenterProperties resourceParent.
+ * @member {string} resourceParent
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceParent = "";
+
+ /**
+ * SecurityCenterProperties resourceProject.
+ * @member {string} resourceProject
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceProject = "";
+
+ /**
+ * SecurityCenterProperties resourceOwners.
+ * @member {Array.} resourceOwners
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceOwners = $util.emptyArray;
+
+ /**
+ * SecurityCenterProperties resourceDisplayName.
+ * @member {string} resourceDisplayName
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceDisplayName = "";
+
+ /**
+ * SecurityCenterProperties resourceParentDisplayName.
+ * @member {string} resourceParentDisplayName
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceParentDisplayName = "";
+
+ /**
+ * SecurityCenterProperties resourceProjectDisplayName.
+ * @member {string} resourceProjectDisplayName
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.resourceProjectDisplayName = "";
+
+ /**
+ * SecurityCenterProperties folders.
+ * @member {Array.} folders
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ */
+ SecurityCenterProperties.prototype.folders = $util.emptyArray;
+
+ /**
+ * Creates a new SecurityCenterProperties instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Asset.SecurityCenterProperties} SecurityCenterProperties instance
+ */
+ SecurityCenterProperties.create = function create(properties) {
+ return new SecurityCenterProperties(properties);
+ };
+
+ /**
+ * Encodes the specified SecurityCenterProperties message. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties} message SecurityCenterProperties message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SecurityCenterProperties.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.resourceName != null && Object.hasOwnProperty.call(message, "resourceName"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceName);
+ if (message.resourceType != null && Object.hasOwnProperty.call(message, "resourceType"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.resourceType);
+ if (message.resourceParent != null && Object.hasOwnProperty.call(message, "resourceParent"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.resourceParent);
+ if (message.resourceProject != null && Object.hasOwnProperty.call(message, "resourceProject"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.resourceProject);
+ if (message.resourceOwners != null && message.resourceOwners.length)
+ for (var i = 0; i < message.resourceOwners.length; ++i)
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.resourceOwners[i]);
+ if (message.resourceDisplayName != null && Object.hasOwnProperty.call(message, "resourceDisplayName"))
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.resourceDisplayName);
+ if (message.resourceParentDisplayName != null && Object.hasOwnProperty.call(message, "resourceParentDisplayName"))
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.resourceParentDisplayName);
+ if (message.resourceProjectDisplayName != null && Object.hasOwnProperty.call(message, "resourceProjectDisplayName"))
+ writer.uint32(/* id 8, wireType 2 =*/66).string(message.resourceProjectDisplayName);
+ if (message.folders != null && message.folders.length)
+ for (var i = 0; i < message.folders.length; ++i)
+ $root.google.cloud.securitycenter.v1.Folder.encode(message.folders[i], writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SecurityCenterProperties message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.ISecurityCenterProperties} message SecurityCenterProperties message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SecurityCenterProperties.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Asset.SecurityCenterProperties} SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SecurityCenterProperties.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.resourceName = reader.string();
+ break;
+ }
+ case 2: {
+ message.resourceType = reader.string();
+ break;
+ }
+ case 3: {
+ message.resourceParent = reader.string();
+ break;
+ }
+ case 4: {
+ message.resourceProject = reader.string();
+ break;
+ }
+ case 5: {
+ if (!(message.resourceOwners && message.resourceOwners.length))
+ message.resourceOwners = [];
+ message.resourceOwners.push(reader.string());
+ break;
+ }
+ case 6: {
+ message.resourceDisplayName = reader.string();
+ break;
+ }
+ case 7: {
+ message.resourceParentDisplayName = reader.string();
+ break;
+ }
+ case 8: {
+ message.resourceProjectDisplayName = reader.string();
+ break;
+ }
+ case 10: {
+ if (!(message.folders && message.folders.length))
+ message.folders = [];
+ message.folders.push($root.google.cloud.securitycenter.v1.Folder.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SecurityCenterProperties message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Asset.SecurityCenterProperties} SecurityCenterProperties
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SecurityCenterProperties.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SecurityCenterProperties message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SecurityCenterProperties.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.resourceName != null && message.hasOwnProperty("resourceName"))
+ if (!$util.isString(message.resourceName))
+ return "resourceName: string expected";
+ if (message.resourceType != null && message.hasOwnProperty("resourceType"))
+ if (!$util.isString(message.resourceType))
+ return "resourceType: string expected";
+ if (message.resourceParent != null && message.hasOwnProperty("resourceParent"))
+ if (!$util.isString(message.resourceParent))
+ return "resourceParent: string expected";
+ if (message.resourceProject != null && message.hasOwnProperty("resourceProject"))
+ if (!$util.isString(message.resourceProject))
+ return "resourceProject: string expected";
+ if (message.resourceOwners != null && message.hasOwnProperty("resourceOwners")) {
+ if (!Array.isArray(message.resourceOwners))
+ return "resourceOwners: array expected";
+ for (var i = 0; i < message.resourceOwners.length; ++i)
+ if (!$util.isString(message.resourceOwners[i]))
+ return "resourceOwners: string[] expected";
+ }
+ if (message.resourceDisplayName != null && message.hasOwnProperty("resourceDisplayName"))
+ if (!$util.isString(message.resourceDisplayName))
+ return "resourceDisplayName: string expected";
+ if (message.resourceParentDisplayName != null && message.hasOwnProperty("resourceParentDisplayName"))
+ if (!$util.isString(message.resourceParentDisplayName))
+ return "resourceParentDisplayName: string expected";
+ if (message.resourceProjectDisplayName != null && message.hasOwnProperty("resourceProjectDisplayName"))
+ if (!$util.isString(message.resourceProjectDisplayName))
+ return "resourceProjectDisplayName: string expected";
+ if (message.folders != null && message.hasOwnProperty("folders")) {
+ if (!Array.isArray(message.folders))
+ return "folders: array expected";
+ for (var i = 0; i < message.folders.length; ++i) {
+ var error = $root.google.cloud.securitycenter.v1.Folder.verify(message.folders[i]);
+ if (error)
+ return "folders." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a SecurityCenterProperties message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Asset.SecurityCenterProperties} SecurityCenterProperties
+ */
+ SecurityCenterProperties.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Asset.SecurityCenterProperties();
+ if (object.resourceName != null)
+ message.resourceName = String(object.resourceName);
+ if (object.resourceType != null)
+ message.resourceType = String(object.resourceType);
+ if (object.resourceParent != null)
+ message.resourceParent = String(object.resourceParent);
+ if (object.resourceProject != null)
+ message.resourceProject = String(object.resourceProject);
+ if (object.resourceOwners) {
+ if (!Array.isArray(object.resourceOwners))
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.resourceOwners: array expected");
+ message.resourceOwners = [];
+ for (var i = 0; i < object.resourceOwners.length; ++i)
+ message.resourceOwners[i] = String(object.resourceOwners[i]);
+ }
+ if (object.resourceDisplayName != null)
+ message.resourceDisplayName = String(object.resourceDisplayName);
+ if (object.resourceParentDisplayName != null)
+ message.resourceParentDisplayName = String(object.resourceParentDisplayName);
+ if (object.resourceProjectDisplayName != null)
+ message.resourceProjectDisplayName = String(object.resourceProjectDisplayName);
+ if (object.folders) {
+ if (!Array.isArray(object.folders))
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.folders: array expected");
+ message.folders = [];
+ for (var i = 0; i < object.folders.length; ++i) {
+ if (typeof object.folders[i] !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Asset.SecurityCenterProperties.folders: object expected");
+ message.folders[i] = $root.google.cloud.securitycenter.v1.Folder.fromObject(object.folders[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SecurityCenterProperties message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.SecurityCenterProperties} message SecurityCenterProperties
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SecurityCenterProperties.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.resourceOwners = [];
+ object.folders = [];
+ }
+ if (options.defaults) {
+ object.resourceName = "";
+ object.resourceType = "";
+ object.resourceParent = "";
+ object.resourceProject = "";
+ object.resourceDisplayName = "";
+ object.resourceParentDisplayName = "";
+ object.resourceProjectDisplayName = "";
+ }
+ if (message.resourceName != null && message.hasOwnProperty("resourceName"))
+ object.resourceName = message.resourceName;
+ if (message.resourceType != null && message.hasOwnProperty("resourceType"))
+ object.resourceType = message.resourceType;
+ if (message.resourceParent != null && message.hasOwnProperty("resourceParent"))
+ object.resourceParent = message.resourceParent;
+ if (message.resourceProject != null && message.hasOwnProperty("resourceProject"))
+ object.resourceProject = message.resourceProject;
+ if (message.resourceOwners && message.resourceOwners.length) {
+ object.resourceOwners = [];
+ for (var j = 0; j < message.resourceOwners.length; ++j)
+ object.resourceOwners[j] = message.resourceOwners[j];
+ }
+ if (message.resourceDisplayName != null && message.hasOwnProperty("resourceDisplayName"))
+ object.resourceDisplayName = message.resourceDisplayName;
+ if (message.resourceParentDisplayName != null && message.hasOwnProperty("resourceParentDisplayName"))
+ object.resourceParentDisplayName = message.resourceParentDisplayName;
+ if (message.resourceProjectDisplayName != null && message.hasOwnProperty("resourceProjectDisplayName"))
+ object.resourceProjectDisplayName = message.resourceProjectDisplayName;
+ if (message.folders && message.folders.length) {
+ object.folders = [];
+ for (var j = 0; j < message.folders.length; ++j)
+ object.folders[j] = $root.google.cloud.securitycenter.v1.Folder.toObject(message.folders[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this SecurityCenterProperties to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SecurityCenterProperties.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SecurityCenterProperties
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Asset.SecurityCenterProperties
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SecurityCenterProperties.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Asset.SecurityCenterProperties";
+ };
+
+ return SecurityCenterProperties;
+ })();
+
+ Asset.IamPolicy = (function() {
+
+ /**
+ * Properties of an IamPolicy.
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @interface IIamPolicy
+ * @property {string|null} [policyBlob] IamPolicy policyBlob
+ */
+
+ /**
+ * Constructs a new IamPolicy.
+ * @memberof google.cloud.securitycenter.v1.Asset
+ * @classdesc Represents an IamPolicy.
+ * @implements IIamPolicy
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.Asset.IIamPolicy=} [properties] Properties to set
+ */
+ function IamPolicy(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * IamPolicy policyBlob.
+ * @member {string} policyBlob
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @instance
+ */
+ IamPolicy.prototype.policyBlob = "";
+
+ /**
+ * Creates a new IamPolicy instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.IIamPolicy=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Asset.IamPolicy} IamPolicy instance
+ */
+ IamPolicy.create = function create(properties) {
+ return new IamPolicy(properties);
+ };
+
+ /**
+ * Encodes the specified IamPolicy message. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.IamPolicy.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.IIamPolicy} message IamPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IamPolicy.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.policyBlob != null && Object.hasOwnProperty.call(message, "policyBlob"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.policyBlob);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified IamPolicy message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Asset.IamPolicy.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.IIamPolicy} message IamPolicy message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ IamPolicy.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an IamPolicy message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Asset.IamPolicy} IamPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IamPolicy.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Asset.IamPolicy();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.policyBlob = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an IamPolicy message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Asset.IamPolicy} IamPolicy
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ IamPolicy.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an IamPolicy message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ IamPolicy.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.policyBlob != null && message.hasOwnProperty("policyBlob"))
+ if (!$util.isString(message.policyBlob))
+ return "policyBlob: string expected";
+ return null;
+ };
+
+ /**
+ * Creates an IamPolicy message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Asset.IamPolicy} IamPolicy
+ */
+ IamPolicy.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Asset.IamPolicy)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Asset.IamPolicy();
+ if (object.policyBlob != null)
+ message.policyBlob = String(object.policyBlob);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an IamPolicy message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {google.cloud.securitycenter.v1.Asset.IamPolicy} message IamPolicy
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ IamPolicy.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.policyBlob = "";
+ if (message.policyBlob != null && message.hasOwnProperty("policyBlob"))
+ object.policyBlob = message.policyBlob;
+ return object;
+ };
+
+ /**
+ * Converts this IamPolicy to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ IamPolicy.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for IamPolicy
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Asset.IamPolicy
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ IamPolicy.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Asset.IamPolicy";
+ };
+
+ return IamPolicy;
+ })();
+
+ return Asset;
+ })();
+
+ v1.Folder = (function() {
+
+ /**
+ * Properties of a Folder.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IFolder
+ * @property {string|null} [resourceFolder] Folder resourceFolder
+ * @property {string|null} [resourceFolderDisplayName] Folder resourceFolderDisplayName
+ */
+
+ /**
+ * Constructs a new Folder.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Folder.
+ * @implements IFolder
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IFolder=} [properties] Properties to set
+ */
+ function Folder(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Folder resourceFolder.
+ * @member {string} resourceFolder
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @instance
+ */
+ Folder.prototype.resourceFolder = "";
+
+ /**
+ * Folder resourceFolderDisplayName.
+ * @member {string} resourceFolderDisplayName
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @instance
+ */
+ Folder.prototype.resourceFolderDisplayName = "";
+
+ /**
+ * Creates a new Folder instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {google.cloud.securitycenter.v1.IFolder=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Folder} Folder instance
+ */
+ Folder.create = function create(properties) {
+ return new Folder(properties);
+ };
+
+ /**
+ * Encodes the specified Folder message. Does not implicitly {@link google.cloud.securitycenter.v1.Folder.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {google.cloud.securitycenter.v1.IFolder} message Folder message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Folder.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.resourceFolder != null && Object.hasOwnProperty.call(message, "resourceFolder"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.resourceFolder);
+ if (message.resourceFolderDisplayName != null && Object.hasOwnProperty.call(message, "resourceFolderDisplayName"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.resourceFolderDisplayName);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Folder message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Folder.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {google.cloud.securitycenter.v1.IFolder} message Folder message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Folder.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Folder message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Folder} Folder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Folder.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Folder();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.resourceFolder = reader.string();
+ break;
+ }
+ case 2: {
+ message.resourceFolderDisplayName = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Folder message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Folder} Folder
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Folder.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Folder message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Folder.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.resourceFolder != null && message.hasOwnProperty("resourceFolder"))
+ if (!$util.isString(message.resourceFolder))
+ return "resourceFolder: string expected";
+ if (message.resourceFolderDisplayName != null && message.hasOwnProperty("resourceFolderDisplayName"))
+ if (!$util.isString(message.resourceFolderDisplayName))
+ return "resourceFolderDisplayName: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Folder message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Folder} Folder
+ */
+ Folder.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Folder)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Folder();
+ if (object.resourceFolder != null)
+ message.resourceFolder = String(object.resourceFolder);
+ if (object.resourceFolderDisplayName != null)
+ message.resourceFolderDisplayName = String(object.resourceFolderDisplayName);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Folder message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {google.cloud.securitycenter.v1.Folder} message Folder
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Folder.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.resourceFolder = "";
+ object.resourceFolderDisplayName = "";
+ }
+ if (message.resourceFolder != null && message.hasOwnProperty("resourceFolder"))
+ object.resourceFolder = message.resourceFolder;
+ if (message.resourceFolderDisplayName != null && message.hasOwnProperty("resourceFolderDisplayName"))
+ object.resourceFolderDisplayName = message.resourceFolderDisplayName;
+ return object;
+ };
+
+ /**
+ * Converts this Folder to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Folder.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Folder
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Folder
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Folder.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Folder";
+ };
+
+ return Folder;
+ })();
+
+ v1.SecurityMarks = (function() {
+
+ /**
+ * Properties of a SecurityMarks.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface ISecurityMarks
+ * @property {string|null} [name] SecurityMarks name
+ * @property {Object.|null} [marks] SecurityMarks marks
+ * @property {string|null} [canonicalName] SecurityMarks canonicalName
+ */
+
+ /**
+ * Constructs a new SecurityMarks.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a SecurityMarks.
+ * @implements ISecurityMarks
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.ISecurityMarks=} [properties] Properties to set
+ */
+ function SecurityMarks(properties) {
+ this.marks = {};
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * SecurityMarks name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @instance
+ */
+ SecurityMarks.prototype.name = "";
+
+ /**
+ * SecurityMarks marks.
+ * @member {Object.} marks
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @instance
+ */
+ SecurityMarks.prototype.marks = $util.emptyObject;
+
+ /**
+ * SecurityMarks canonicalName.
+ * @member {string} canonicalName
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @instance
+ */
+ SecurityMarks.prototype.canonicalName = "";
+
+ /**
+ * Creates a new SecurityMarks instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {google.cloud.securitycenter.v1.ISecurityMarks=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.SecurityMarks} SecurityMarks instance
+ */
+ SecurityMarks.create = function create(properties) {
+ return new SecurityMarks(properties);
+ };
+
+ /**
+ * Encodes the specified SecurityMarks message. Does not implicitly {@link google.cloud.securitycenter.v1.SecurityMarks.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {google.cloud.securitycenter.v1.ISecurityMarks} message SecurityMarks message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SecurityMarks.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.marks != null && Object.hasOwnProperty.call(message, "marks"))
+ for (var keys = Object.keys(message.marks), i = 0; i < keys.length; ++i)
+ writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.marks[keys[i]]).ldelim();
+ if (message.canonicalName != null && Object.hasOwnProperty.call(message, "canonicalName"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.canonicalName);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified SecurityMarks message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.SecurityMarks.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {google.cloud.securitycenter.v1.ISecurityMarks} message SecurityMarks message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ SecurityMarks.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.SecurityMarks} SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SecurityMarks.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.SecurityMarks(), key, value;
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ if (message.marks === $util.emptyObject)
+ message.marks = {};
+ var end2 = reader.uint32() + reader.pos;
+ key = "";
+ value = "";
+ while (reader.pos < end2) {
+ var tag2 = reader.uint32();
+ switch (tag2 >>> 3) {
+ case 1:
+ key = reader.string();
+ break;
+ case 2:
+ value = reader.string();
+ break;
+ default:
+ reader.skipType(tag2 & 7);
+ break;
+ }
+ }
+ message.marks[key] = value;
+ break;
+ }
+ case 3: {
+ message.canonicalName = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a SecurityMarks message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.SecurityMarks} SecurityMarks
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ SecurityMarks.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a SecurityMarks message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ SecurityMarks.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.marks != null && message.hasOwnProperty("marks")) {
+ if (!$util.isObject(message.marks))
+ return "marks: object expected";
+ var key = Object.keys(message.marks);
+ for (var i = 0; i < key.length; ++i)
+ if (!$util.isString(message.marks[key[i]]))
+ return "marks: string{k:string} expected";
+ }
+ if (message.canonicalName != null && message.hasOwnProperty("canonicalName"))
+ if (!$util.isString(message.canonicalName))
+ return "canonicalName: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a SecurityMarks message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.SecurityMarks} SecurityMarks
+ */
+ SecurityMarks.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.SecurityMarks)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.SecurityMarks();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.marks) {
+ if (typeof object.marks !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.SecurityMarks.marks: object expected");
+ message.marks = {};
+ for (var keys = Object.keys(object.marks), i = 0; i < keys.length; ++i)
+ message.marks[keys[i]] = String(object.marks[keys[i]]);
+ }
+ if (object.canonicalName != null)
+ message.canonicalName = String(object.canonicalName);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a SecurityMarks message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {google.cloud.securitycenter.v1.SecurityMarks} message SecurityMarks
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ SecurityMarks.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.objects || options.defaults)
+ object.marks = {};
+ if (options.defaults) {
+ object.name = "";
+ object.canonicalName = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ var keys2;
+ if (message.marks && (keys2 = Object.keys(message.marks)).length) {
+ object.marks = {};
+ for (var j = 0; j < keys2.length; ++j)
+ object.marks[keys2[j]] = message.marks[keys2[j]];
+ }
+ if (message.canonicalName != null && message.hasOwnProperty("canonicalName"))
+ object.canonicalName = message.canonicalName;
+ return object;
+ };
+
+ /**
+ * Converts this SecurityMarks to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ SecurityMarks.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for SecurityMarks
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.SecurityMarks
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ SecurityMarks.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.SecurityMarks";
+ };
+
+ return SecurityMarks;
+ })();
+
+ v1.BigQueryExport = (function() {
+
+ /**
+ * Properties of a BigQueryExport.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IBigQueryExport
+ * @property {string|null} [name] BigQueryExport name
+ * @property {string|null} [description] BigQueryExport description
+ * @property {string|null} [filter] BigQueryExport filter
+ * @property {string|null} [dataset] BigQueryExport dataset
+ * @property {google.protobuf.ITimestamp|null} [createTime] BigQueryExport createTime
+ * @property {google.protobuf.ITimestamp|null} [updateTime] BigQueryExport updateTime
+ * @property {string|null} [mostRecentEditor] BigQueryExport mostRecentEditor
+ * @property {string|null} [principal] BigQueryExport principal
+ */
+
+ /**
+ * Constructs a new BigQueryExport.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a BigQueryExport.
+ * @implements IBigQueryExport
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IBigQueryExport=} [properties] Properties to set
+ */
+ function BigQueryExport(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * BigQueryExport name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.name = "";
+
+ /**
+ * BigQueryExport description.
+ * @member {string} description
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.description = "";
+
+ /**
+ * BigQueryExport filter.
+ * @member {string} filter
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.filter = "";
+
+ /**
+ * BigQueryExport dataset.
+ * @member {string} dataset
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.dataset = "";
+
+ /**
+ * BigQueryExport createTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} createTime
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.createTime = null;
+
+ /**
+ * BigQueryExport updateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} updateTime
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.updateTime = null;
+
+ /**
+ * BigQueryExport mostRecentEditor.
+ * @member {string} mostRecentEditor
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.mostRecentEditor = "";
+
+ /**
+ * BigQueryExport principal.
+ * @member {string} principal
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ */
+ BigQueryExport.prototype.principal = "";
+
+ /**
+ * Creates a new BigQueryExport instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {google.cloud.securitycenter.v1.IBigQueryExport=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.BigQueryExport} BigQueryExport instance
+ */
+ BigQueryExport.create = function create(properties) {
+ return new BigQueryExport(properties);
+ };
+
+ /**
+ * Encodes the specified BigQueryExport message. Does not implicitly {@link google.cloud.securitycenter.v1.BigQueryExport.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {google.cloud.securitycenter.v1.IBigQueryExport} message BigQueryExport message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BigQueryExport.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.description != null && Object.hasOwnProperty.call(message, "description"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.description);
+ if (message.filter != null && Object.hasOwnProperty.call(message, "filter"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.filter);
+ if (message.dataset != null && Object.hasOwnProperty.call(message, "dataset"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.dataset);
+ if (message.createTime != null && Object.hasOwnProperty.call(message, "createTime"))
+ $root.google.protobuf.Timestamp.encode(message.createTime, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ if (message.updateTime != null && Object.hasOwnProperty.call(message, "updateTime"))
+ $root.google.protobuf.Timestamp.encode(message.updateTime, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
+ if (message.mostRecentEditor != null && Object.hasOwnProperty.call(message, "mostRecentEditor"))
+ writer.uint32(/* id 7, wireType 2 =*/58).string(message.mostRecentEditor);
+ if (message.principal != null && Object.hasOwnProperty.call(message, "principal"))
+ writer.uint32(/* id 8, wireType 2 =*/66).string(message.principal);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified BigQueryExport message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.BigQueryExport.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {google.cloud.securitycenter.v1.IBigQueryExport} message BigQueryExport message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ BigQueryExport.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a BigQueryExport message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.BigQueryExport} BigQueryExport
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BigQueryExport.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.BigQueryExport();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.description = reader.string();
+ break;
+ }
+ case 3: {
+ message.filter = reader.string();
+ break;
+ }
+ case 4: {
+ message.dataset = reader.string();
+ break;
+ }
+ case 5: {
+ message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 6: {
+ message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ case 7: {
+ message.mostRecentEditor = reader.string();
+ break;
+ }
+ case 8: {
+ message.principal = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a BigQueryExport message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.BigQueryExport} BigQueryExport
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ BigQueryExport.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a BigQueryExport message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ BigQueryExport.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.description != null && message.hasOwnProperty("description"))
+ if (!$util.isString(message.description))
+ return "description: string expected";
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ if (!$util.isString(message.filter))
+ return "filter: string expected";
+ if (message.dataset != null && message.hasOwnProperty("dataset"))
+ if (!$util.isString(message.dataset))
+ return "dataset: string expected";
+ if (message.createTime != null && message.hasOwnProperty("createTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.createTime);
+ if (error)
+ return "createTime." + error;
+ }
+ if (message.updateTime != null && message.hasOwnProperty("updateTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.updateTime);
+ if (error)
+ return "updateTime." + error;
+ }
+ if (message.mostRecentEditor != null && message.hasOwnProperty("mostRecentEditor"))
+ if (!$util.isString(message.mostRecentEditor))
+ return "mostRecentEditor: string expected";
+ if (message.principal != null && message.hasOwnProperty("principal"))
+ if (!$util.isString(message.principal))
+ return "principal: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a BigQueryExport message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.BigQueryExport} BigQueryExport
+ */
+ BigQueryExport.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.BigQueryExport)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.BigQueryExport();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.description != null)
+ message.description = String(object.description);
+ if (object.filter != null)
+ message.filter = String(object.filter);
+ if (object.dataset != null)
+ message.dataset = String(object.dataset);
+ if (object.createTime != null) {
+ if (typeof object.createTime !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.BigQueryExport.createTime: object expected");
+ message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime);
+ }
+ if (object.updateTime != null) {
+ if (typeof object.updateTime !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.BigQueryExport.updateTime: object expected");
+ message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime);
+ }
+ if (object.mostRecentEditor != null)
+ message.mostRecentEditor = String(object.mostRecentEditor);
+ if (object.principal != null)
+ message.principal = String(object.principal);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a BigQueryExport message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {google.cloud.securitycenter.v1.BigQueryExport} message BigQueryExport
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ BigQueryExport.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.description = "";
+ object.filter = "";
+ object.dataset = "";
+ object.createTime = null;
+ object.updateTime = null;
+ object.mostRecentEditor = "";
+ object.principal = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.description != null && message.hasOwnProperty("description"))
+ object.description = message.description;
+ if (message.filter != null && message.hasOwnProperty("filter"))
+ object.filter = message.filter;
+ if (message.dataset != null && message.hasOwnProperty("dataset"))
+ object.dataset = message.dataset;
+ if (message.createTime != null && message.hasOwnProperty("createTime"))
+ object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options);
+ if (message.updateTime != null && message.hasOwnProperty("updateTime"))
+ object.updateTime = $root.google.protobuf.Timestamp.toObject(message.updateTime, options);
+ if (message.mostRecentEditor != null && message.hasOwnProperty("mostRecentEditor"))
+ object.mostRecentEditor = message.mostRecentEditor;
+ if (message.principal != null && message.hasOwnProperty("principal"))
+ object.principal = message.principal;
+ return object;
+ };
+
+ /**
+ * Converts this BigQueryExport to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ BigQueryExport.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for BigQueryExport
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.BigQueryExport
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ BigQueryExport.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.BigQueryExport";
+ };
+
+ return BigQueryExport;
+ })();
+
+ v1.Compliance = (function() {
+
+ /**
+ * Properties of a Compliance.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface ICompliance
+ * @property {string|null} [standard] Compliance standard
+ * @property {string|null} [version] Compliance version
+ * @property {Array.|null} [ids] Compliance ids
+ */
+
+ /**
+ * Constructs a new Compliance.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Compliance.
+ * @implements ICompliance
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.ICompliance=} [properties] Properties to set
+ */
+ function Compliance(properties) {
+ this.ids = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Compliance standard.
+ * @member {string} standard
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @instance
+ */
+ Compliance.prototype.standard = "";
+
+ /**
+ * Compliance version.
+ * @member {string} version
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @instance
+ */
+ Compliance.prototype.version = "";
+
+ /**
+ * Compliance ids.
+ * @member {Array.} ids
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @instance
+ */
+ Compliance.prototype.ids = $util.emptyArray;
+
+ /**
+ * Creates a new Compliance instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {google.cloud.securitycenter.v1.ICompliance=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Compliance} Compliance instance
+ */
+ Compliance.create = function create(properties) {
+ return new Compliance(properties);
+ };
+
+ /**
+ * Encodes the specified Compliance message. Does not implicitly {@link google.cloud.securitycenter.v1.Compliance.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {google.cloud.securitycenter.v1.ICompliance} message Compliance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Compliance.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.standard != null && Object.hasOwnProperty.call(message, "standard"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.standard);
+ if (message.version != null && Object.hasOwnProperty.call(message, "version"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.version);
+ if (message.ids != null && message.ids.length)
+ for (var i = 0; i < message.ids.length; ++i)
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.ids[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Compliance message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Compliance.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {google.cloud.securitycenter.v1.ICompliance} message Compliance message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Compliance.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Compliance message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Compliance} Compliance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Compliance.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Compliance();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.standard = reader.string();
+ break;
+ }
+ case 2: {
+ message.version = reader.string();
+ break;
+ }
+ case 3: {
+ if (!(message.ids && message.ids.length))
+ message.ids = [];
+ message.ids.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Compliance message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Compliance} Compliance
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Compliance.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Compliance message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Compliance.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.standard != null && message.hasOwnProperty("standard"))
+ if (!$util.isString(message.standard))
+ return "standard: string expected";
+ if (message.version != null && message.hasOwnProperty("version"))
+ if (!$util.isString(message.version))
+ return "version: string expected";
+ if (message.ids != null && message.hasOwnProperty("ids")) {
+ if (!Array.isArray(message.ids))
+ return "ids: array expected";
+ for (var i = 0; i < message.ids.length; ++i)
+ if (!$util.isString(message.ids[i]))
+ return "ids: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Compliance message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Compliance} Compliance
+ */
+ Compliance.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Compliance)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Compliance();
+ if (object.standard != null)
+ message.standard = String(object.standard);
+ if (object.version != null)
+ message.version = String(object.version);
+ if (object.ids) {
+ if (!Array.isArray(object.ids))
+ throw TypeError(".google.cloud.securitycenter.v1.Compliance.ids: array expected");
+ message.ids = [];
+ for (var i = 0; i < object.ids.length; ++i)
+ message.ids[i] = String(object.ids[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Compliance message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {google.cloud.securitycenter.v1.Compliance} message Compliance
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Compliance.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.ids = [];
+ if (options.defaults) {
+ object.standard = "";
+ object.version = "";
+ }
+ if (message.standard != null && message.hasOwnProperty("standard"))
+ object.standard = message.standard;
+ if (message.version != null && message.hasOwnProperty("version"))
+ object.version = message.version;
+ if (message.ids && message.ids.length) {
+ object.ids = [];
+ for (var j = 0; j < message.ids.length; ++j)
+ object.ids[j] = message.ids[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Compliance to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Compliance.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Compliance
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Compliance
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Compliance.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Compliance";
+ };
+
+ return Compliance;
+ })();
+
+ v1.Connection = (function() {
+
+ /**
+ * Properties of a Connection.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IConnection
+ * @property {string|null} [destinationIp] Connection destinationIp
+ * @property {number|null} [destinationPort] Connection destinationPort
+ * @property {string|null} [sourceIp] Connection sourceIp
+ * @property {number|null} [sourcePort] Connection sourcePort
+ * @property {google.cloud.securitycenter.v1.Connection.Protocol|null} [protocol] Connection protocol
+ */
+
+ /**
+ * Constructs a new Connection.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Connection.
+ * @implements IConnection
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IConnection=} [properties] Properties to set
+ */
+ function Connection(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Connection destinationIp.
+ * @member {string} destinationIp
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @instance
+ */
+ Connection.prototype.destinationIp = "";
+
+ /**
+ * Connection destinationPort.
+ * @member {number} destinationPort
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @instance
+ */
+ Connection.prototype.destinationPort = 0;
+
+ /**
+ * Connection sourceIp.
+ * @member {string} sourceIp
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @instance
+ */
+ Connection.prototype.sourceIp = "";
+
+ /**
+ * Connection sourcePort.
+ * @member {number} sourcePort
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @instance
+ */
+ Connection.prototype.sourcePort = 0;
+
+ /**
+ * Connection protocol.
+ * @member {google.cloud.securitycenter.v1.Connection.Protocol} protocol
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @instance
+ */
+ Connection.prototype.protocol = 0;
+
+ /**
+ * Creates a new Connection instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {google.cloud.securitycenter.v1.IConnection=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Connection} Connection instance
+ */
+ Connection.create = function create(properties) {
+ return new Connection(properties);
+ };
+
+ /**
+ * Encodes the specified Connection message. Does not implicitly {@link google.cloud.securitycenter.v1.Connection.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {google.cloud.securitycenter.v1.IConnection} message Connection message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Connection.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.destinationIp != null && Object.hasOwnProperty.call(message, "destinationIp"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.destinationIp);
+ if (message.destinationPort != null && Object.hasOwnProperty.call(message, "destinationPort"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.destinationPort);
+ if (message.sourceIp != null && Object.hasOwnProperty.call(message, "sourceIp"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.sourceIp);
+ if (message.sourcePort != null && Object.hasOwnProperty.call(message, "sourcePort"))
+ writer.uint32(/* id 4, wireType 0 =*/32).int32(message.sourcePort);
+ if (message.protocol != null && Object.hasOwnProperty.call(message, "protocol"))
+ writer.uint32(/* id 5, wireType 0 =*/40).int32(message.protocol);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Connection message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Connection.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {google.cloud.securitycenter.v1.IConnection} message Connection message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Connection.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Connection message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Connection} Connection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Connection.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Connection();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.destinationIp = reader.string();
+ break;
+ }
+ case 2: {
+ message.destinationPort = reader.int32();
+ break;
+ }
+ case 3: {
+ message.sourceIp = reader.string();
+ break;
+ }
+ case 4: {
+ message.sourcePort = reader.int32();
+ break;
+ }
+ case 5: {
+ message.protocol = reader.int32();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Connection message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Connection} Connection
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Connection.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Connection message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Connection.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.destinationIp != null && message.hasOwnProperty("destinationIp"))
+ if (!$util.isString(message.destinationIp))
+ return "destinationIp: string expected";
+ if (message.destinationPort != null && message.hasOwnProperty("destinationPort"))
+ if (!$util.isInteger(message.destinationPort))
+ return "destinationPort: integer expected";
+ if (message.sourceIp != null && message.hasOwnProperty("sourceIp"))
+ if (!$util.isString(message.sourceIp))
+ return "sourceIp: string expected";
+ if (message.sourcePort != null && message.hasOwnProperty("sourcePort"))
+ if (!$util.isInteger(message.sourcePort))
+ return "sourcePort: integer expected";
+ if (message.protocol != null && message.hasOwnProperty("protocol"))
+ switch (message.protocol) {
+ default:
+ return "protocol: enum value expected";
+ case 0:
+ case 1:
+ case 6:
+ case 17:
+ case 47:
+ case 50:
+ break;
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Connection message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Connection} Connection
+ */
+ Connection.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Connection)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Connection();
+ if (object.destinationIp != null)
+ message.destinationIp = String(object.destinationIp);
+ if (object.destinationPort != null)
+ message.destinationPort = object.destinationPort | 0;
+ if (object.sourceIp != null)
+ message.sourceIp = String(object.sourceIp);
+ if (object.sourcePort != null)
+ message.sourcePort = object.sourcePort | 0;
+ switch (object.protocol) {
+ default:
+ if (typeof object.protocol === "number") {
+ message.protocol = object.protocol;
+ break;
+ }
+ break;
+ case "PROTOCOL_UNSPECIFIED":
+ case 0:
+ message.protocol = 0;
+ break;
+ case "ICMP":
+ case 1:
+ message.protocol = 1;
+ break;
+ case "TCP":
+ case 6:
+ message.protocol = 6;
+ break;
+ case "UDP":
+ case 17:
+ message.protocol = 17;
+ break;
+ case "GRE":
+ case 47:
+ message.protocol = 47;
+ break;
+ case "ESP":
+ case 50:
+ message.protocol = 50;
+ break;
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Connection message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {google.cloud.securitycenter.v1.Connection} message Connection
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Connection.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.destinationIp = "";
+ object.destinationPort = 0;
+ object.sourceIp = "";
+ object.sourcePort = 0;
+ object.protocol = options.enums === String ? "PROTOCOL_UNSPECIFIED" : 0;
+ }
+ if (message.destinationIp != null && message.hasOwnProperty("destinationIp"))
+ object.destinationIp = message.destinationIp;
+ if (message.destinationPort != null && message.hasOwnProperty("destinationPort"))
+ object.destinationPort = message.destinationPort;
+ if (message.sourceIp != null && message.hasOwnProperty("sourceIp"))
+ object.sourceIp = message.sourceIp;
+ if (message.sourcePort != null && message.hasOwnProperty("sourcePort"))
+ object.sourcePort = message.sourcePort;
+ if (message.protocol != null && message.hasOwnProperty("protocol"))
+ object.protocol = options.enums === String ? $root.google.cloud.securitycenter.v1.Connection.Protocol[message.protocol] === undefined ? message.protocol : $root.google.cloud.securitycenter.v1.Connection.Protocol[message.protocol] : message.protocol;
+ return object;
+ };
+
+ /**
+ * Converts this Connection to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Connection.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Connection
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Connection
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Connection.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Connection";
+ };
+
+ /**
+ * Protocol enum.
+ * @name google.cloud.securitycenter.v1.Connection.Protocol
+ * @enum {number}
+ * @property {number} PROTOCOL_UNSPECIFIED=0 PROTOCOL_UNSPECIFIED value
+ * @property {number} ICMP=1 ICMP value
+ * @property {number} TCP=6 TCP value
+ * @property {number} UDP=17 UDP value
+ * @property {number} GRE=47 GRE value
+ * @property {number} ESP=50 ESP value
+ */
+ Connection.Protocol = (function() {
+ var valuesById = {}, values = Object.create(valuesById);
+ values[valuesById[0] = "PROTOCOL_UNSPECIFIED"] = 0;
+ values[valuesById[1] = "ICMP"] = 1;
+ values[valuesById[6] = "TCP"] = 6;
+ values[valuesById[17] = "UDP"] = 17;
+ values[valuesById[47] = "GRE"] = 47;
+ values[valuesById[50] = "ESP"] = 50;
+ return values;
+ })();
+
+ return Connection;
+ })();
+
+ v1.ContactDetails = (function() {
+
+ /**
+ * Properties of a ContactDetails.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IContactDetails
+ * @property {Array.|null} [contacts] ContactDetails contacts
+ */
+
+ /**
+ * Constructs a new ContactDetails.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a ContactDetails.
+ * @implements IContactDetails
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IContactDetails=} [properties] Properties to set
+ */
+ function ContactDetails(properties) {
+ this.contacts = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ContactDetails contacts.
+ * @member {Array.} contacts
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @instance
+ */
+ ContactDetails.prototype.contacts = $util.emptyArray;
+
+ /**
+ * Creates a new ContactDetails instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContactDetails=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.ContactDetails} ContactDetails instance
+ */
+ ContactDetails.create = function create(properties) {
+ return new ContactDetails(properties);
+ };
+
+ /**
+ * Encodes the specified ContactDetails message. Does not implicitly {@link google.cloud.securitycenter.v1.ContactDetails.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContactDetails} message ContactDetails message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ContactDetails.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.contacts != null && message.contacts.length)
+ for (var i = 0; i < message.contacts.length; ++i)
+ $root.google.cloud.securitycenter.v1.Contact.encode(message.contacts[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ContactDetails message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ContactDetails.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContactDetails} message ContactDetails message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ContactDetails.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a ContactDetails message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.ContactDetails} ContactDetails
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ContactDetails.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.ContactDetails();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.contacts && message.contacts.length))
+ message.contacts = [];
+ message.contacts.push($root.google.cloud.securitycenter.v1.Contact.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a ContactDetails message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.ContactDetails} ContactDetails
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ContactDetails.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a ContactDetails message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ContactDetails.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.contacts != null && message.hasOwnProperty("contacts")) {
+ if (!Array.isArray(message.contacts))
+ return "contacts: array expected";
+ for (var i = 0; i < message.contacts.length; ++i) {
+ var error = $root.google.cloud.securitycenter.v1.Contact.verify(message.contacts[i]);
+ if (error)
+ return "contacts." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a ContactDetails message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.ContactDetails} ContactDetails
+ */
+ ContactDetails.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.ContactDetails)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.ContactDetails();
+ if (object.contacts) {
+ if (!Array.isArray(object.contacts))
+ throw TypeError(".google.cloud.securitycenter.v1.ContactDetails.contacts: array expected");
+ message.contacts = [];
+ for (var i = 0; i < object.contacts.length; ++i) {
+ if (typeof object.contacts[i] !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.ContactDetails.contacts: object expected");
+ message.contacts[i] = $root.google.cloud.securitycenter.v1.Contact.fromObject(object.contacts[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a ContactDetails message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {google.cloud.securitycenter.v1.ContactDetails} message ContactDetails
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ContactDetails.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.contacts = [];
+ if (message.contacts && message.contacts.length) {
+ object.contacts = [];
+ for (var j = 0; j < message.contacts.length; ++j)
+ object.contacts[j] = $root.google.cloud.securitycenter.v1.Contact.toObject(message.contacts[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ContactDetails to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ContactDetails.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ContactDetails
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.ContactDetails
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ContactDetails.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.ContactDetails";
+ };
+
+ return ContactDetails;
+ })();
+
+ v1.Contact = (function() {
+
+ /**
+ * Properties of a Contact.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IContact
+ * @property {string|null} [email] Contact email
+ */
+
+ /**
+ * Constructs a new Contact.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Contact.
+ * @implements IContact
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IContact=} [properties] Properties to set
+ */
+ function Contact(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Contact email.
+ * @member {string} email
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @instance
+ */
+ Contact.prototype.email = "";
+
+ /**
+ * Creates a new Contact instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContact=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Contact} Contact instance
+ */
+ Contact.create = function create(properties) {
+ return new Contact(properties);
+ };
+
+ /**
+ * Encodes the specified Contact message. Does not implicitly {@link google.cloud.securitycenter.v1.Contact.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContact} message Contact message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Contact.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.email != null && Object.hasOwnProperty.call(message, "email"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.email);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Contact message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Contact.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContact} message Contact message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Contact.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Contact message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Contact} Contact
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Contact.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Contact();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.email = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Contact message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Contact} Contact
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Contact.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Contact message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Contact.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.email != null && message.hasOwnProperty("email"))
+ if (!$util.isString(message.email))
+ return "email: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Contact message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Contact} Contact
+ */
+ Contact.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Contact)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Contact();
+ if (object.email != null)
+ message.email = String(object.email);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Contact message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {google.cloud.securitycenter.v1.Contact} message Contact
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Contact.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults)
+ object.email = "";
+ if (message.email != null && message.hasOwnProperty("email"))
+ object.email = message.email;
+ return object;
+ };
+
+ /**
+ * Converts this Contact to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Contact.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Contact
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Contact
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Contact.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Contact";
+ };
+
+ return Contact;
+ })();
+
+ v1.Container = (function() {
+
+ /**
+ * Properties of a Container.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IContainer
+ * @property {string|null} [name] Container name
+ * @property {string|null} [uri] Container uri
+ * @property {string|null} [imageId] Container imageId
+ * @property {Array.|null} [labels] Container labels
+ */
+
+ /**
+ * Constructs a new Container.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Container.
+ * @implements IContainer
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IContainer=} [properties] Properties to set
+ */
+ function Container(properties) {
+ this.labels = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Container name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @instance
+ */
+ Container.prototype.name = "";
+
+ /**
+ * Container uri.
+ * @member {string} uri
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @instance
+ */
+ Container.prototype.uri = "";
+
+ /**
+ * Container imageId.
+ * @member {string} imageId
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @instance
+ */
+ Container.prototype.imageId = "";
+
+ /**
+ * Container labels.
+ * @member {Array.} labels
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @instance
+ */
+ Container.prototype.labels = $util.emptyArray;
+
+ /**
+ * Creates a new Container instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContainer=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Container} Container instance
+ */
+ Container.create = function create(properties) {
+ return new Container(properties);
+ };
+
+ /**
+ * Encodes the specified Container message. Does not implicitly {@link google.cloud.securitycenter.v1.Container.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContainer} message Container message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Container.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.uri != null && Object.hasOwnProperty.call(message, "uri"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.uri);
+ if (message.imageId != null && Object.hasOwnProperty.call(message, "imageId"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.imageId);
+ if (message.labels != null && message.labels.length)
+ for (var i = 0; i < message.labels.length; ++i)
+ $root.google.cloud.securitycenter.v1.Label.encode(message.labels[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Container message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Container.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {google.cloud.securitycenter.v1.IContainer} message Container message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Container.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Container message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Container} Container
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Container.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Container();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.uri = reader.string();
+ break;
+ }
+ case 3: {
+ message.imageId = reader.string();
+ break;
+ }
+ case 4: {
+ if (!(message.labels && message.labels.length))
+ message.labels = [];
+ message.labels.push($root.google.cloud.securitycenter.v1.Label.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Container message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Container} Container
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Container.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Container message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Container.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ if (!$util.isString(message.uri))
+ return "uri: string expected";
+ if (message.imageId != null && message.hasOwnProperty("imageId"))
+ if (!$util.isString(message.imageId))
+ return "imageId: string expected";
+ if (message.labels != null && message.hasOwnProperty("labels")) {
+ if (!Array.isArray(message.labels))
+ return "labels: array expected";
+ for (var i = 0; i < message.labels.length; ++i) {
+ var error = $root.google.cloud.securitycenter.v1.Label.verify(message.labels[i]);
+ if (error)
+ return "labels." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Container message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Container} Container
+ */
+ Container.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Container)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Container();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.uri != null)
+ message.uri = String(object.uri);
+ if (object.imageId != null)
+ message.imageId = String(object.imageId);
+ if (object.labels) {
+ if (!Array.isArray(object.labels))
+ throw TypeError(".google.cloud.securitycenter.v1.Container.labels: array expected");
+ message.labels = [];
+ for (var i = 0; i < object.labels.length; ++i) {
+ if (typeof object.labels[i] !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Container.labels: object expected");
+ message.labels[i] = $root.google.cloud.securitycenter.v1.Label.fromObject(object.labels[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Container message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {google.cloud.securitycenter.v1.Container} message Container
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Container.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.labels = [];
+ if (options.defaults) {
+ object.name = "";
+ object.uri = "";
+ object.imageId = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.uri != null && message.hasOwnProperty("uri"))
+ object.uri = message.uri;
+ if (message.imageId != null && message.hasOwnProperty("imageId"))
+ object.imageId = message.imageId;
+ if (message.labels && message.labels.length) {
+ object.labels = [];
+ for (var j = 0; j < message.labels.length; ++j)
+ object.labels[j] = $root.google.cloud.securitycenter.v1.Label.toObject(message.labels[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Container to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Container.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Container
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Container
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Container.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Container";
+ };
+
+ return Container;
+ })();
+
+ v1.Label = (function() {
+
+ /**
+ * Properties of a Label.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface ILabel
+ * @property {string|null} [name] Label name
+ * @property {string|null} [value] Label value
+ */
+
+ /**
+ * Constructs a new Label.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Label.
+ * @implements ILabel
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.ILabel=} [properties] Properties to set
+ */
+ function Label(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Label name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @instance
+ */
+ Label.prototype.name = "";
+
+ /**
+ * Label value.
+ * @member {string} value
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @instance
+ */
+ Label.prototype.value = "";
+
+ /**
+ * Creates a new Label instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {google.cloud.securitycenter.v1.ILabel=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Label} Label instance
+ */
+ Label.create = function create(properties) {
+ return new Label(properties);
+ };
+
+ /**
+ * Encodes the specified Label message. Does not implicitly {@link google.cloud.securitycenter.v1.Label.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {google.cloud.securitycenter.v1.ILabel} message Label message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Label.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.value != null && Object.hasOwnProperty.call(message, "value"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.value);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Label message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Label.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {google.cloud.securitycenter.v1.ILabel} message Label message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Label.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Label message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Label} Label
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Label.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Label();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.value = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Label message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Label} Label
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Label.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Label message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Label.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.value != null && message.hasOwnProperty("value"))
+ if (!$util.isString(message.value))
+ return "value: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a Label message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Label} Label
+ */
+ Label.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Label)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Label();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.value != null)
+ message.value = String(object.value);
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Label message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {google.cloud.securitycenter.v1.Label} message Label
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Label.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.defaults) {
+ object.name = "";
+ object.value = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.value != null && message.hasOwnProperty("value"))
+ object.value = message.value;
+ return object;
+ };
+
+ /**
+ * Converts this Label to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Label.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Label
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Label
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Label.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Label";
+ };
+
+ return Label;
+ })();
+
+ v1.Database = (function() {
+
+ /**
+ * Properties of a Database.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IDatabase
+ * @property {string|null} [name] Database name
+ * @property {string|null} [displayName] Database displayName
+ * @property {string|null} [userName] Database userName
+ * @property {string|null} [query] Database query
+ * @property {Array.|null} [grantees] Database grantees
+ */
+
+ /**
+ * Constructs a new Database.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a Database.
+ * @implements IDatabase
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IDatabase=} [properties] Properties to set
+ */
+ function Database(properties) {
+ this.grantees = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Database name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @instance
+ */
+ Database.prototype.name = "";
+
+ /**
+ * Database displayName.
+ * @member {string} displayName
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @instance
+ */
+ Database.prototype.displayName = "";
+
+ /**
+ * Database userName.
+ * @member {string} userName
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @instance
+ */
+ Database.prototype.userName = "";
+
+ /**
+ * Database query.
+ * @member {string} query
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @instance
+ */
+ Database.prototype.query = "";
+
+ /**
+ * Database grantees.
+ * @member {Array.} grantees
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @instance
+ */
+ Database.prototype.grantees = $util.emptyArray;
+
+ /**
+ * Creates a new Database instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {google.cloud.securitycenter.v1.IDatabase=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Database} Database instance
+ */
+ Database.create = function create(properties) {
+ return new Database(properties);
+ };
+
+ /**
+ * Encodes the specified Database message. Does not implicitly {@link google.cloud.securitycenter.v1.Database.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {google.cloud.securitycenter.v1.IDatabase} message Database message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Database.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.displayName != null && Object.hasOwnProperty.call(message, "displayName"))
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.displayName);
+ if (message.userName != null && Object.hasOwnProperty.call(message, "userName"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.userName);
+ if (message.query != null && Object.hasOwnProperty.call(message, "query"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.query);
+ if (message.grantees != null && message.grantees.length)
+ for (var i = 0; i < message.grantees.length; ++i)
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.grantees[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Database message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Database.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {google.cloud.securitycenter.v1.IDatabase} message Database message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Database.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a Database message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Database} Database
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Database.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Database();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ message.displayName = reader.string();
+ break;
+ }
+ case 3: {
+ message.userName = reader.string();
+ break;
+ }
+ case 4: {
+ message.query = reader.string();
+ break;
+ }
+ case 5: {
+ if (!(message.grantees && message.grantees.length))
+ message.grantees = [];
+ message.grantees.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a Database message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Database} Database
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Database.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a Database message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Database.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ if (!$util.isString(message.displayName))
+ return "displayName: string expected";
+ if (message.userName != null && message.hasOwnProperty("userName"))
+ if (!$util.isString(message.userName))
+ return "userName: string expected";
+ if (message.query != null && message.hasOwnProperty("query"))
+ if (!$util.isString(message.query))
+ return "query: string expected";
+ if (message.grantees != null && message.hasOwnProperty("grantees")) {
+ if (!Array.isArray(message.grantees))
+ return "grantees: array expected";
+ for (var i = 0; i < message.grantees.length; ++i)
+ if (!$util.isString(message.grantees[i]))
+ return "grantees: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates a Database message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Database} Database
+ */
+ Database.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Database)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Database();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.displayName != null)
+ message.displayName = String(object.displayName);
+ if (object.userName != null)
+ message.userName = String(object.userName);
+ if (object.query != null)
+ message.query = String(object.query);
+ if (object.grantees) {
+ if (!Array.isArray(object.grantees))
+ throw TypeError(".google.cloud.securitycenter.v1.Database.grantees: array expected");
+ message.grantees = [];
+ for (var i = 0; i < object.grantees.length; ++i)
+ message.grantees[i] = String(object.grantees[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from a Database message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {google.cloud.securitycenter.v1.Database} message Database
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Database.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.grantees = [];
+ if (options.defaults) {
+ object.name = "";
+ object.displayName = "";
+ object.userName = "";
+ object.query = "";
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.displayName != null && message.hasOwnProperty("displayName"))
+ object.displayName = message.displayName;
+ if (message.userName != null && message.hasOwnProperty("userName"))
+ object.userName = message.userName;
+ if (message.query != null && message.hasOwnProperty("query"))
+ object.query = message.query;
+ if (message.grantees && message.grantees.length) {
+ object.grantees = [];
+ for (var j = 0; j < message.grantees.length; ++j)
+ object.grantees[j] = message.grantees[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Database to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Database.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Database
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Database
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Database.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Database";
+ };
+
+ return Database;
+ })();
+
+ v1.Exfiltration = (function() {
+
+ /**
+ * Properties of an Exfiltration.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IExfiltration
+ * @property {Array.|null} [sources] Exfiltration sources
+ * @property {Array.|null} [targets] Exfiltration targets
+ */
+
+ /**
+ * Constructs a new Exfiltration.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents an Exfiltration.
+ * @implements IExfiltration
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IExfiltration=} [properties] Properties to set
+ */
+ function Exfiltration(properties) {
+ this.sources = [];
+ this.targets = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * Exfiltration sources.
+ * @member {Array.} sources
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @instance
+ */
+ Exfiltration.prototype.sources = $util.emptyArray;
+
+ /**
+ * Exfiltration targets.
+ * @member {Array.} targets
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @instance
+ */
+ Exfiltration.prototype.targets = $util.emptyArray;
+
+ /**
+ * Creates a new Exfiltration instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExfiltration=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.Exfiltration} Exfiltration instance
+ */
+ Exfiltration.create = function create(properties) {
+ return new Exfiltration(properties);
+ };
+
+ /**
+ * Encodes the specified Exfiltration message. Does not implicitly {@link google.cloud.securitycenter.v1.Exfiltration.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExfiltration} message Exfiltration message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Exfiltration.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.sources != null && message.sources.length)
+ for (var i = 0; i < message.sources.length; ++i)
+ $root.google.cloud.securitycenter.v1.ExfilResource.encode(message.sources[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
+ if (message.targets != null && message.targets.length)
+ for (var i = 0; i < message.targets.length; ++i)
+ $root.google.cloud.securitycenter.v1.ExfilResource.encode(message.targets[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified Exfiltration message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.Exfiltration.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExfiltration} message Exfiltration message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ Exfiltration.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an Exfiltration message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.Exfiltration} Exfiltration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Exfiltration.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.Exfiltration();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ if (!(message.sources && message.sources.length))
+ message.sources = [];
+ message.sources.push($root.google.cloud.securitycenter.v1.ExfilResource.decode(reader, reader.uint32()));
+ break;
+ }
+ case 2: {
+ if (!(message.targets && message.targets.length))
+ message.targets = [];
+ message.targets.push($root.google.cloud.securitycenter.v1.ExfilResource.decode(reader, reader.uint32()));
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an Exfiltration message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.Exfiltration} Exfiltration
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ Exfiltration.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an Exfiltration message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ Exfiltration.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.sources != null && message.hasOwnProperty("sources")) {
+ if (!Array.isArray(message.sources))
+ return "sources: array expected";
+ for (var i = 0; i < message.sources.length; ++i) {
+ var error = $root.google.cloud.securitycenter.v1.ExfilResource.verify(message.sources[i]);
+ if (error)
+ return "sources." + error;
+ }
+ }
+ if (message.targets != null && message.hasOwnProperty("targets")) {
+ if (!Array.isArray(message.targets))
+ return "targets: array expected";
+ for (var i = 0; i < message.targets.length; ++i) {
+ var error = $root.google.cloud.securitycenter.v1.ExfilResource.verify(message.targets[i]);
+ if (error)
+ return "targets." + error;
+ }
+ }
+ return null;
+ };
+
+ /**
+ * Creates an Exfiltration message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.Exfiltration} Exfiltration
+ */
+ Exfiltration.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.Exfiltration)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.Exfiltration();
+ if (object.sources) {
+ if (!Array.isArray(object.sources))
+ throw TypeError(".google.cloud.securitycenter.v1.Exfiltration.sources: array expected");
+ message.sources = [];
+ for (var i = 0; i < object.sources.length; ++i) {
+ if (typeof object.sources[i] !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Exfiltration.sources: object expected");
+ message.sources[i] = $root.google.cloud.securitycenter.v1.ExfilResource.fromObject(object.sources[i]);
+ }
+ }
+ if (object.targets) {
+ if (!Array.isArray(object.targets))
+ throw TypeError(".google.cloud.securitycenter.v1.Exfiltration.targets: array expected");
+ message.targets = [];
+ for (var i = 0; i < object.targets.length; ++i) {
+ if (typeof object.targets[i] !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.Exfiltration.targets: object expected");
+ message.targets[i] = $root.google.cloud.securitycenter.v1.ExfilResource.fromObject(object.targets[i]);
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an Exfiltration message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {google.cloud.securitycenter.v1.Exfiltration} message Exfiltration
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ Exfiltration.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults) {
+ object.sources = [];
+ object.targets = [];
+ }
+ if (message.sources && message.sources.length) {
+ object.sources = [];
+ for (var j = 0; j < message.sources.length; ++j)
+ object.sources[j] = $root.google.cloud.securitycenter.v1.ExfilResource.toObject(message.sources[j], options);
+ }
+ if (message.targets && message.targets.length) {
+ object.targets = [];
+ for (var j = 0; j < message.targets.length; ++j)
+ object.targets[j] = $root.google.cloud.securitycenter.v1.ExfilResource.toObject(message.targets[j], options);
+ }
+ return object;
+ };
+
+ /**
+ * Converts this Exfiltration to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ Exfiltration.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for Exfiltration
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.Exfiltration
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ Exfiltration.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.Exfiltration";
+ };
+
+ return Exfiltration;
+ })();
+
+ v1.ExfilResource = (function() {
+
+ /**
+ * Properties of an ExfilResource.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IExfilResource
+ * @property {string|null} [name] ExfilResource name
+ * @property {Array.|null} [components] ExfilResource components
+ */
+
+ /**
+ * Constructs a new ExfilResource.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents an ExfilResource.
+ * @implements IExfilResource
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IExfilResource=} [properties] Properties to set
+ */
+ function ExfilResource(properties) {
+ this.components = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ExfilResource name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @instance
+ */
+ ExfilResource.prototype.name = "";
+
+ /**
+ * ExfilResource components.
+ * @member {Array.} components
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @instance
+ */
+ ExfilResource.prototype.components = $util.emptyArray;
+
+ /**
+ * Creates a new ExfilResource instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExfilResource=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.ExfilResource} ExfilResource instance
+ */
+ ExfilResource.create = function create(properties) {
+ return new ExfilResource(properties);
+ };
+
+ /**
+ * Encodes the specified ExfilResource message. Does not implicitly {@link google.cloud.securitycenter.v1.ExfilResource.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExfilResource} message ExfilResource message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ExfilResource.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.components != null && message.components.length)
+ for (var i = 0; i < message.components.length; ++i)
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.components[i]);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ExfilResource message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ExfilResource.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExfilResource} message ExfilResource message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ExfilResource.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ExfilResource message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.ExfilResource} ExfilResource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ExfilResource.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.ExfilResource();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ if (!(message.components && message.components.length))
+ message.components = [];
+ message.components.push(reader.string());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ExfilResource message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.ExfilResource} ExfilResource
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ExfilResource.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ExfilResource message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ExfilResource.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.components != null && message.hasOwnProperty("components")) {
+ if (!Array.isArray(message.components))
+ return "components: array expected";
+ for (var i = 0; i < message.components.length; ++i)
+ if (!$util.isString(message.components[i]))
+ return "components: string[] expected";
+ }
+ return null;
+ };
+
+ /**
+ * Creates an ExfilResource message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.ExfilResource} ExfilResource
+ */
+ ExfilResource.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.ExfilResource)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.ExfilResource();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.components) {
+ if (!Array.isArray(object.components))
+ throw TypeError(".google.cloud.securitycenter.v1.ExfilResource.components: array expected");
+ message.components = [];
+ for (var i = 0; i < object.components.length; ++i)
+ message.components[i] = String(object.components[i]);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ExfilResource message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {google.cloud.securitycenter.v1.ExfilResource} message ExfilResource
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ExfilResource.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.components = [];
+ if (options.defaults)
+ object.name = "";
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.components && message.components.length) {
+ object.components = [];
+ for (var j = 0; j < message.components.length; ++j)
+ object.components[j] = message.components[j];
+ }
+ return object;
+ };
+
+ /**
+ * Converts this ExfilResource to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ExfilResource.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ExfilResource
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.ExfilResource
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ExfilResource.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.ExfilResource";
+ };
+
+ return ExfilResource;
+ })();
+
+ v1.ExternalSystem = (function() {
+
+ /**
+ * Properties of an ExternalSystem.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IExternalSystem
+ * @property {string|null} [name] ExternalSystem name
+ * @property {Array.|null} [assignees] ExternalSystem assignees
+ * @property {string|null} [externalUid] ExternalSystem externalUid
+ * @property {string|null} [status] ExternalSystem status
+ * @property {google.protobuf.ITimestamp|null} [externalSystemUpdateTime] ExternalSystem externalSystemUpdateTime
+ */
+
+ /**
+ * Constructs a new ExternalSystem.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents an ExternalSystem.
+ * @implements IExternalSystem
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IExternalSystem=} [properties] Properties to set
+ */
+ function ExternalSystem(properties) {
+ this.assignees = [];
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * ExternalSystem name.
+ * @member {string} name
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @instance
+ */
+ ExternalSystem.prototype.name = "";
+
+ /**
+ * ExternalSystem assignees.
+ * @member {Array.} assignees
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @instance
+ */
+ ExternalSystem.prototype.assignees = $util.emptyArray;
+
+ /**
+ * ExternalSystem externalUid.
+ * @member {string} externalUid
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @instance
+ */
+ ExternalSystem.prototype.externalUid = "";
+
+ /**
+ * ExternalSystem status.
+ * @member {string} status
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @instance
+ */
+ ExternalSystem.prototype.status = "";
+
+ /**
+ * ExternalSystem externalSystemUpdateTime.
+ * @member {google.protobuf.ITimestamp|null|undefined} externalSystemUpdateTime
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @instance
+ */
+ ExternalSystem.prototype.externalSystemUpdateTime = null;
+
+ /**
+ * Creates a new ExternalSystem instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExternalSystem=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.ExternalSystem} ExternalSystem instance
+ */
+ ExternalSystem.create = function create(properties) {
+ return new ExternalSystem(properties);
+ };
+
+ /**
+ * Encodes the specified ExternalSystem message. Does not implicitly {@link google.cloud.securitycenter.v1.ExternalSystem.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExternalSystem} message ExternalSystem message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ExternalSystem.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.name != null && Object.hasOwnProperty.call(message, "name"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
+ if (message.assignees != null && message.assignees.length)
+ for (var i = 0; i < message.assignees.length; ++i)
+ writer.uint32(/* id 2, wireType 2 =*/18).string(message.assignees[i]);
+ if (message.externalUid != null && Object.hasOwnProperty.call(message, "externalUid"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.externalUid);
+ if (message.status != null && Object.hasOwnProperty.call(message, "status"))
+ writer.uint32(/* id 4, wireType 2 =*/34).string(message.status);
+ if (message.externalSystemUpdateTime != null && Object.hasOwnProperty.call(message, "externalSystemUpdateTime"))
+ $root.google.protobuf.Timestamp.encode(message.externalSystemUpdateTime, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
+ return writer;
+ };
+
+ /**
+ * Encodes the specified ExternalSystem message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.ExternalSystem.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {google.cloud.securitycenter.v1.IExternalSystem} message ExternalSystem message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ ExternalSystem.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes an ExternalSystem message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.ExternalSystem} ExternalSystem
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ExternalSystem.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.ExternalSystem();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.name = reader.string();
+ break;
+ }
+ case 2: {
+ if (!(message.assignees && message.assignees.length))
+ message.assignees = [];
+ message.assignees.push(reader.string());
+ break;
+ }
+ case 3: {
+ message.externalUid = reader.string();
+ break;
+ }
+ case 4: {
+ message.status = reader.string();
+ break;
+ }
+ case 5: {
+ message.externalSystemUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes an ExternalSystem message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.ExternalSystem} ExternalSystem
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ ExternalSystem.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies an ExternalSystem message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ ExternalSystem.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.name != null && message.hasOwnProperty("name"))
+ if (!$util.isString(message.name))
+ return "name: string expected";
+ if (message.assignees != null && message.hasOwnProperty("assignees")) {
+ if (!Array.isArray(message.assignees))
+ return "assignees: array expected";
+ for (var i = 0; i < message.assignees.length; ++i)
+ if (!$util.isString(message.assignees[i]))
+ return "assignees: string[] expected";
+ }
+ if (message.externalUid != null && message.hasOwnProperty("externalUid"))
+ if (!$util.isString(message.externalUid))
+ return "externalUid: string expected";
+ if (message.status != null && message.hasOwnProperty("status"))
+ if (!$util.isString(message.status))
+ return "status: string expected";
+ if (message.externalSystemUpdateTime != null && message.hasOwnProperty("externalSystemUpdateTime")) {
+ var error = $root.google.protobuf.Timestamp.verify(message.externalSystemUpdateTime);
+ if (error)
+ return "externalSystemUpdateTime." + error;
+ }
+ return null;
+ };
+
+ /**
+ * Creates an ExternalSystem message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {Object.} object Plain object
+ * @returns {google.cloud.securitycenter.v1.ExternalSystem} ExternalSystem
+ */
+ ExternalSystem.fromObject = function fromObject(object) {
+ if (object instanceof $root.google.cloud.securitycenter.v1.ExternalSystem)
+ return object;
+ var message = new $root.google.cloud.securitycenter.v1.ExternalSystem();
+ if (object.name != null)
+ message.name = String(object.name);
+ if (object.assignees) {
+ if (!Array.isArray(object.assignees))
+ throw TypeError(".google.cloud.securitycenter.v1.ExternalSystem.assignees: array expected");
+ message.assignees = [];
+ for (var i = 0; i < object.assignees.length; ++i)
+ message.assignees[i] = String(object.assignees[i]);
+ }
+ if (object.externalUid != null)
+ message.externalUid = String(object.externalUid);
+ if (object.status != null)
+ message.status = String(object.status);
+ if (object.externalSystemUpdateTime != null) {
+ if (typeof object.externalSystemUpdateTime !== "object")
+ throw TypeError(".google.cloud.securitycenter.v1.ExternalSystem.externalSystemUpdateTime: object expected");
+ message.externalSystemUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.externalSystemUpdateTime);
+ }
+ return message;
+ };
+
+ /**
+ * Creates a plain object from an ExternalSystem message. Also converts values to other types if specified.
+ * @function toObject
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {google.cloud.securitycenter.v1.ExternalSystem} message ExternalSystem
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
+ * @returns {Object.} Plain object
+ */
+ ExternalSystem.toObject = function toObject(message, options) {
+ if (!options)
+ options = {};
+ var object = {};
+ if (options.arrays || options.defaults)
+ object.assignees = [];
+ if (options.defaults) {
+ object.name = "";
+ object.externalUid = "";
+ object.status = "";
+ object.externalSystemUpdateTime = null;
+ }
+ if (message.name != null && message.hasOwnProperty("name"))
+ object.name = message.name;
+ if (message.assignees && message.assignees.length) {
+ object.assignees = [];
+ for (var j = 0; j < message.assignees.length; ++j)
+ object.assignees[j] = message.assignees[j];
+ }
+ if (message.externalUid != null && message.hasOwnProperty("externalUid"))
+ object.externalUid = message.externalUid;
+ if (message.status != null && message.hasOwnProperty("status"))
+ object.status = message.status;
+ if (message.externalSystemUpdateTime != null && message.hasOwnProperty("externalSystemUpdateTime"))
+ object.externalSystemUpdateTime = $root.google.protobuf.Timestamp.toObject(message.externalSystemUpdateTime, options);
+ return object;
+ };
+
+ /**
+ * Converts this ExternalSystem to JSON.
+ * @function toJSON
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @instance
+ * @returns {Object.} JSON object
+ */
+ ExternalSystem.prototype.toJSON = function toJSON() {
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
+ };
+
+ /**
+ * Gets the default type url for ExternalSystem
+ * @function getTypeUrl
+ * @memberof google.cloud.securitycenter.v1.ExternalSystem
+ * @static
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
+ * @returns {string} The default type url
+ */
+ ExternalSystem.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
+ if (typeUrlPrefix === undefined) {
+ typeUrlPrefix = "type.googleapis.com";
+ }
+ return typeUrlPrefix + "/google.cloud.securitycenter.v1.ExternalSystem";
+ };
+
+ return ExternalSystem;
+ })();
+
+ v1.File = (function() {
+
+ /**
+ * Properties of a File.
+ * @memberof google.cloud.securitycenter.v1
+ * @interface IFile
+ * @property {string|null} [path] File path
+ * @property {number|Long|null} [size] File size
+ * @property {string|null} [sha256] File sha256
+ * @property {number|Long|null} [hashedSize] File hashedSize
+ * @property {boolean|null} [partiallyHashed] File partiallyHashed
+ * @property {string|null} [contents] File contents
+ */
+
+ /**
+ * Constructs a new File.
+ * @memberof google.cloud.securitycenter.v1
+ * @classdesc Represents a File.
+ * @implements IFile
+ * @constructor
+ * @param {google.cloud.securitycenter.v1.IFile=} [properties] Properties to set
+ */
+ function File(properties) {
+ if (properties)
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
+ if (properties[keys[i]] != null)
+ this[keys[i]] = properties[keys[i]];
+ }
+
+ /**
+ * File path.
+ * @member {string} path
+ * @memberof google.cloud.securitycenter.v1.File
+ * @instance
+ */
+ File.prototype.path = "";
+
+ /**
+ * File size.
+ * @member {number|Long} size
+ * @memberof google.cloud.securitycenter.v1.File
+ * @instance
+ */
+ File.prototype.size = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
+
+ /**
+ * File sha256.
+ * @member {string} sha256
+ * @memberof google.cloud.securitycenter.v1.File
+ * @instance
+ */
+ File.prototype.sha256 = "";
+
+ /**
+ * File hashedSize.
+ * @member {number|Long} hashedSize
+ * @memberof google.cloud.securitycenter.v1.File
+ * @instance
+ */
+ File.prototype.hashedSize = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
+
+ /**
+ * File partiallyHashed.
+ * @member {boolean} partiallyHashed
+ * @memberof google.cloud.securitycenter.v1.File
+ * @instance
+ */
+ File.prototype.partiallyHashed = false;
+
+ /**
+ * File contents.
+ * @member {string} contents
+ * @memberof google.cloud.securitycenter.v1.File
+ * @instance
+ */
+ File.prototype.contents = "";
+
+ /**
+ * Creates a new File instance using the specified properties.
+ * @function create
+ * @memberof google.cloud.securitycenter.v1.File
+ * @static
+ * @param {google.cloud.securitycenter.v1.IFile=} [properties] Properties to set
+ * @returns {google.cloud.securitycenter.v1.File} File instance
+ */
+ File.create = function create(properties) {
+ return new File(properties);
+ };
+
+ /**
+ * Encodes the specified File message. Does not implicitly {@link google.cloud.securitycenter.v1.File.verify|verify} messages.
+ * @function encode
+ * @memberof google.cloud.securitycenter.v1.File
+ * @static
+ * @param {google.cloud.securitycenter.v1.IFile} message File message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ File.encode = function encode(message, writer) {
+ if (!writer)
+ writer = $Writer.create();
+ if (message.path != null && Object.hasOwnProperty.call(message, "path"))
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.path);
+ if (message.size != null && Object.hasOwnProperty.call(message, "size"))
+ writer.uint32(/* id 2, wireType 0 =*/16).int64(message.size);
+ if (message.sha256 != null && Object.hasOwnProperty.call(message, "sha256"))
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.sha256);
+ if (message.hashedSize != null && Object.hasOwnProperty.call(message, "hashedSize"))
+ writer.uint32(/* id 4, wireType 0 =*/32).int64(message.hashedSize);
+ if (message.partiallyHashed != null && Object.hasOwnProperty.call(message, "partiallyHashed"))
+ writer.uint32(/* id 5, wireType 0 =*/40).bool(message.partiallyHashed);
+ if (message.contents != null && Object.hasOwnProperty.call(message, "contents"))
+ writer.uint32(/* id 6, wireType 2 =*/50).string(message.contents);
+ return writer;
+ };
+
+ /**
+ * Encodes the specified File message, length delimited. Does not implicitly {@link google.cloud.securitycenter.v1.File.verify|verify} messages.
+ * @function encodeDelimited
+ * @memberof google.cloud.securitycenter.v1.File
+ * @static
+ * @param {google.cloud.securitycenter.v1.IFile} message File message or plain object to encode
+ * @param {$protobuf.Writer} [writer] Writer to encode to
+ * @returns {$protobuf.Writer} Writer
+ */
+ File.encodeDelimited = function encodeDelimited(message, writer) {
+ return this.encode(message, writer).ldelim();
+ };
+
+ /**
+ * Decodes a File message from the specified reader or buffer.
+ * @function decode
+ * @memberof google.cloud.securitycenter.v1.File
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @param {number} [length] Message length if known beforehand
+ * @returns {google.cloud.securitycenter.v1.File} File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ File.decode = function decode(reader, length) {
+ if (!(reader instanceof $Reader))
+ reader = $Reader.create(reader);
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.securitycenter.v1.File();
+ while (reader.pos < end) {
+ var tag = reader.uint32();
+ switch (tag >>> 3) {
+ case 1: {
+ message.path = reader.string();
+ break;
+ }
+ case 2: {
+ message.size = reader.int64();
+ break;
+ }
+ case 3: {
+ message.sha256 = reader.string();
+ break;
+ }
+ case 4: {
+ message.hashedSize = reader.int64();
+ break;
+ }
+ case 5: {
+ message.partiallyHashed = reader.bool();
+ break;
+ }
+ case 6: {
+ message.contents = reader.string();
+ break;
+ }
+ default:
+ reader.skipType(tag & 7);
+ break;
+ }
+ }
+ return message;
+ };
+
+ /**
+ * Decodes a File message from the specified reader or buffer, length delimited.
+ * @function decodeDelimited
+ * @memberof google.cloud.securitycenter.v1.File
+ * @static
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
+ * @returns {google.cloud.securitycenter.v1.File} File
+ * @throws {Error} If the payload is not a reader or valid buffer
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
+ */
+ File.decodeDelimited = function decodeDelimited(reader) {
+ if (!(reader instanceof $Reader))
+ reader = new $Reader(reader);
+ return this.decode(reader, reader.uint32());
+ };
+
+ /**
+ * Verifies a File message.
+ * @function verify
+ * @memberof google.cloud.securitycenter.v1.File
+ * @static
+ * @param {Object.} message Plain object to verify
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
+ */
+ File.verify = function verify(message) {
+ if (typeof message !== "object" || message === null)
+ return "object expected";
+ if (message.path != null && message.hasOwnProperty("path"))
+ if (!$util.isString(message.path))
+ return "path: string expected";
+ if (message.size != null && message.hasOwnProperty("size"))
+ if (!$util.isInteger(message.size) && !(message.size && $util.isInteger(message.size.low) && $util.isInteger(message.size.high)))
+ return "size: integer|Long expected";
+ if (message.sha256 != null && message.hasOwnProperty("sha256"))
+ if (!$util.isString(message.sha256))
+ return "sha256: string expected";
+ if (message.hashedSize != null && message.hasOwnProperty("hashedSize"))
+ if (!$util.isInteger(message.hashedSize) && !(message.hashedSize && $util.isInteger(message.hashedSize.low) && $util.isInteger(message.hashedSize.high)))
+ return "hashedSize: integer|Long expected";
+ if (message.partiallyHashed != null && message.hasOwnProperty("partiallyHashed"))
+ if (typeof message.partiallyHashed !== "boolean")
+ return "partiallyHashed: boolean expected";
+ if (message.contents != null && message.hasOwnProperty("contents"))
+ if (!$util.isString(message.contents))
+ return "contents: string expected";
+ return null;
+ };
+
+ /**
+ * Creates a File message from a plain object. Also converts values to their respective internal types.
+ * @function fromObject
+ * @memberof google.cloud.securitycenter.v1.File
+ * @static
+ * @param {Object.